• 35648

    文章

  • 23

    评论

  • 20

    友链

  • 最近新加了很多技术文章,大家多来逛逛吧~~~~
  • 喜欢这个网站的朋友可以加一下QQ群,我们一起交流技术。

代码审计小技巧

欢迎来到阿八个人博客网站。本 阿八个人博客 网站提供最新的站长新闻,各种互联网资讯。 喜欢本站的朋友可以收藏本站,或者加QQ:我们大家一起来交流技术! URL链接:https://www.abboke.com/jsh/2019/0815/106238.html 1190000020073071

漏洞挖掘与防范

SQL注入漏洞

1.搜索关键字如select from、update、insert、deletemysql_connectmysql_querymysql_fetch_now等关键字可定向挖掘SQL注入漏洞。

宽字节注入

2.urlencode、urldecode、rawurlencode、rawurldecode区别。使用不当可导致宽字节注入。
除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数。
urlencoderawurlencode的区别:
1)urlencode 将空格则编码为加号(+)
2)rawurlencode 将空格则编码为加号(%20)
payload:

.../1.php?id=1df%' union select 1,database()#
'单引号自动转义在前面加了/'---经过urlencode洗礼后也就是5c%
如果php连接数据库的时候设置了set character_set_client=gbk,就是告诉mysql服务器 客户端 数据来源是GBK格式
这时df%5c%会被decode成一个汉字。

宽字节注入搜索关键字SET NAMES、character_set_client=gbk、mysql_set_charset('gbk')

二次urldecode注入

payload:%2527
%25进行解码后为%         再次解码%27结果为'(单引号)

原理是当某处使用了urldecode()或者rawurldecode()函数,当我们提交参数到WebServer的时候。WebServer会自动解码一次。然后在经过函数的二次解码。生成单引号引发注入。
可以搜索这两个函数的关键词进行定位。

防范措施--函数

gpc和addslashes

如果magic_quotes_gpc=On(php6以上没有此选项)
PHP解析器就会自动为post、get、cookie过来的数据增加转义字符,和函数addslashes功能差不多

mysql_[real_]escape_string函数

(php4.0.3版本以上才存在)
作用是转义特殊字符,包括:

\x00
\n
\r
\
'
"
\x1a

intval(将变量转换为int类型)--主要是利用参数白名单

PDO prepare预编译

相关文章

暂住......别动,不想说点什么吗?
  • 全部评论(0
    还没有评论,快来抢沙发吧!