SQL注入(完善中...)
SQL注入
其实sql注入从来不只是具有单一性的,从操作来看,很多时候都是结合起来使用。所以上面这张图只是对sql注入进行一个总结,我选择把联合注入放在前面,间接性的结合其它比如说数据类型注入等来作为开头
一.联合注入(有回显)在进行注入之前,判断注入数据类型
数字型:
12id=1 and 1=1id=1 and 1=2
在sql内部语句就会转换成:
12select * from table_name where id=1 and 1=1select * from table_name where id=1 and 1=2
可见,第一个永远为真,回显肯定正常;第二个肯定不对,回显就会错误,根据这个来判断是否存在数字型注入
字符型:
通常的使用单引号去检测
1id=1'
sql语句会是这样的:
1select * from users where username='1''
这个时候最后的单引号会落单,多半会有回显提示你的语句存在语法错误,我们只需要
1id=1'#
加一个注释符号,把后面的单引号注释掉,这个时候如果页面有正常回显,那 ...
Python-Flask(完善中...)
Python-Flask初识Flask思考:Flask是Python中的Web应用程序框架,以我的初步理解来看就是能生成web页面,这不得不让我联想到了PHP,同样都是可以生成Web,想必他们一定有很多差异值得探讨。
首先引起我注意的是框架这个字眼,我们暂且用打包这个说法来定义吧,这个框架相当于一个预先编写好的结构,对于Web应用程序它提供了相应的基本功能和组件,这里就有我们所熟知的处理HTTP请求、路由URL、渲染模板、管理用户会话等基本功能。
所以,不难发现,这个flask框架跳过了那些繁琐的构建网页前所需的一些设置,协议,让用户通过这个框架,模板去套,更专注于开发、测试和维护网页。
Flask的内核:Werkzeug&Jinja2Werkzeug:Werkzeug是一个WSGI(Web Server Gateway Interface)工具库,它提供了实现HTTP请求、响应处理、URL路由等功能的核心组件,为Flask提供了底层的HTTP请求处理能力。
Jinja2:Jinja2是一个现代化的模板引擎,它允许开发者使用类似Python的语法来创建动态内容的模板。Flask ...
命令执行&代码执行(完善中...)
命令执行&代码执行命令执行(RCE)漏洞和代码执行漏洞区别如下:
命令执行则是调用操作系统命令进行执行
代码执行实际上是调用服务器网站代码进行执行
命令执行漏洞(RCE)当开发人员调用了执行系统命令的函数,而其中的函数参数用户可以控制,届时就有了利用机会
1.代码层过滤不严格调用的第三方组件存在代码执行漏洞常见的命令执行函数
PHP:exec、shell_exec、system、passthru、popen、proc_open等
Java:Runtime.exec(String command)、ProcessBuilder(String… command)、ProcessBuilder.Redirect、ProcessBuilder.start()等
这里有几个常用的系统命令执行函数(PHP)
exec():
执行外部程序,但只返回最后一行的输出结果
123456函数原型bool exec(string $command,array $output,int $return_var)(必需)$command: 要执行的命令$output: 一个引用数组,用于存储命令的输 ...