代码审计基础
发布日期:2021-06-29 02:23:13 浏览次数:2 分类:技术文章

本文共 1022 字,大约阅读时间需要 3 分钟。

1.函数

addslashed()添加反斜杠

stripslashed()去掉反斜杠

get-magic-quotes-gpc()判断是否开启gpc  

expode()分割成数组

is-numeric()判断是否为数字

sizeof()判断长度

trim()去除字符串开头和末尾的空格和其他字符

string 必需  规定要解析的字符串

htmlspecial(charsl)函数把预定义的字符串转换为HTml实体

preg-replace 执行一个正则表达式的搜索和替换

2.命令注入(执行)

函数:systeml()、passthru()、popen()、exec()

数据库操作函数:exec()、system()、popen()、passthru()、proc-open()、shell-exec()

执行命令的管道符:%/>

3.SQL注入

SQL注入漏洞原理是由于开发者在编辑操作系统数据库代码时直接外部可控的参数拼接到SQL语句中,没有单引号的保护

concat()函数是将两个字符串连接起来,形成一个单的字符串

注入点类似id=1这种整型的参数就会完全天视GDC的过滤,传入的参数未做intval转换,构造的sql语句没有单引号的保护

注入点包含键值对的,那么这里只检测了value,对key的过滤没有保护

(1)数字型注入防范

is_numerc()ctype_digit()intreal()

str_length()确定长度

(2)//字符型sql注入过滤

$id = stripslashes($id);

$id = mysql_real_escape_string($id);

3)字符型注入防范

mysql_real_escape_string()

数据库查询语句前加@放报错

str_length()确定长度

4.HTTP响应拆分

HTTPonly设置   domain设置   path设置   cookies持续时间   secare设置   session固定   CSRF

5.加密

彭文存储密码   ,密码弱加密

密码在存储在攻击者能访问到的文件

6.认证和授权

用户认证     函数和文件的未认证调用    密码和硬编码

7.随机函数

rand()   mt_srand()   mt_rand()

8.php危险函数

缓冲区溢出       session_destroy()删除文件漏洞

unset() zend_hash_del_key_or_irdex漏洞

 

 

 

转载地址:https://blog.csdn.net/yy15263393969/article/details/116234837 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:BeautifulSoup( 解析库 )
下一篇:ctf基础

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年04月06日 07时45分14秒