02 2023 档案

摘要:1 什么是CSRF CSRF(Cross-Site Request Forgery,跨站请求伪造),是指利用受害者尚未失效的身份认证信息(cookie、会话等),诱骗受害人在不知情的的情况下点击恶意链接或者访问包含攻击代码的页面,受害人的浏览器向服务器发起恶意请求,由于浏览器曾经认证过,所以被访问的 阅读全文
posted @ 2023-02-27 18:14 kinghtxg 阅读(182) 评论(0) 推荐(0)
摘要:1 靶场详情 靶场名字:vulnhub - SickOs1.1 下载链接:https://download.vulnhub.com/sickos/sick0s1.1.7z 2 目标扫描 2.1 目标发现 ┌──(kali㉿kali)-[~] └─$ sudo nmap -sn 192.168.0.0 阅读全文
posted @ 2023-02-26 23:15 kinghtxg 阅读(125) 评论(0) 推荐(0)
摘要:1 靶场详情 靶场名字:vulnhub - Jarbas 下载链接:https://www.vulnhub.com/entry/jarbas-1,232/ 2 目标扫描 2.1 发现目标 ┌──(kali㉿kali)-[~] └─$ sudo nmap -sn 192.168.0.0/24 [sud 阅读全文
posted @ 2023-02-26 23:15 kinghtxg 阅读(141) 评论(0) 推荐(0)
摘要:前文已经将SQL注入的常见形态了解完毕,但我们远程测试网站是否有SQL注入,常常需要通过大量推理来进行测试,猜出网站与数据库是如何交互的 1 可能存在SQL注入的功能点 SQL注入可以出现在任何系统或接收用户输入的前端应用中,换句话说, 只要能与数据库进行交互的地方就有可能存在SQL注入 2 闭合 阅读全文
posted @ 2023-02-26 23:13 kinghtxg 阅读(797) 评论(0) 推荐(0)
摘要:mysql由于需要进行备份操作,其命令语句本身具备文件读取的能力,只要权限足够,我们可以读取很多有意思的文件 1 SQL注入读文件 读文件使用load_file()函数进行,可以读取数据库有权限读取到的文件 案例:DVWA注入案例 -1' union select 1,load_file('/etc 阅读全文
posted @ 2023-02-26 23:13 kinghtxg 阅读(225) 评论(0) 推荐(0)
摘要:1 攻击原理 SQL语句允许堆叠执行多条语句,多条语句使用分号隔开,堆叠注入攻击就是利用该特性 MariaDB [(none)]> select version();show databases; + + | version() | + + | 5.5.68-MariaDB | + + 1 row 阅读全文
posted @ 2023-02-26 23:12 kinghtxg 阅读(179) 评论(0) 推荐(0)
摘要:二次编码注入和宽字节注入有着异曲同工之妙,都是在面对PHP代码或者配置,对输入的‘(单引号)进行转义的时候,在处理用户输入的数据时存在问题,绕开了转义 1 二次编码注入原理 1.1 为什么要进行编码 编码肯定是因为原始的格式并不适合传输才进行的,例如+,=,&,;等符号在http请求过程中会与原有格 阅读全文
posted @ 2023-02-26 23:11 kinghtxg 阅读(98) 评论(0) 推荐(0)
摘要:在一些特定的场景,常规语句不能直接进行注入,但是因为程序代码开发存在一些瑕疵,我们可以使用PHP的一些特性进行注入,比如这次的宽字节注入 1 宽字节注入原理 1.1 什么是宽字节? 如果一个字符其大小为1个字节的称为窄字节,如果为两个字符的就被称为宽字节 一个字节有八个bit,有255种组成方式,英 阅读全文
posted @ 2023-02-26 23:11 kinghtxg 阅读(100) 评论(0) 推荐(0)
摘要:二次注入与前文注入方式有所区别,采用的是提前注入恶意语句,后续在调用该数据,组合完成攻击的方式 1 二次注入简介 第一步:插入恶意数据 第一次进行数据库插入数据的时候,仅仅对其中的特殊字符进行了转义,在写入数据库的时候还是保留了原来的数据,但是数据本身就包含恶意内容 第二步:引用恶意数据 在将数据存 阅读全文
posted @ 2023-02-26 23:10 kinghtxg 阅读(91) 评论(0) 推荐(0)
摘要:<?php error_reporting(E_ALL&~E_WARNING); include("../sql-connections/sql-connect.php"); $id = $_GET['id']; $sql = "SELECT * FROM users WHERE id = '$id 阅读全文
posted @ 2023-02-26 23:10 kinghtxg 阅读(174) 评论(0) 推荐(0)
摘要:1 不同请求方式的注入 1.1 GET请求方式的SQL注入 前面的所有案例均为GET请求方式进行的SQL注入,GET请求方式,是将数据直接拼接在URL中进行 burpsuite对页面进行抓包 可以发现,http使用的是get请求,同时在URL中也可以看得到参数的传递 通过sqlmap进行注入 sql 阅读全文
posted @ 2023-02-26 23:10 kinghtxg 阅读(347) 评论(0) 推荐(0)
摘要:1 时间盲注 时间盲注是一种比布尔盲注更极端的情况,它适用于无论输入与否前端已经不反馈任何东西了 <?php //including the Mysql connect parameters. include("../sql-connections/sql-connect.php"); error_ 阅读全文
posted @ 2023-02-26 23:09 kinghtxg 阅读(263) 评论(0) 推荐(0)
摘要:当显注和报错注入的sql语句的执行结果被程序限制不回显到前端,我们就得考虑对数据进行猜解判断,通过web系统的反应,来获取数据,这个判断或尝试过程就叫盲注 盲注分为两类:布尔盲注和时间盲注 1 布尔盲注 布尔盲注需要web系统对于数值输入有一定的反应 例如:选择SQL Injection(Bind) 阅读全文
posted @ 2023-02-26 23:09 kinghtxg 阅读(194) 评论(0) 推荐(0)
摘要:随着程序开发者的安全意识逐渐提升,不会允许我们直接获取数据,但反观他有报错信息泄露的问题存在,我们就可以尝试让报错信息夹带我们需要的信息完成数据的回显 1 报错注入原理 例如: if($row) { echo 'You Login name:'.$row['username']; }else{ pr 阅读全文
posted @ 2023-02-26 23:08 kinghtxg 阅读(116) 评论(0) 推荐(0)
摘要:1 显注 显注通常采取union联合SQL语句的方式进行,又称为union联合注入 1.1 union操作符介绍 在注入中有一个函数叫做union,作用是联合查询,常被用于数据库注入 select username,password from users where id=1 union selec 阅读全文
posted @ 2023-02-26 23:08 kinghtxg 阅读(1020) 评论(0) 推荐(0)
摘要:注意:此章节前,请务必完成Mysql数据库学习 1 SQL注入简介 SQL全称是“结构化查询语言”,最早是IBM为关系数据库系统SYSTEMR开发的一种查询语言,SQL语言结构简洁,功能强大,简单易学,所以IBM于1981年推出后得到了广泛的应用 在1998年12月的《Phack》第54期,名为rf 阅读全文
posted @ 2023-02-26 23:07 kinghtxg 阅读(139) 评论(0) 推荐(0)
摘要:前端三剑客可以理解是html是骨骼框架,css是外观,js是动作,我们已经将骨骼学会,并不能做出一个好看的框架,需要css对它进行美化 1 CSS简介 CSS就是Cascading Style Sheet的缩写,中文译作“层叠样式表”或者是“级联样式表”,是用于控制网页外观处理并允许将网页的表现与内 阅读全文
posted @ 2023-02-26 23:04 kinghtxg 阅读(127) 评论(0) 推荐(0)
摘要:1 表格标签 例如关系型数据库和Excel,对于数据的展示,表格会非常直观,因此html当中也存在表格标签 <table border="1" cellpadding="5"> <thead> <!-- 表头:字段信息 --> <tr> <!-- 数据行 --> <th>username</th> 阅读全文
posted @ 2023-02-26 23:03 kinghtxg 阅读(35) 评论(0) 推荐(0)
摘要:所有的网页都是以HTML、CSS、Javscript作为基础搭建的,他们又被称为前端三剑客,而HTML(超文本标记语言)又是其中的骨架,他需要搭建起网页的基础框架和包含文本、图片、视频、音频、链接等元素的图文内容让浏览器进行解析,通常后缀名为(.html或者.htm) 1 HTML注释 俗话说:注释 阅读全文
posted @ 2023-02-26 23:03 kinghtxg 阅读(12) 评论(0) 推荐(0)
摘要:1 前端简介 在计算机界面中,任何能够与用户打交道的界面都被称为前端,它包含了软件客户端的展示页面,浏览器渲染出来的网页页面,甚至计算机系统的桌面,简单概括就是用户能看到的一切都是属于前端,而软件中在幕后默默运行程序逻辑与中间件与网络与数据库进行交互的部分则被称之为后端 在当前阶段,我们泛指的前端通 阅读全文
posted @ 2023-02-26 23:03 kinghtxg 阅读(21) 评论(0) 推荐(0)
摘要:我们使用博客系统项目对前序进行梳理和补充 1 需求梳理 案例博客系统建立于控制台中,功能需要包含基本的: 登陆博客 注册博客 发布博客 支持分页查看的博客列表 显示博客标题 创建时间 阅读数量 评论数量 赞数量 博客详情 博文详情 评论 发表评论 赞 or 踩 阅读数 + 1 2 数据库设计 2.1 阅读全文
posted @ 2023-02-26 23:01 kinghtxg 阅读(41) 评论(0) 推荐(0)
摘要:前文题到过,mysql是可以使用任何支持sql语句和网络连接的软件进行连接的,恰好python作为编程语言也能胜任mysql客户端的任务,并且发送的指令都是相同的 # 注意 需要开启防火墙3306端口 firewall-cmd --permanent --add-port=3306/tcp # 注意 阅读全文
posted @ 2023-02-26 23:00 kinghtxg 阅读(9) 评论(0) 推荐(0)
摘要:1 视图 1.1 视图的作用 如果需要频繁的操作一张虚拟表, 视图就是通过查询得到一张虚拟表,然后将虚拟表保存下来,方便下次使用 # 在school数据库中 查询 老师对应课程 MariaDB [(none)]> use school; MariaDB [school]> select tid as 阅读全文
posted @ 2023-02-26 22:56 kinghtxg 阅读(13) 评论(0) 推荐(0)
摘要:前期数据库准备 # 创建数据库 MariaDB [(none)]> create database test_demo; # 进入数据库 MariaDB [(none)]> use test_demo; # 数据表准备 create table emp( id int not null unique 阅读全文
posted @ 2023-02-26 22:53 kinghtxg 阅读(21) 评论(0) 推荐(0)
摘要:1 约束条件 # 补充知识点: 插入数据的时候可以指定字段 create table t1( id int, name char(16) ); # 按照t1(name,id)的顺序进行插值 # 如果括号内位空 则按照默认定义表格的顺序 insert into t1(name,id) values(' 阅读全文
posted @ 2023-02-26 22:52 kinghtxg 阅读(12) 评论(0) 推荐(0)
摘要:在学习Python的过程中,已经很多次的和数据存储打交道,那时候的做法是将数据随意的存储到某个文件中,数据格式完全取决于我们自己,但是这样很可能导致每个人存储数据的格式不同位置不同导致无法公用 后来我们学到了软件目录规范,严格限制了存储数据的位置,却没能解决公用的问题,并且此方案只能本地使用,不方便 阅读全文
posted @ 2023-02-26 22:51 kinghtxg 阅读(64) 评论(0) 推荐(0)
摘要:一般服务器都是linux操作系统并且是无图形界面的,所以进行任何操作都是通过命令行。一些命令行工具的使用能够大大简化代码脚本的维护成本,提升复用性,python提供的几种主流的参数解析工具来实现简单的功能Python中三个内建模块用于处理命令行参数: sys getopt optparse argp 阅读全文
posted @ 2023-02-26 22:49 kinghtxg 阅读(19) 评论(0) 推荐(0)
摘要:当开发者向普通用户分享程序时,为了方便用户在未安装Python环境的情况下能够正常运行,需要将开发好的程序进行打包,转换成用户可运行的文件类型 作为渗透测试人员,打点完成后,可能会面临shell无法获得环境支持的情况,就可以通过打包工具进行转换为目标系统可执行文件 本节将介绍在Windows和Lin 阅读全文
posted @ 2023-02-26 22:48 kinghtxg 阅读(28) 评论(0) 推荐(0)
摘要:本章节主要讲诉线程开发,协程将会在后续WEB框架章节进行详细介绍 1 多进程开发 进程是计算机中分配资源的最小单位,一个进程中可以有多个线程,并且,同一个进程中的线程共享资源,而进程与进程之间相互隔离,Python中可以通过多进程利用CPU的多核优势,进行计算密集型操作 注意:由于python创建进 阅读全文
posted @ 2023-02-26 22:47 kinghtxg 阅读(71) 评论(0) 推荐(0)
摘要:并发编程其目的是为了提高程序的执行效率,而实现方式主要有三种进程,线程,协程 1 进程与线程 在工厂中,一个厂房至少有一台流水线,生成物品是在流水线上进行,厂房可以为流水线提供资源,要提高效率,可以修建多个厂房,也可以一个厂房中修建多条流水线 在Python程序中,一个进程最少有一条线程,运行程序是 阅读全文
posted @ 2023-02-26 22:45 kinghtxg 阅读(54) 评论(0) 推荐(0)
摘要:Python开发人员可以使用各种第三方工具来创建网络客户端和服务端,但这些第三方工具的核心其实都是socket模块,这个模块提供了所有必须的接口,我们可以利用它来快速开发对应的TCP/UDP客户端、服务端 1 网络编程入门 网络编程涉及到计算机之间的通信,我们以本地回环地址为案例,整个程序分为服务端 阅读全文
posted @ 2023-02-26 22:45 kinghtxg 阅读(15) 评论(0) 推荐(0)
摘要:1 反射的四个函数 反射,其实可以理解成python提供了四个函数,这四个函数可以使用字符串形式操作成员 class Person(object): def __init__(self,name,wx): self.name = name self.wx = wx def show(self): m 阅读全文
posted @ 2023-02-26 22:44 kinghtxg 阅读(27) 评论(0) 推荐(0)
摘要:在程序开发中,如果遇到一些不可预知的错误,或者懒得判断处理的错误,可以使用异常处理来完成 例如:我们需要下载一个网站的页面 import requests while True: url = input("请输入需要下载的网址:") res = requests.get(url=url) with 阅读全文
posted @ 2023-02-26 22:43 kinghtxg 阅读(16) 评论(0) 推荐(0)
摘要:之前总结过内置函数,在这里总结一下与面向对象相关的内置函数 面向对象相关的内置函数 1.1 classmethod、staticmethod、property 这几个是与属性相关的内置函数 @property代表可读 @函数名.setter代表可写 @函数名.deleter代表可删除 1.2 cal 阅读全文
posted @ 2023-02-26 22:43 kinghtxg 阅读(15) 评论(0) 推荐(0)
摘要:我们在4-28 封装继承与多态介绍过了继承的概念,继承存在意义就是将公共的方法提取到父类中,有利于增加代码重用性,也提到了python是支持多继承的编程语言,而继承的顺序,简单的是遵循先左后右模式,但如果较为复杂就没有办法判断了,所以我们在这里介绍Python解释器是如何判断继承优先级的,这就是接下 阅读全文
posted @ 2023-02-26 22:42 kinghtxg 阅读(49) 评论(0) 推荐(0)
摘要:通过面向对象进行编程时,会遇到很多种情况,也会使用不同的成员来实现,接下来我们来逐一介绍成员特性和应用场景 1 变量 对于类来说,变量其实有两种: 实例变量:属于对象,每个对象中各自封装维护的数据 类变量:属于类,可以被所有对象共享,一般用于给对象提供公共数据 class Person: count 阅读全文
posted @ 2023-02-26 22:42 kinghtxg 阅读(24) 评论(0) 推荐(0)
摘要:面向对象编程在很多语言中都存在,而面向对象编程有三大特性:封装、继承、多态 1 封装 在上一节文章中,我们主要讲解的就是变相对象的封装,所以我们在此进行总结即可 封装主要体现在两个方面: 将同一类方法封装到了一个类中,例如上节示例中:匪徒的相关方法都写在Terrorist类中;警察的相关方法都写在P 阅读全文
posted @ 2023-02-26 22:41 kinghtxg 阅读(27) 评论(0) 推荐(0)
摘要:Python中支持两种编程方式来写代码,分别是:函数式编程、面向对象式编程 函数式 # 定义函数,在函数中实现功能 def func(): res = "一个NB的功能" return res # 执行函数 demo = func() 面向对象 # 定义类 class Foo(object): # 阅读全文
posted @ 2023-02-26 22:41 kinghtxg 阅读(8) 评论(0) 推荐(0)
摘要:1 nolocal关键字 我们之前已经了解过global关键字,它可以将局部作用域的变量变成全局作用域变量 name = 'root' def outer(): name = "abc" def inner(): global name # 修改的是全局变量 name = 123 inner() p 阅读全文
posted @ 2023-02-26 22:40 kinghtxg 阅读(42) 评论(0) 推荐(0)
摘要:现阶段我们的开发主要是在运行在pycharm中,而实际代码上线并不可能如此,为了保证终端程序运行顺畅和代码阅读的便利,我们应该遵循一些结构的规范,让系统更加的专业 注意: 本规范是终端程序代码规范 并不通适用于Web等程序开发 1 单文件应用 当程序只有一个.py文件的时候适用于以下规范 """ 1 阅读全文
posted @ 2023-02-26 22:40 kinghtxg 阅读(18) 评论(0) 推荐(0)
摘要:1 自定义模块 在开发简单的程序时,使用一个py文件就可以搞定,如果程序比较庞大,需要些10w行代码,此时为了,代码结构清晰,将功能按照某种规则拆分到不同的py文件中,使用时再去导入即可。另外,当其他项目也需要此项目的某些模块时,也可以直接把模块拿过去使用,增加重用性 import hashlib 阅读全文
posted @ 2023-02-26 22:40 kinghtxg 阅读(20) 评论(0) 推荐(0)
摘要:我们已经接触到了很多次在文本信息中提取数据的情况,但是总是觉得split()这些方法太麻烦,并且无法应对所有的情况,例如 text = "楼主太牛逼了,在线想要 442662578@qq.com和xxxxx@live.com谢谢楼主,手机号也可15131255789,搞起来呀" 我们要提取文本中的邮 阅读全文
posted @ 2023-02-26 22:39 kinghtxg 阅读(13) 评论(0) 推荐(0)
摘要:在python中,我们可以获得很多功能强大的函数,其中由官方提供,在编译器中直接继承的函数被称为内置函数,在这里介绍其中36个常用的内置函数 1 数学运算相关 1.1 abs abs() 函数返回数字的绝对值 abs(x) 1.2 pow 指数 函数是计算x的y次方,如果z在存在,则再对结果进行取模 阅读全文
posted @ 2023-02-26 22:38 kinghtxg 阅读(13) 评论(0) 推荐(0)
摘要:1 匿名函数 传统函数定义包括了函数名 + 函数体 def send_email(): pass # 1. 执行 send_email() # 2. 当做列表元素 data_list = [send_email, send_email, send_email ] # 3. 当做参数传递 other_ 阅读全文
posted @ 2023-02-26 22:38 kinghtxg 阅读(13) 评论(0) 推荐(0)
摘要:1 函数嵌套 python是以函数为作用域,在作用域中定义的相关数据只能被当前作用域或子作用域使用 NAME = 'kinght' age = 22 def func(): age = 23 print(NAME) # kinght print(age) # 23 func() print(age) 阅读全文
posted @ 2023-02-26 22:36 kinghtxg 阅读(74) 评论(0) 推荐(0)
摘要:1 参数的内存地址 为了详细的剖析传参的实现原理,我们就得知晓在运行过程中内存具体发生了什么样的变化? 在python中为我们提供了一个函数id()来查看值的内存地址(以十进制展示) username = 'kinght' print(id(username)) # 140270948209840 阅读全文
posted @ 2023-02-26 22:36 kinghtxg 阅读(21) 评论(0) 推荐(0)
摘要:1 初识函数 1.1 函数是什么? 我们可以把函数直接看成一大堆功能代码的集合 # 函数的定义方式 def 函数名(): '''函数的注释 函数内代码 :return: 返回值 ''' pass # 函数的调用方式 函数名() 例如: def daydream(): print("kinght超级帅 阅读全文
posted @ 2023-02-26 22:35 kinghtxg 阅读(11) 评论(0) 推荐(0)
摘要:可变不可变类型,就是对之前的数据类型进行补充,就是关于前面学过整型、浮点型、字符串、列表、字典、布尔,对他们进行一个分类 与我们之前提到过堆区和栈区的概念相关 可变类型 指的是:值改变的情况下,id不变,证明改的是原值,也就是说对于栈区而言,所指向的堆区地址是相同的,改变的只是内存地址中存储的值 验 阅读全文
posted @ 2023-02-26 22:35 kinghtxg 阅读(9) 评论(0) 推荐(0)
摘要:文件路径我们已经接触到很久了,无论是相对路径还是绝对路径,并且,我们在使用的时候也发现了一些问题 转义 我们知道windows用的是\,而linux用的是/,这会存在着一些问题隐患 # windows系统文件路径 C:\tools\nmap 这有可能让程序以为换行符,让编译器无法区分 C:\tool 阅读全文
posted @ 2023-02-26 22:34 kinghtxg 阅读(20) 评论(0) 推荐(0)
摘要:解压缩文件是一个非常常用的操作,对于Python是基于其内置的shutil模块,可以实现对压缩文件的操作 压缩文件 import shutil """ # base_name,压缩后的压缩包文件 # format,压缩的格式,例如:"zip", "tar", "gztar", "bztar", or 阅读全文
posted @ 2023-02-26 22:34 kinghtxg 阅读(32) 评论(0) 推荐(0)
摘要:excel 这个就不需要过多介绍了,大家都常用 python内部并没有提高对excel文件操作的函数库,需要我们引入第三方模块 pip3 install openpyxl 此模块中集成了Python操作Excel的相关功能,接下来我们就需要去学习该模块提供的相关功能即可 读Excel 读取sheet 阅读全文
posted @ 2023-02-26 22:34 kinghtxg 阅读(46) 评论(0) 推荐(0)
摘要:XML格式文件 可扩展标记语言,是一种简单的数据存储语言,XML 被设计用来传输和存储数据 存储,可用来存放配置文件,例如:java的配置文件 传输,网络传输时以这种格式存在,例如:早期ajax传输的数据、soap协议等 <data> <country name="Liechtenstein"> < 阅读全文
posted @ 2023-02-26 22:33 kinghtxg 阅读(64) 评论(0) 推荐(0)
摘要:ini文件 ini文件是Initialization File的缩写,平时用于存储软件的的配置文件。例如:MySQL数据库的配置文件。 [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock log-bin=py-mysql- 阅读全文
posted @ 2023-02-26 22:32 kinghtxg 阅读(24) 评论(0) 推荐(0)
摘要:csv文件 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分 阅读全文
posted @ 2023-02-26 22:32 kinghtxg 阅读(58) 评论(0) 推荐(0)
摘要:因为学习案例需要从网络中爬取一段文字信息和一个图片保存到本地,所以需要模拟浏览器进行发包,虽然python自己可以完成,但是太麻烦了,这里使用的是requests模块 1 从网络中下载requests模块 mac配置文件中没有pip 既然要使用requests模块,肯定要事先使用pip进行下载,可很 阅读全文
posted @ 2023-02-26 22:31 kinghtxg 阅读(47) 评论(0) 推荐(0)
摘要:本章将会进入函数的学习,在深入学习之前,我们先来了解一下,什么是函数? 1 函数简介 在我们之前的代码中,我们是在一个.py文件内部,根据代码的执行逻辑,一步一步的将代码进行编写,但是这就会遇到一个问题。 # 格式化输出个人信息 name = "kinght" age = 20 sex = "man 阅读全文
posted @ 2023-02-26 22:29 kinghtxg 阅读(23) 评论(0) 推荐(0)
摘要:1 基础代码规范 为了保证代码的良好阅读性、代码执行效率,程序员前辈们设计了一套较为通用的代码开发规范,这不是强制性的,也不会导致代码报错,但却是成为优秀程序员所必备,目前所介绍的代码规范在前文章节的基础进行补充 1.1 名称命名法 在Python开发过程中会创建各种文件夹/文件/变量等,这些命名在 阅读全文
posted @ 2023-02-26 22:27 kinghtxg 阅读(19) 评论(0) 推荐(0)
摘要:本文是数据类型的最后一章,将会介绍集合、None、字典、浮点型,由于篇幅和安排,将会省略具体内存空间的缓存和暂留机制,放于后文介绍。 1 集合(set) 集合是一个 无序 、可变、不允许数据重复的容器,它的存放元素类型必须满足可哈希的条件。 v = {11,22,(33,44),'aa'} prin 阅读全文
posted @ 2023-02-26 22:25 kinghtxg 阅读(18) 评论(0) 推荐(0)
摘要:本文将会介绍列表类型list和元组类型tuple,它们大同小异,都是有序的容器类型,其区别在于能否修改数据。 1 列表 列表(list),是一个有序且可变的容器,在里面可以存放多个不同类型的元素。 有序:按顺序存放 可变:可以更改列表内部值 1.1 定义方式 # list = [元素1,元素2,.. 阅读全文
posted @ 2023-02-26 22:25 kinghtxg 阅读(18) 评论(0) 推荐(0)
摘要:1 数据类型概述 总所周知,在运行程序之前,计算机会讲程序相关的数据提取到内存之中,而变量由于会随着程序的运算,不断变化内部的值,故应该给每个变量在内存中分配多大的空间就成为了一个迷,空间大了浪费,小了不够用,为了方便人们的使用,就诞生了数据类型。 不同数据类型占用的数据空间: | 序号 | 类型 阅读全文
posted @ 2023-02-26 22:24 kinghtxg 阅读(13) 评论(0) 推荐(0)
摘要:编程的本质是人与计算机的交流,计算机只能存储、识别和处理二进制的数据(底层所有的数据都是以 010101的形式存在,包括图片、文本、视频等),同样处理完成后的反馈结果也将是二进制的,这样人类就无法识别其含义,所以前辈们将部分的二进制数据与人类能够识别的含义做了一个对照表,这个就叫做编码。 1.进制 阅读全文
posted @ 2023-02-26 22:23 kinghtxg 阅读(65) 评论(0) 推荐(0)
摘要:1. 循环语句 在编程语言中最常用的循环语句是while循环和for循环,python中做循环的主要是while,而for循环通常用于遍历和解压。我们先将for循环放在后文中进行讲解。 # while循环基本格式 while 条件: ... ... ... python是一个很看重缩进格式的编程语言 阅读全文
posted @ 2023-02-26 22:23 kinghtxg 阅读(29) 评论(0) 推荐(0)
摘要:1.编码 计算机中所有的数据本质都是以0和1进行存储。 在计算机中有很多种编码。 每种编码都有自己的一套密码本,都维护这自己的一套规则,如: utf-8编码: 废 -> 11100101 10111010 10011111 物 -> 11100111 10001001 10101001 gbk编码: 阅读全文
posted @ 2023-02-26 22:21 kinghtxg 阅读(22) 评论(0) 推荐(0)
摘要:1.计算机基础 1.1 基本概念 计算机的组成 计算机是由多个硬件组合而成。 常见的硬件有:CPU、硬盘、内存、网卡、显示器、机箱、电源... 注意事项:机械将硬件组合,他们之间无法协作。 操作系统 用于协调计算机的各个硬件,让硬件之间进行协同工作,以完成某个目标。 - windows 优点:生态完 阅读全文
posted @ 2023-02-26 22:19 kinghtxg 阅读(22) 评论(0) 推荐(0)
摘要:1 Java帝国的诞生 1.1 反抗C语言帝国 1995年,C语言帝国已经统治了20余年,由于C语言的贴近硬件, 运行极快, 效率极高的特性。程序员们用C开发了很多系统级软件,操作系统, 编译器, 数据库,网络系统....,但与此同时,C语言也为程序员们安上了两个沉重的枷锁: 指针和内存管理 指针无 阅读全文
posted @ 2023-02-26 22:15 kinghtxg 阅读(15) 评论(0) 推荐(0)
摘要:1 靶场详情 靶场名字:vulnhub - W1R3S 下载链接:https://www.vulnhub.com/entry/w1r3s-101,220/ 2 漏洞扫描 2.1 发现目标 由于是本地桥接靶机,所以使用nmap -sn 192.168.0.0/24进行C段扫描,使用-sn选项,Nmap 阅读全文
posted @ 2023-02-26 12:23 kinghtxg 阅读(97) 评论(0) 推荐(0)