![《代码审计》学习计划 《代码审计》学习计划]()
0x00 前言
虽然小黑现在还只是个脚本小子,但心里还是有一个黑客梦的。成为黑客的第一步就是要学会代码审计!
上周从书柜里拿出了尘封已久的Seay著的《代码审计》一书,利用一周时间略读了一遍。根据书中内容制定了代码审计的学习计划。
这周的文章就是梳理并简单介绍一下自己的计划,后面会根据这个计划更详细的水文章输出学习笔记。
《代码审计》一书主要针对的是php的web系统进行审计,以下内容也默认针对php web进行说明。
环境复现需要注意下面几个方面,如果有明确的攻击目标则下面的几点要最大化的和目标保持一致,如果只是单纯的挖漏洞则最好全面的覆盖下面的各种环境以明确利用条件。
不同操作系统的特性差异会导致漏洞的利用方式有所变化,这里的差异主要是windows系列和unix系列系统的差异,同系列系统不同版本的差异(如centos和ubuntu)基本不会导致漏洞利用方式的变化。
至于mac目前还没有广泛用于服务器领域,可以先忽略。
php语言的差异主要在版本和配置上。如php某些版本之后不支持部分函数,某些配置项是否开启也是某些漏洞利用的前提条件。
主要指nginx,apache等等容器之间的差异,目前能想到的是不同容器的解析漏洞的利用方式不同。
审计的主体,主要在于不同版本的差异,旧版本挖出的漏洞可能在新版本已经被悄悄修复掉了。
能对代码进行初步的自动化审计,定位可疑变量、可疑函数以方便后续的人工审计。
书中提到的主要是黑盒测试工具,作为脚本小子的我这种工具有一大堆。
外部可控的参数拼接到sql语句中并改变了sql语句原本的逻辑,可导致攻击者利用执行查询敏感数据及其他数据库操作。
程序输出在html页面的内容部分可控导致被篡改成恶意js脚本执行。
php文件包含可直接执行包含文件的代码,通常配合文件上传漏洞getshell。
文件读取(下载)功能的文件路径参数可控导致敏感文件内容泄露。
用户可上传一个web服务器可解析的文件导致任意代码执行getshell。
优点:通过搜索敏感关键字快速挖掘想要的漏洞,可定向、高效高质量。
缺点:没有通读代码,对程序整体框架了解不深入,定位漏洞利用点会花费一点时间,无法挖掘逻辑漏洞。
优点:最后挖到漏洞的同时也直接明确了漏洞的利用点。
认证标识(cookie)可篡改、可预测、未校验……
5、其他
书中只提到上述四种,不过之前打ctf感觉进阶漏洞应该不止这些。
念叨着要学代码审计已经一年多了,终于在2021年之前开始了……
END.
欢迎留言~
欢迎关注~
欢迎点赞~
![《代码审计》学习计划 《代码审计》学习计划]()
我是小黑,喵~
本文始发于微信公众号(小黑的安全笔记):《代码审计》学习计划
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
点赞
https://cn-sec.com/archives/221924.html
复制链接
复制链接
-
左青龙
- 微信扫一扫
-
-
右白虎
- 微信扫一扫
-
评论