• PHP安全特性


    1-is_numeric()类型的转换缺陷 验证函数是否为数字的函数

    1. 缺陷:当不是数字的字符串与数字互相比较,is_numeric()会自动的先把非数字型的数转换成数字,在进行比较。
    2. 利用:在现在数字之后,如果使用该函数,则可以通过把数字改写成字符串便可
    3. 2-Hash的比较缺陷
    4. md5解密之后,得到0e开头的字符串之后,但是MD5的值会直接吧0e当做科学计数法,看成了0e的多少次幂,但是依旧为0 。因此以此绕过MD5验证
    5. 0e开头的MD5值汇总
    6. QNKCDZO 0e830400451993494058024219903391
    7. 240610708 0e462097431906509019562988736854
    8. s878926199a 0e545993274517709034328855841020
    9. s155964671a 0e342768416822451524974117254469
    10. s214587387a 0e848240448830537924465865611904
    11. s214587387a 0e848240448830537924465865611904
    12. s1091221200a 0e940624217856561557816327384675
    13. sha1加密后以0e开头的字符串
    14. sha1(‘aaroZmOk’)
    15. sha1(‘aaK1STfY’)
    16. sha1(‘aaO8zKZF’)
    17. sha1(‘aa3OFF9m’)

    3-parse_str()覆盖缺陷 作用是解析字符串并注册成变量,但是在注册之前不会在意变量是否已经存在,而是直接覆盖掉已经有了的变量

    利用:直接将已经有的变量覆盖成可控的内容
    

    4-switch绕过 结合代码分析,需要执行switch里面的某个分支,如果switch是整数型的case的判断时,switch会自动将参数转化成为int型

    5-extract()变量覆盖

    函数从数组中将变量导入到当前的符号中,该函数使用数组键名作为变量名,使用数组作为变量值。针对数组中的每个元素,将在当前符号表中创建的对应变量,这个函数就会成功返回设置的变量数。
    

    6-strcmp()比较字符串

    1. strcmp是字符串的比较,str1<str2<0 str1>str2>0 str1=str2时 等于0
    2. 但是如果是数组比较的话,会直接返回NULLif判断使用的是==,所以if(strcmp($pattern,$))。NULL的布尔值为0 。注意逻辑表达

    7-sha1数组绕过

    ===数据和类型完全相同,sha1默认的参数输入为字符串,所以当输入的数据为数组时,返回false,sha1(name[]=1)==false=sha2(password[]=2)
    

    8-进制绕过

    已经整数比较相等,转换进制后与原数相比较
    

    9-ereg() strpos()函数绕过

    1. ereg()函数可以绕过姿势-00截断
    2. 数组绕过

    10-X-forword-for

    ip伪造
    

    11-伪协议

    1. file://
    2. php://
    3. zip:// bzip://
    4. data://
    5. http:// https://

    12-变量覆盖漏洞

    1. extract()函数使用不当
    2. parse_str()函数使用不当
    3. import_request_variables()使用不当
    4. $$使用不当
    5. 开启了全局变量注册
  • 相关阅读:
    【仿牛客网笔记】Spring Boot实践,开发社区登录模块-会话管理
    面向对象05:创建对象内存分析
    Asp.Net Core 7 preview 4 重磅新特性--限流中间件
    【敬伟ps教程】视频动画
    立创EDA——PCB的走线(五)
    Java函数式编程:二、高阶函数,闭包,函数组合以及柯里化
    Android 四种启动方式
    虚拟试穿VTNFP论文笔记
    golang设计模式——职责链模式
    【源码课件+教程】Python入门教程_Python400集持续更新
  • 原文地址:https://blog.csdn.net/YJ_12340/article/details/139071181