堆查询注入php
10.获取当前网站的用户名称
sqlmap -u "http://...?id=1" --current-userhtml
sqlmap在默认的状况下除了使用CHAR()函数防止出现单引号,没有对注入的数据进行修改,读者可使用--tamper参数对数据作修改来绕过waf等设备,其中大部分脚本主要用正则模块替换攻击载荷字符编码的方式尝试绕过waf的检测规则。 命令格式以下:sqlmap xxx --tamper 模块名 目前官方提供53个绕过脚本,灵活的运用这些模块是绕过企业waf的关键。 还需学习绕过脚本的编写与修改。
--identify-waf #对一些网站是否有安全防御(waf/ids/ips)进行试探。java
randomcomments.py #用/**/分割sql关键字
掌握tamper的编写规则,这样能在各类实战中更加运用自如mysql
专业版和免费版主要区别有如下三点:web
burp scanner 工做空间的保存和恢复 扩展工具:如target analyzer、content discovery 和task scheduler
burpsuite是java语言编写的,须要运行在jre中sql
Hex #对应的时raw中的信息的二进制内容,能够经过hex编辑器对请求的内容进行修改,在进行00截断时很是好用。shell
spider的蜘蛛爬行功能能够帮助咱们了解系统的结构,其中spider爬取的内容将在target中展现。数据库
Decoder的功能比较简单,它时burp中自带的编码解码及散列转换的工具,能对原始数据进行各类编码格式和散列的转换。
对编码解码选项而言,目前支持url、html、base6四、ascii、十六进制、八进制、二进制和GZIP共八种格式转换。hash散列支持sha、sha-22四、sha-25六、sha-38四、sha-5十二、md二、md5格式的转换。更重要的是,能够对同一数据在decoder进行屡次编码、解码的转换。后端
burpsuite会向应用发送新的请求并经过payload验证漏洞。这种模式下的操做会产生大量的请求和应答数据,直接影响服务端性能,一般用于非生产环境。主动扫描适用于如下两类漏洞。 * 客户端漏洞:xss、http头注入、操做重定向... * 服务端漏洞:sql注入、命令行注入、文件遍历...
被动扫描: 当使用被动扫描模式是,burp不会从新发送新的请求,只是对已经存在的请求和应答进行分析,对服务端的检测来讲,这比较安全,一般用于生产环境的检测。 通常来讲,下列漏洞在被动模式中容易被检测出来。 * 提交的密码为未加密的明文 * 不安全的cookie的属性,例如缺乏httponly和安全标志 * cookie的范围缺失 * 跨域脚本包含和站点引用泄漏。表单值自动填充,尤为是密码。 * ssl保护的内容缓存。 * 目录列表 * 提交密码后应答延迟 * session令牌的不安全传输 * 敏感信息泄漏,例如内部ip地址、电子邮件地址、堆栈跟踪等信息泄漏。 I不安全的viewstate的配置。 * 错误或不规范的content-type指令。
优势:使用被动扫描模式验证是否存在漏洞,以减小测试的风险。跨域
* sniper模式使用单一的payload组。它会针对每一个位置设置payload。这种攻击设用于对常见漏洞中的请求参数单独进行fuzzing测试的情景。攻击中的请求总数应该是position数量和payload数量的乘积。 * Battering ram模式使用单一的payload组。它会重复payload并一次性把全部相同的payload放入指定的位置中。这种攻击适用于须要在请求中把相同的输入放到多个位置的情景。请求的总数是payload组中payload的总数。 * Pitchfork模式使用多个payload组。攻击会同步迭代全部的payload组,把payload放入每一个定义的位置中。这种攻击类型很是适合在不一样位置中须要插入不一样但类似输入的状况。请求的数量应该是最小的payload组中的payload数量。 * Cluster bomb模式会使用多个payload组,每一个定义的位置中有不一样的payload组。攻击会迭代每一个payload组,每种payload组合都会测试一遍。这种攻击适用于在位置中须要不一样且不想关或者未知输入攻击的情景。攻击请求的总数是各payload组中payload数量的乘积。
对Status或Length的返回值进行排序,查看是否有不一样之处。若是有,查看返回包是否显示为登陆成功。
burp repeater是一个手动修改、补发个别http请求,并分析它们的响应的工具。它最大的用途就是能和burpsuite工具结合起来使用。能够将目标站点地图、burp proxy浏览记录,burp Intruder的攻击结果,发送到repeater上,并手动调整这个请求。来对漏洞的探测或攻击进行微调。
raw:显示纯文本格式的消息。 params:对于包含参数(url查询字符串、cookie头或者消息体)的请求。params选项会把这些参数显示为名字/值的格式,这样就能够简单的对它们进行查看和修改。 headers:将名字/值的格式显示http的消息头,而且以原始格式显示消息体。 hex:容许直接编辑由原始二进制数据组成的消息。
burp Comparer在burpsuite中主要提供一个可视化的差别比对功能,来比对分析两次数据之间的区别。(在结果处,右击可导至该Comparer模块)
枚举用户名的过程当中,对比分析登录成功失败时,服务端反馈结果的区别。 使用Intruder进行攻击时,对于不一样的服务的响应,能够很快分析处两次响应的区别在哪。 进行sql注入的盲注测试时,比较两次响应消息的差别,判断响应结果于注入条件的关联关系。
Comparer数据加载的经常使用方式以下所示:
从其余burp工具经过上下文菜单转发过来。
直接粘贴。
从文件中加载。
burp Sequencer主要由信息截取(live capture)、手动加载(Manual Load)和选项分析(Analysis Options)三个模块组成。
在截取信息后,单击Load按钮加载信息,而后单击"Analyze now"按钮进行分析。
nmap(network mapper,网络映射器)是一款开放源代码的网络探测和安全审核工具。它被设计用来快速扫描大型网络,包括主机探测与发现、开放的端口状况、操做系统与应用服务指纹识别、waf识别及常见安全漏洞。它的图形化界面是Zenmap,分布式框架为DNmap。
-iR: 随机选择目标主机
...
扫描参数太多了,暂时用不到这么多。
探测防火墙状态:nmap -sF -T4 192.168.0.105
nmap的脚本默存在/xx/nmap/scripts 文件夹中 nmap脚本主要分如下几类: auth #负责处理鉴权证书(绕过鉴权)的脚本。 Broadcast #在局域网内探测更多服务的开启状况,如DHCP/DNS/SQLSERVER等 Brute #针对常见的应用提供暴力破解方式,如http/SMTP等。 Default #针对常见-sC或-A选项扫描时默认脚本,提供基本的脚本扫描 Discovery #对网络进行更多信息的搜集,如SMB枚举、SNMP查询等。 Dos #用于拒绝服务攻击 Exploit #利用已知的漏洞入侵系统 External #利用第三方的数据库或资源。例如,进行whois解析 Fuzzer #模糊测试脚本,发送异常的包到目标机,探测潜在漏洞。 Intrusive #入侵性脚本,此类脚本可能引起对方IDS/IPS的记录或屏蔽 Malware #探测目标机是否感染了并对、开启后门等信息。 Safe #此类与Intrusive脚本相反,属于安全性脚本。 version #负责加强服务于版本扫描功能的脚本 vuln #负责检查目标机是否有常见漏洞,如MS08-067
-sC/--script=default #使用默认脚本进行扫描 --script=<Lua scripts> #使用某个脚本进行扫描 --script-updatedb #更新脚本 --script-trace #若是设置该参数,则显示脚本执行过程当中发送于接受的数据。 -script-args-file=filename #使用文件为脚本提供参数 --script-args=key1=value1,key2=value2.... #该参数用于传递脚本里的参数,key1是参数名,该参数对应value1这个值。若是有更多参数,使用逗号链接。 例子: 鉴权扫描:nmap --script=auth 192.168.0.105 暴力破解:nmap --script-brute 192.168.0.105 扫描常见的漏洞:nmap --script=vuln 192.168.0.105 应用服务扫描:nmap --script=realvnc-auth-bypass 192.168.0.105 #nmap具有不少常见应用扫描脚本,例如vnc服务、mysql服务、telnet服务、rsync服务 探测局域网内更多服务开启状况:nmap -n -p 445 --script=broadcast 192.168.0.105 whois解析:nmap --script external baidu.com
更多扫描脚本的使用方法参见:https://nmap.org/nsedoc/categories.