企业内部的网站系统,什么是网络设计图,岳阳找工作网站,网站开发税费文章目录 PHP-MYSQL-数据请求类型1、数字型(无符号干扰)2、字符型#xff08;有符号干扰#xff09;3、搜索型#xff08;有多符号干扰#xff09;4、框架型#xff08;有各种符号干扰#xff09; PHP-MYSQL-数据请求方法数据请求方法GET#xff1a;POST#xff1a;Coo… 文章目录 PHP-MYSQL-数据请求类型1、数字型(无符号干扰)2、字符型有符号干扰3、搜索型有多符号干扰4、框架型有各种符号干扰 PHP-MYSQL-数据请求方法数据请求方法GETPOSTCookieSERVER功能点举例 PHP-MYSQL-数据请求格式1、数据采用统一格式传输后端进行格式解析带入数据库json2、数据采用加密编码传输后端进行解密解码带入数据库base64 PHP-MYSQL-数据请求类型
SQL语句由于在黑盒中是无法预知写法的SQL注入能发成功是需要拼接原SQL语句大部分黑盒能做的就是分析后各种尝试去判断所以有可能有注入但可能出现无法注入成功的情况。究其原因大部分都是原SQL语句的未知性导致的拼接失败
由于开发者对于数据类型和SQL语句写法框架写法导致SQL注入拼接失败
1、数字型(无符号干扰)
select * from news where id$id; 若用户输入字符sql语句则会报错 2、字符型有符号干扰
select * from news where id‘$id’; 若条件为int也可设为字符型带上单引号这样即使用户输入为字符也不会报错只是查不出来。 3、搜索型有多符号干扰
select * from news where id like ‘%$id%’
4、框架型有各种符号干扰
select * from news where id(‘$id’);
select * from news where (id‘$id’);
PHP-MYSQL-数据请求方法 在很多漏洞中都有应用到。 请求方法不同就会有不同的注入点 如果代码审计时发现一个注入点则需要找到它的请求方法如Get、Post进行相应的测试 通过不同的请求方法也有可能绕过一些WAF 数据请求方法
GET POST SERVER FILES HTTP头等
GET
URL后的参数
POST
一般看不到的传参用户登录、文件上传等功能会用到需要用burpsuite抓包调试较方便。
Cookie
比较少
SERVER
可以获取User-Agent、Cookie、Rerferer、Host、X-FORWARDED-FOR用于XFF注入等
User-Agent
使得服务器能够识别客户使用的操作系统浏览器版本等.很多数据量大的网站中会记录客户使用的操作系统或浏览器版本等存入数据库中
Cookie
网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据
X-Forwarded-For
简称XFF头它代表客户端也就是HTTP的请求端真实的IP,通常一些网站的防注入功能会记录请求端真实IP地址并写入数据库or某文件[通过修改XXF头可以实现伪造IP]. 网站有接收验证IP的功能并且使用PHP的HTTP_X_FORWARDED_FOR就会有安全隐患它可以通过修改数据包进行伪造。 该注入是由于数据库存储IP导致的如果IP配置到代码中就不会产生过注入了。 但是配置到代码中也会有绕过隐患。 Rerferer
浏览器向 WEB 服务器表明自己是从哪个页面链接过来的访问来源
Host
客户端指定自己想访问的WEB服务器的域名/IP 地址和端口号 有些网站会记录访问者的IP信息作为日志等功能有该功能就有可能有该漏洞 功能点举例
1、用户登录时
一般多为POST请求
2、登录判断IP时
PHP特性中的**$_SERVER[‘HTTP_X_FORWARDED_FOR’];**接受IP的绕过绕过
实现代码配置固定IP去判断-策略绕过
实现数据库白名单IP去判断-select注入
实现防注入记录IP去保存数据库-insert注入
3、文件上传将文件名写入数据库-insert注入
文件上传时会将文件名写入数据库此时将文件名作为注入的语句。
PHP-MYSQL-数据请求格式
1、数据采用统一格式传输后端进行格式解析带入数据库json
2、数据采用加密编码传输后端进行解密解码带入数据库base64 需要在注入时将注入语句编码再进行注入。 工具也不知道它有编码/加密需要手工测出来后告诉工具如何加密的再由工具测