httrack
原理:
当测试人员对目标站点进行测试时,应当尽量减少与目标系统的交互,从而减少被发现的风险。httrack将目标系统站点信息通过镜像克隆的方式保存到本地。
环境:kali,metasploitable
使用方法:
- 下载:sudo apt-get install httrack
- 启动:httrack
- 步骤:(以向导模式为例)
- 结果:(需要等待一段时间)
扫描工具(主动扫描、代理模式)
- Nikto
- Vega
- Skipfish
- W3af
- Arachni
- Owasp-zap
Nikto:
介绍:
- 扫描工具
- Perl语言开发的开源web安全扫描工具
- 可扫描软件版本
- 可搜索存在安全隐患的文件
- 可扫描WEB Application层面的安全隐患
优点:避免404误判
在许多的app开发商中,有一些并未规范开发过程,未严格遵循RFC开发规范,导致许多扫描器在扫描时,就会产生对于不存在的对象返回200响应码的情况。Nikto对此进行了优化。Nikto依据响应文件内容判断,不同扩展名文件404响应内容不同。但是此优化会对扫描效率产生一定影响。可以加-no404来取消此优化
使用:
nikto或者man nikto
帮助菜单
nikto -update
用于升级nikto,由于国内网络受限,可能会报错,可以通过网址: http://cirt.net/nikto/UPDATES
下载
nikto -list-plugins
列出可使用的插件
nikto -host http://xxx.xxx.xxx/xxx
扫描指定目标,使用URL扫描
nikto -host xxx.xxx.xxx -port 80,443
扫描指定目标,使用IP+PORT扫描
nikto -host www.xxx.com -port 80,443 -ssl
扫描指定目标,使用域名扫描
nikto -host hosts.txt
当扫描多个目标站点时,可以将目标站点IP+端口,URL,域名放到一个文本文件中,按照一行一个目标站点的格式进行扫描
nmap -p80 192.168.1.0/24 -oG - | nikto -host -
nmap与nikto结合使用:nmap扫描192.168.1.0/24网段的80端口,用-oG输出,管道前的-表示扫描到的结果,然后用管道输出给nikto,最后的-表示nmap扫描到的结果
nikto -host 192.168.1.1 -useproxy http://localhost:8087
代理模式
nikto -vhost www.xxx.xxx
适用于一台主机有多个域名
查询过程中的交互命令
配置文件使用:sudo /etc/nikto.conf
IDS躲避技术:使用参数-evasion指定
nikto -host http://xxx.xxx.xxx/xxx -evasion 167
skipfish
介绍
- C语言编写
- 实验性的主动web安全评估工具
- 递归爬网
- 基于字典探测
- 速度快(支持多路单线程,异步I/O)
- 误报较低
用法
1. skipfish -o test http://xxx.xxx.xxx
-o参数:指定存放路径
2. skipfish -o test @url.txt
指定一个文件进行爬网,文件格式为每行一个url
3.skipfish -o test3 -I /dvwa/ -X logout -D www.w3.org -l 2000 -S /usr/share/skipfish/dictionaries/complete.wl http://xxx.xxx.xxx
skipfish基于超链接进行爬网,但对于一些隐藏超链接无法直接爬取;skipfish内部集成常用url字典,通过字典遍历隐藏的url。由于字典文件以**.wl**为后缀,所以可以通过命令dpkg -L skipfish | grep wl来查看字典
-S:指定字典文件
-W:将网站特有的字符串保存到a.wl中以便后续测试
-D:跨站点爬另外一个域,使用-D参数后,不仅仅会扫描http:xxx.xxx.xxx,如果http://xxx.xxx.xxx下有链接到www.w3.org的链接,会继续扫描www.w3.org这个域。
-l:指定每秒最大请求数(这是小写L)
-m:每个IP最大并发数
-X:不检查包含string的URL,例如logout
-I:只检查包含string的URL(这是大写i)
–config:事先设置好配置文件,用该参数引用
**PS:**上述参数根据需求使用
4. skipfish -o test8 -I /dvwa/ -C "Cookie=Cookie1" "Cookie2=Cookie2" http://192.168.181.132/dvwa/
-C:指定Cookie
5. skipfish -o test8 -I /dvwa/ -A user:password http://xxx.xxx.xxx
-A:指定用户名和密码
6. skipfish -o test8 -I /dvwa/ -A user:password http://xxx.xxx.xxx
-A:指定用户名和密码
7. skipfish -o test13 --auth-form http://xxx.xxx.xxx/dvwa/login.php --auth-verify-url http://xxx.xxx.xxx/dvwa/index.php --auth-user admin --auth-pass password -I dvwa http://xxx.xxx.xxx/dvwa/
–auth-form:提交表单的URL
–auth-user:要提交的用户名
–auth-pass:要提交的密码
–auth-verify-url:认证成功后的URL
w3af
介绍:
全称:Web Application Attrack and Audit Framework
特点:不仅可以发现漏洞,同时可以利用漏洞
开发语言:python
插件:150多种
插件分类:
- audit:扫描于发现漏洞
- infrastructure:基础架构扫描(操作系统、web server、开发语言、waf)
- grep:别动扫描(扫描目标返回的信息)
- evasion:逃避IDS、waf等检测
- mangle:基于正则表达式的内容替换
- auth:身份认证
- bruteforce:暴力破解,发现隐藏路径和文件名
- output:输出扫描信息供其他软件调用
- crawl:爬网
- attrack:攻击
Arachni
介绍:
OWASP_ZAP
介绍:
- 全称:Zed attack proxy
使用:
- 代理:开启OWASP_ZAP后,自动侦听8080端口,所以只需在浏览器设置侦听8080端口的代理,这样浏览器访问的网站都会通过OWASP_ZAP.
- 主动、被动扫描:支持手动点击扫描和软件全自动扫描
- Fuzzy:模糊测试