自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

kinght的博客

(菜鸡一枚,如有错误恳请大佬指正)博客地址kinghtxg.gitee.io

  • 博客(37)
  • 问答 (2)
  • 收藏
  • 关注

原创 SQL注入简介

SQL全称是“结构化查询语言”,最早是IBM为关系数据库系统SYSTEMR开发的一种查询语言,SQL语言结构简洁,功能强大,简单易学,所以IBM于1981年推出后得到了广泛的应用在1998年12月的《Phack》第54期,名为rfp的黑客发表了一篇名为“NT Webs Technology Vulnerabilities”的文章,随后一种在OWASP TOP10排行榜霸榜多年名为SQL注入的漏洞来到了世人的眼前原文地址:http://phrack.org/issues/54/8.html。

2023-01-30 17:01:26 755 1

原创 21.python迭代器

迭代器指的是迭代取值的工具,迭代指的是一个重复的过程,每一次重复都是基于上一次的结果而继续,单纯的重复并不是迭代count = 0while count < 5: print(count) count += 1迭代器涉及到把多个值循环取出来的工作,涉及类型包括:列表、字符串、元组、字典、集合、文件# 现在我们暂时忘记for循环,将下列列表取出l = ['egon','liu','alex']list_len = len(l)while list_len > 0:

2020-12-26 11:25:02 197

原创 20.python装饰器

'器’指的是工具/器具'装饰’指的是为其他事物添加额外的东西点缀装饰器指的是定义一个函数(或者类),该函数是用来装饰其他函数的(为其他函数添加额外的功能),准确的说装饰器的作用就是在不修改被装饰对象源代码和调用方式的前提下为被装饰对象添加额外的功能开放封闭原则软件的设计应该遵循开放封闭原则开放:对拓展功能是开放的封闭:对修改源代码是封闭的对拓展功能开放,意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况。对修改封闭,意味着函数/对象一旦设计完成,就可以独立完成其工作,而不要对

2020-12-26 11:24:32 207

原创 19.python函数对象与闭包函数

关于闭包,即函数定义和函数表达式位于另一个函数的函数体内(嵌套函数)。而且,这些内部函数可以访问它们所在的外部函数中声明的所有局部变量、参数。当其中一个这样的内部函数在包含它们的外部函数之外被调用时,就会形成闭包函数对象精髓:把函数当成变量用(因为书写时多次运行所以案例返回的内存地址不相同),也可以像变量一样当做函数参数或者函数返回值使用# 定义函数其实是 func 指向 函数存储的内存地址def func(): print('from func')# 1.可以赋值f = func

2020-12-26 11:24:01 182

原创 18.python名词空间与作用域

名称空间(namespaces)顾名思义即存放名字与对象映射/绑定关系的地方,是对栈区的划分,在不同的空间中可以存放相同的名字,从而解决命名冲突的问题作用域指的是名称所对应的有效范围,内置名称空间和全局名称空间在代码全局都能被使用,被称为全局作用域,而局部名称空间在函数内定义,就只能在当前函数使用,就被称为局部作用域名称空间(namespaces)名称空间分为三种内置名称空间存放的名字:python解释器内置的名字存活周期:python解释器启动则产生,python解释器关闭则销毁&gt

2020-12-26 11:23:30 124

原创 17.python函数的基本使用

其实函数我们在之前就已经接触过了,输入输出的input\print,类型转换的int\bool等等很多很多,他们都是具有一定的功能。简单理解,函数就是一个个的功能模块,他的作用其实很容易理解,我们写的程序会越来越复杂、功能越来越多,但是很多时候需要重复使用一些功能代码,函数其实就是将这些功能代码封装起来做成工具以print函数为例,我们可能会在一个程序中大量使用print,如果每用一次就完整书写一次print内部代码,就会导致代码非常臃肿,组织结构不清晰,可读性差,这个叫做代码冗余,而且如果要对程序的p

2020-12-26 11:22:57 93

原创 16.python的文件处理

应用程序运行过程中产生的数据最先都是存放于内存中的,若想永久保存下来,必须要保存于硬盘中。应用程序若想操作硬件必须通过操作系统,而文件就是操作系统提供给应用程序来操作硬盘的虚拟概念。用户或应用程序对文件的操作,就是向操作系统发起调用,然后由操作系统完成对硬盘的具体操作。控制文件读写内容的模式强调t和b不能单独使用,必须跟r/w/a连用文本模式(默认模式)文本模式顾名思义存放的就是文本文件,使用t进行读取会默认将硬盘中的二进制转成字符(如果最初不是由字符转换成的二进制,会导致编码报错)二进制

2020-11-20 00:13:22 562 1

原创 15.python的字符编码

title: 15.python的字符编码date: 2020-11-02 15:36:01categories:程序语言Pythonpython基础字符串类型、文本文件的内容都是由字符组成的,但凡涉及到字符的存取,都需要考虑字符编码的问题。字符编码这个知识点的典型特征就是理论多、结论少,但对于开发而言只需要记住结论即可,下面让我们来一点点介绍它前要知识三大核心硬件所有软件都是运行硬件之上的,与运行软件相关的三大核心硬件为cpu、内存、硬盘软件运行前,软件的代码及其相关数.

2020-11-08 11:49:05 132

原创 14.python数据类型及内置方法

关于数据类型,我们已经在前文简单提到过,我们已经知道数据类型是用来记录事物状态的,而事物的状态是不断变化的,这意味着我们在开发程序时需要频繁对数据进行操作,为了提升我们的开发效率, python针对这些常用的操作,为每一种数据类型内置了一系列方法。本章的主题就是带大家详细了解下它们,以及每种数据类型的详细定义、类型转换python数据类型分类方式数字类型数字类型顾名思义就是数字相关的类型,主要为int(整数型)、float(浮点数型)int整型用于记录整数相关数据定义# 变量名 = 值

2020-11-08 11:48:21 311

原创 12.python流程控制之if判断

我们仔细回忆一下,所有的事情流程都可以分为三个模式,把事情一件一件的完成,然后遇到了选择,选择做哪件事,然后有些事情需要重复的做几次在计算机中也是一样,程序的控制语句主要分三种:顺序、分支、判断由于顺序结构是自然从上而下,所以就不需要单独的语法执行,所以只介绍分支(判断语句)和循环语句并且无论分支(判断语句)还是循环语句,在执行完成后,依然会回到顺序结构上面if判断语句python使用缩进来判断代码级别,同一级别的代码会自上而下顺序执行语法1伪代码判断条件成立,成立则运行代码1、2if

2020-10-20 13:49:39 139

原创 13.python流程控制之循环

前文讲了流程控制和if判断语句,本章节就是来介绍循环的,循环结构就是重复执行某段代码块,人类某些时候需要重复做某件事情,所以程序中必须有相应的机制来控制计算机具备人的这种循环做事的能力python中有while与for两种循环机制while循环while循环又被称之为条件循环,它是先进行判断,后进行循环基本语法伪代码while 条件: 代码1 代码2 代码3 ...先判断while后面的条件是否成立,成立就执行下面的循环语句,语句执行完成后,再次判断while后面的条件是否成立,

2020-10-20 13:49:06 242

原创 11.python可变不可变类型

可变不可变类型,就是对之前的数据类型进行补充,就是关于前面学过整型、浮点型、字符串、列表、字典、布尔,对他们进行一个分类与我们之前提到过堆区和栈区的概念相关可变类型指的是:值改变的情况下,id不变,证明改的是原值,也就是说对于栈区而言,所指向的堆区地址是相同的,改变的只是内存地址中存储的值验证# 列表类型(可变类型)l = [123,234,456]print(id(l)) # 57045288l = [1234,2345]print(id(l)) # 57024392# 如果整

2020-10-20 13:48:05 94

原创 10.python的基本运算符

其实每种编程语言支持的运算符都差不多,但是简便作为python的座右铭,还是做出了一定的优化的算术运算符python支持的算数运算符与数学上计算的符号使用是一致的运算符描述例子 (A=2 B=5)+加法 - 相加运算符两侧的值A + B 等于 7-减法 - 左操作数减去右操作数A – B 等于 -3*乘法 - 相乘运算符两侧的值A * B等于10/除法 - 左操作数除以右操作数B / A等于2.5//取整除 - 左操作数除以右操作数,只

2020-10-20 13:47:34 468

原创 9.python的用户交互

在程序中,我们经常能够遇到需要用户输入,或者程序输出的情况,这种情况被统称为用户交互接收用户输入username = input("请输入您的账号:")在python3中input功能会等待用户的输入,括号里的内容作用是起到提示作用,用户输入任何内容,都存成字符串类型,然后赋值给等号左边的变量名username = input("请输入你的账号:") # 程序就会在这里暂停,然后等待用户输入print(username)# 输出结果(用户输入kinght) # 请输入你的账号:king

2020-10-20 13:46:46 1122

原创 8.python垃圾回收机制详解

我们变量章节已经简单提到过了垃圾回收机制(GC),但很简要,本章来详细描述它的运行原理和过程的垃圾回收机制(GC)垃圾回收机制(简称GC)是Python解释器自带一种机制,专门用来回收不可用的变量值所占用的内存空间程序运行过程中会申请大量的内存空间,会申请内存空间来存放变量的值,而内存的容量是有限的,而对于一些无用的内存空间如果不及时清理的话会导致内存使用殆尽(内存溢出),导致程序崩溃,这就涉及到变量值所占用内存空间的回收问题,当一个变量值没有用了(简称垃圾)就应该将其占用的内存给回收掉,但管理内存

2020-10-20 13:46:06 224

原创 7.python语法入门之基本数据类型

变量是为了让计算机能够像人一样去记忆事物的某种状态,而变量的值就是用来存储事物状态的,很明显事物的状态分成不同种类的(比如人的年龄,身高,职位,工资等等),所以变量值也应该有不同的类型salary = 3.1 # 用浮点型去记录薪资age = 18 # 用整型去记录年龄name = 'kinght' # 用字符串类型去记录人名数字类型python中原本没有数字类型,这里只是为了更好的分类才列出来的int整型用来记录人的年龄,出生年份,学生人数等整数相关的状态age = 18birthd

2020-10-20 13:42:37 103

原创 6.python语法入门之变量

title: 6.python语法入门之变量date: 2020-08-21 13:51:01categories:1.程序语言3.Python1.Python基础tags:1.Python我们学习python语言是为了控制计算机,为了让计算机能够像人一样去工作,所以在python这门语言中,所有语法存在的意义都是为了让计算机具备人的某一项技能,这句话是我们理解后续所有python语法的根本变量变量就是可以变化的量,量指的是事物的状态,比如人的年龄、性别,游戏角色的等级、金钱等.

2020-10-11 09:53:54 105

原创 5.python程序基本概念

title: 5.python程序基本概念date: 2020-08-19 08:02:47categories:1.程序语言3.Python1.Python基础tags:1.Python其实我们的第一个程序helloworld已经在安装编辑器解释器的过程中完成了,但是为了更好的推进接下来的学习,我们需要对Python的一些概念以及开发环境的操作进行一些阐述Python运行模式Python的运行有两种模式,一种交互式,一种做成脚本文件,交互式模式下可以即时得到代码执行结果,调试.

2020-10-11 09:52:10 201

原创 4.计算机基础之简述存储器、总线、系统启动流程

title: 4.计算机基础之简述存储器、总线、系统启动流程date: 2020-08-14 13:50:47categories:1.程序语言3.Python1.Python基础tags:1.Python2.编程基础3.计算机基础存储器存储器是计算机的记忆单元,其核心功能就是存取数据人们对存储器的希望总是容量大的、快速的、便宜的,但这三点是冲突的,不可能同时满足所以基于目前的工艺水平,存储器就被分层了存储器系统采用如上图的分层结构,顶层的存储器速度较高,容量较小,与底.

2020-10-11 09:51:30 633

原创 3.计算机基础之简述CPU

title: 3.计算机基础之简述CPUdate: 2020-08-13 11:50:47categories:1.程序语言3.Python1.Python基础tags:1.Python2.编程基础3.计算机基础CPU中央处理器(CPU,central processing unit)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元CPU指令集我们以人作为比喻,我们需要往前走的时候,手和脚会不自觉的进行协同前进,但是,我们并不会主观计算到,某个肌肉具体是怎.

2020-10-11 09:50:59 920

原创 2.计算机基础之简述编程语言、计算机组成、平台的基础概念

title: 2.计算机基础之简述编程语言、计算机组成、平台的基础概念date: 2020-08-08 00:56:47categories:1.程序语言3.Python1.Python基础tags:1.Python2.编程基础3.计算机基础我们之前已经完成了对于Python解释器与编辑器的安装,在正式进入Python的学习之前,我们还想需要对一些编程的基础进行一些总结回顾什么是编程语言?编程语言的本质就是人与计算机沟通的语言。编程语言简史计算机又被称为电脑,人类创造出.

2020-10-11 09:50:28 279

原创 1.初识Python

title: 1.Python介绍date: 2020-07-2 01:02:47categories:1.程序语言3.Python1.Python基础tags:1.Python人生苦短,我用Python。作为现在互联网中被各大培训机构炒到最热的编程语言,Python因他的核心宗旨简单明了深入人心,但真有那么神吗?其实未必,不过这里先卖个关子。Python简介Python是一个被创始人荷兰人吉多·范罗苏姆(Guido von Rossum,后面都称呼他为Guido)苛刻到骨子里.

2020-10-11 09:50:06 90

原创 Docker搭建centos+hexo环境(内附镜像链接)

title: 2.Docker搭建hexo环境(内附镜像链接)date: 2020-09-06 16:59:00categories:3.系统运维3.hexo相关1.hexo美化因为我之前的hexo环境搭建在VMware里面,但是太麻烦,占用资源太多,而且Hyper-V还冲突,所以直接就在Docker中搭建了安装过程docker以及安装完成,通过官方仓库获得了centos7的镜像启动镜像进入容器docker run -it --name centos-hexo centos:.

2020-09-07 01:44:02 602

原创 Vmware安装MacOS系统

title: Vmware安装MacOS系统date: 2020-03-17 17:02:19categories:3.系统运维4.杂记tags:Vmware黑苹果MacOS起言不得不承认,苹果很多软件确实很棒很好用,特别是最近盯上了marginnote3,可无奈只有电脑上只有Mac系统支持,看了自己一眼干瘪的钱包,作为一个高负帅,决定自己动手安装黑苹果。环境参数win10+Vmware14注意本次提供Unlocker只对14确定有效安装需要Unlocker链接:ht.

2020-09-03 23:25:16 6065 9

原创 0.Hexo+GetHub搭建博客系统

title: 0.Hexo+GetHub搭建博客系统date: 2020-03-21 19:10:47categories:3.系统运维3.hexo相关1.hexo美化配置环境本文配置环境系统:win10+Node.js+Git博客系统:Hexo+next书写系统:Typora+PicGo+腾讯云Cos系统安装Node.js:https://nodejs.org/en/download/Git:https://git-scm.com/downloads这两款软件属于傻瓜.

2020-09-03 23:24:14 103

原创 1.hexo+next友情链接页面搭建

title: 1.hexo+next友情链接页面搭建date: 2020-08-02 22:36:47categories:3.系统运维3.hexo相关1.hexo美化安装next模板的初始设置,友情链接是直接放在侧边栏里的,少还好,一旦友情链接多了,就会显得侧边栏特别的杂乱,所以就打算专门做个页面来存放友链新增Links页面命令创建$ hexo new page links然后根目录下/source就新增了一个links文件夹,里面还有一个index.md文件在文件中写入.

2020-09-03 23:23:57 1477

原创 11.WAF绕过原理

title: 11.WAF绕过原理date: 2020-08-24 20:09:00categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入现如今,应该是市面上所有的网站都会有着WAF的存在Web应用防护系统(也称为:网站应用级入侵防御系统。英文:Web Application Firewall,简称: WAF)。利用国际上公认的一种说法:Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款.

2020-08-27 11:26:52 808

原创 10.二次注入

title: 10.二次注入date: 2020-08-22 23:55:00categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入二次注入与其他的注入不同,他不能再当前页面通过反馈来获取或者判断页面的信息,而是需要绕一个圈二次注入的原理二次注入主要分为两步第一步:插入恶意数据第一次进行数据库插入数据的时候,仅仅对其中的特殊字符进行了转义,在写入数据库的时候还是保留了原来的数据,但是数据本身就包含恶意内容第二部:引用恶意数据.

2020-08-26 11:06:50 2213

原创 9.二次编码注入

title: 9.二次编码注入date: 2020-08-21 23:55:00categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入二次编码注入和宽字节注入有着异曲同工之妙,都是在面对PHP代码或者配置,对输入的‘(单引号)进行转义的时候,在处理用户输入的数据时存在问题,绕开了转义二次编码注入原理编码为什么要进行编码编码肯定是因为原始的格式并不适合传输才进行的,例如+,=,&,;等符号在http请求过程中会与原有格式.

2020-08-26 11:06:38 709

原创 8.宽字节注入

title: 8.宽字节注入date: 2020-08-18 14:05:00categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入在一些特定的场景,常规语句不能直接进行注入,但是因为程序代码开发存在一些瑕疵,我们可以使用PHP的一些特性进行注入,比如这次的宽字节注入宽字节注入原理什么是宽字节?如果一个字符其大小为1个字节的称为窄字节,如果为两个字符的就被称为宽字节一个字节有八个bit,有255种组成方式,英文由于只有24个字.

2020-08-26 11:05:22 417

原创 7.Dnslog盲注

title: 7.Dnslog盲注(mysql8不可用)date: 2020-08-10 14:05:00categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入什么是DNS?我们在进行网页浏览的时候,通常会输入一段URL,而我们访问服务器用的则是服务器的IP地址。从URL转换到IP地址,这个就是DNS的作用了我们在配置网络的时候,都会配置DNS地址,浏览器或者应用访问URL,首先会去查找本地的hosts文件,如果没有,就会发送请求到D.

2020-08-26 11:04:45 219

原创 6.时间注入

title: 6.时间注入date: 2020-08-07 14:05:00categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入我们在上一章节已经基本了解了盲注的概念和布尔盲注,时间注入与布尔盲注原理类似,也是盲注的一种。什么是时间注入时间注入、时间盲注、延时注入都是它,它使用在一种比布尔盲注还要极端的状态<?phperror_reporting(E_ALL&~E_WARNING);include("../s.

2020-08-26 11:04:14 1982

原创 5.布尔盲注

title: 5.布尔盲注date: 2020-07-30 17:24:00categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入的注入我们已经有了简单的概念,然而,就是在sql注入过程中,某些sql语句的执行结果被程序限制不回显到前端,这时候我们只能用一些别的方法进行判断或者尝试,这个判断或尝试过程就叫盲注。什么是布尔盲注布尔是判断真假,那么布尔盲注就是通过判断真假的方式来判断或尝试的注入攻击<?phperror_re.

2020-08-26 11:01:52 517 1

原创 4.SQL注入语法类型

title: 4.SQL注入语法类型date: 2020-07-17 21:49:00categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入的SQL注入的语法类型分为union联合查询注入和报错注入,在上一章手工注入中,我们大量使用union操作符,我们在这一节会对它进行一个简单的总结,然后对报错注入进行一个详细的讲解union联合查询注入union操作符介绍union操作符用于合并两个或多个select语句的结果集注意,un.

2020-08-26 11:01:12 272

原创 3.Mysql手工注入方法

title: 3.Mysql手工注入方法date: 2020-07-12 07:49:00categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入上文我们讲到了如何找到注入点,以及一些简单工具的使用,但为了深入理解sql注入的原理、在一些场景能够灵活的进行测试,这一次,我们对手工注入进行简单了解Mysql数据库结构Mysql数据库基础结构主要分为连接层、SQL层、存储引擎层连接层定义了数据库库如何与外部程序进行通信,并控制连.

2020-08-26 11:00:53 228

原创 2.SQL注入流程

title: 2.SQL注入流程和注入相关常用函数date: 2020-06-29 13:10:00categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入在对SQL注入原理有了一定基本了解之后,我们需要想办法来找到SQL注入漏洞寻找SQL注入点只有发现了SQL注入点,我们才能通过掌握的方法获取我们想要的数据目标搜集无特定目标没有一个明确的目标,可以使用搜索引擎对互联网中的目标进行一个广泛搜索inurl:.php?id=.

2020-08-26 10:59:12 212

原创 1.SQL注入原理

title: 1.SQL注入基础date: 2020-06-25 21:38:47categories:4.网络安全1.Web安全1.SQL注入tags:1.Web安全2.SQL注入在1998年12月的《Phack》第54期,名为rfp的黑客发表了一篇名为“NT Webs Technology Vulnerabilities”的文章,随后一种在OWASP TOP10排行榜霸榜多年名为SQL注入的漏洞来到了世人的眼前原文地址:http://phrack.org/issues/54.

2020-08-26 10:58:44 193

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除