以下内容纯属自嗨
从代码审计来看,分析可能存在漏洞的位置是否外部可控,比如命令执行函数中的参数是否来自外部http,是否进行了顺利过滤或白名单。
漏洞是一些功能上的流程的漏,逻辑代码表示上完全疏忽。
不能急,要仔细观察每个链接,分析每个流程,分析代码实现逻辑。
攻击者注入精彩的SQL,到达成功执行。
引号或双引号或输入单等
常用测试payload
https://github.com/payloadbox/sql-injection-payload-list
存在数据的链接
Burpsuite
使用intruder功能自带SQL插入爆破字典,可探测插入点
sqlmap
可联动CO2插件
使用手册
https://sqlmap.kvko.live/usage常用命令
python sqlmap.py -u http://xxx.xom --random-agent --cookie=COOKIE --batch -v 3 --delay 2
从http请求探测
-r
测试指定参数 加*
python sqlmap.py -u "http://targeturl/param1/value1*/param2/value2/"
指纹识别
默认识别指纹,如果想更准确识别开启下列参数
-f 或 --fingerprint
并发
--threads
使用技巧
- 没检测到问题时可提升level等级探测尝试一下
WAF
预编译
形式是确定正确的 SQL 语法,用户输入不能改变 SQL 语法
身份验证和授权的区别:一个是身份验证,另一个是被允许做某事。
身份验证机制弱,无法防爆破
代码逻辑存在问题,可以随意
基于密码登录
检查验证码、错误消息、响应差异
有时,这里也有一个不同寻常的可能获得成功
例如,如果请求同样以的响应时间,大多数用户在此时间的请求都可能显示出不同的情况。这猜测只是可能正在正确处理用户;步骤会导致可能会出现不同的密码。不同的可能会通过这个有效输入才能使攻击者有一个额外的时间,但攻击者可以通过长时间的密码来明显地检查是否。明显的时间来处理。
爆破用户名密码
固定密码爆破用户名或固定用户名爆破密码
用户名枚举
靶练习场1
靶练习场2
多身份认证
例如带验证码
当输入和验证码输入不在一个页面
试用自己的账户确认或已知登录后的URL,然后切换其他账户跳转验证码。
测试验证码是否可以绕行
爆破验证码
限制限制
根据目标限制制定爆破方式
失败失败阻止IP,若登录成功重置计数
可结合已知用户登录添加到字典,在规定时间内,多次实施限制。
存在逻辑缺陷的锁IP
在一定次数爆破后报错信息可能出现差异,因此爆破出用户名
靶场
JSON请求,一次填充多个队列
靶场
分析逻辑,考虑不同
Burpsuite
加载文件内容链接没有过滤,或者文件名后台没有进行层层处理处理,攻击者可以展示系统绝对路径或上层目录的方式获取任意文件。
在读取文件内容或加载文件的参数后添加payload
../../ect/passwd
直接添加绝对路径:/etc/passwd
在网页页面图片新链接打开,更改文件名为payload
限制限制
双写有效载荷
URL 编码或 URL 编码
给定文件目录后添加payload
后缀名前%00截断
Burpsuit 目录遍历搜索,或使用自己的,包含经常测试有效负载。
爆破位置:文件名处、后缀前、指定目录文件名后边
白话过滤
后台使用路径规范化函数过滤
(白盒)后台代码调用系统命令的位置可以被外部控制。
白盒代码审计可利用参数的覆盖范围的漏洞类型,外部参数执行函数,分析是否可控,是否过滤。
开发过程中对各种功能或流程不考虑,用户输入不考虑,导致流程交付或输入全面产生。
常见场景
代表修改数量、价格的参数值
数量不小于0最大不超过,抓包也无法修改,爆破数量试一试
首先正常走完流程功能,然后分析可能出现的逻辑缺陷
Burpsuite
修改、爆破
充分考虑用户的各种输入
使用不通过访问URL的访问方式,如参数来访问资源,攻击判罚者可以查看访问资源逻辑,达到越权控制的目的。
结合burpsuite Autorize插件可检测
在测试的时候要仔细,仔细地访问每个链接,测试是否可以越权
其他方式
分析逻辑,找到自然的方式
网络服务器充分验证上传文件的类型、内容或大小的情况下将文件上传到文件系统的这些,不符合上传文件对系统造成的影响。
跨跨 zip 类型的黑盒测试无法或者看到类似的结果,并且可能造成破坏。外部找到点,结合白盒代码审计上传可高效目录测试。
文件类型
文件名称
java跨目录上传,文件名包含../
之前是否同意
文件大小
过大文件可造成资源
文件内容
包含恶意代码
压缩文件上传
文件大小,zip 炸弹
文件内容,跨目录
白盒代码审计
burpsuite抓包修改
find-sec-bugs+IDEA审计代码(java)
图形文件类型、名称、大小
白厅、路径指标
服务端请求,鼓励服务者向非预期的位置发出请求。
重点关注存在URL、加载资源的链接
爆破
探测端口
burpsuite
反射型XSS
输入接口处过滤器,没有解析对用户输入安全,浏览器被过滤。
存储型XSS
恶意脚本插入数据库,用户访问漏洞页面,加载恶意脚本。
DOM型XSS
图片从用户输入获取内容,目标DOM脚本被DOM解析。
手工测试
如在输入点输入一串数字:111111
观察是否原样返回
输入测试payload
有效载荷常用技巧
写、大小写、双协议
XSS备忘单
自动化测试
burpsuite爆破点插件
x射线被动扫描
AWVS和appscan也能扫描
输入过滤,后台过滤
输出内容编码
攻击者伪装成网站用户对网站发起恶意请求。
使用条件
用户已经登录网站
用户使用浏览器访问恶意链接
没有不可预测的参数
使用burpsuite自带poc生成工具进行测试
测试cftk
测试是否可以截断、退出登录后是否有效,在cookie中是无法防御的
攻击条件是利用浏览器访问网站自动携带认证cookie的特性
同源策略可以通过html标签加载资源,同源策略不能拦截跨域请求可以通过阻止返回结果,参考
注意攻击请求和正常请求代码区别,攻击请求是在嵌入内容的黑客网站页面请求代码中的,这部分代码没有获取正常用户请求令牌字段
表单令牌
每次请求发送的时候,发送给用户的每次请求的数字,攻击网站可以构造请求的方法是没有攻击者网站获取服务器代码给用户的。
头标
每次请求服务器返回token,每次请求,请求Ajax请求头获取用户请求中的token值
转自:网络安全者
推荐阅读