Kali Linux学习笔记—WEB渗透
侦察Httrack 扫描Niktovegaskipfishw3afArachniOWASP_ZAP 必须掌握Burpsuite 必须掌握实验环境:Metasploitable
DVWA
侦察
Httrack
针对WEB服务器,对目标网站镜像复制、克隆到本机,减少与目标系统交互,避免触发目标服务器报警机制。
可以在设置的目录下看到网站镜像文件。
扫描
openwas、nessus
扫描指主动发起探测
代理
手动扫描
自动扫描
Nikto
Perl语言开发的开源web安全扫描器
扫描web服务器的版本
搜索存在安全隐患的文件
服务器配置漏洞
使用组件组成web server服务器,默认组件配置,组件本身存在漏洞。
WEB Application层面的安全隐患
避免404误判
开始正式扫描之前,在自己数据库中将将常见的web服务器上可能出现的扩展名提取出来以随机文件名+扩展名拼接向目标服务器发起请求。请求完后根据服务器返回的结果,将返回的结果通过MD5值进行哈希摘要,以此对比当真正文件不存在服务器端时服务器会返回信息的对应MD5值。
nikto -list-pluginsnikto -updatenikto -host http://172.16.2.65/dvwanikto -host 172.16.2.65 -port 80nikto -host host.txtnikto -host 172.16.2.65 -useproxy http://localhost:8087 ##支持代理nmap -p80 172.16.2.0/24 -oG - | nikto -host - ##结合nmapnikto -id 只适用于http的身份认证,不支持表单vi /etc/nikto.conf 将当前的web application的cookie设置到配置文件中,扫描时自动调用配置文件代入去扫描。
vega
JAVA编写的开源web扫描器
扫描模式
获取网站的一般资源
代理模式
比较关注 Web Application漏洞
支持SSL
在安装vega过程中遇到问题,未解决:/weixin_43653897/article/details/110633039
代理模式:手动对目标网站爬站,再利用主动扫描模块字典对目标网站目录结构或文件名称Fuzz。
step1:参数配置设置vega中的代理服务器,建议删掉特征字符串
step2:点击播放按钮,在代理模式下配置扫描模块,将经过的流量做被动分析是否存在漏洞。
step3:将页面所有能点击的地方都点击一遍(手动爬站)。文件名称有一部分是黑白色:页面有超链接,没有实际访问。
step4:切换到scanning,设置scope扫描的URL,排除扫描的URL,eg:logout。
主动扫描:
添加扫描模块,输入身份认证信息、提取cookie信息
选择macro基于表单的身份认证,创建一个宏添加首次登陆Application时提交的admin数据。
新建扫描->选择用户身份信息->添加已知的无用信息->左下角console可查看详细信息->将所有攻击类型对每个变量都尝试一遍->左下角request 扫描探测过程中向目标系统发送的所有请求的过程。
分析:
右键replay重放请求,可将修改后的信息重新请求。测试每个客户端提交的字段的内容发生变化时服务器端是否有变化,有变化则说明服务端处理使用了该变量。
截断intercept
tips:所有扫描器都无法保证发现所有web application上的漏洞。通过看扫描结果获得思路,需要去验证。
做渗透测试时需要清晰定义项目范围scope。
skipfish
C语言编写实验性的主动web安全评估工具主要面向web application漏洞递归爬网基于字典的探测字典枚举等优点
速度较快:多路单线程,全异步网络I/O,消除内存管理和调度开销
启发式自动内容识别:更好发现隐藏内容
误报较低
使用方式:命令行
指定一个扫描目标 -o 设置扫描出来的结果存储目录skipfish -o test1 http://172.16.2.65/dvwa
发现扫描时没有从指定的/dvaw目录扫,而是从该网站的根目录开始
使用开关 -I 只扫包含字'dvwa'的URLskipfish -o test1 -I /dvwa http://172.16.2.65/dvwa
扫描一个包含多个url的地址文件txtskipfish -o test @url.txt
隐藏目录通过连接无法被发现,skipfish提供字典发现隐藏目录
-S 指定字典dpkg -L skipfish | grep wl 查找字典目录-W 指定字典保存目标网站特有的字符串、名称等skipfish -o test -S complet.wl -W a.wl http://1.1.1.1
-X 不检查包含'string'的URL -K 不对指定参数进行Fuzz测试-D 跨站点爬另外一个域 目标网站有链接跳去该域就会去扫,没有就不会-l 每秒最大请求数-m 每IP最大并发连接数--config 指定配置文件
身份认证
-A http基本身份认证skipfish -A user:pass -o test http://1.1.1.1-C 使用cookie信息skipfish -C "name=val" -o test http://1.1.1.1
直接提交表单的方式将身份信息提供给web application。
man skipfish 查看帮助手册可通过源代码查找表单名称,skipfish -o a --auth-form http://172.16.2.65/dvwa/login.php --auth-form-target http://172.16.2.65/dvwa/login.php --auth-user-field username --auth-user admin --auth-pass-field password --auth-pass password --auth-verify-url http://172.16.2.65/dvwa/index.php -I dvwa http://172.16.2.65/dvwa/
由图可以看出,扫描部分是提交身份认证(即登录)之后的内容。
w3af
全称Web Application Attack and Audit Framework,web应用程序攻击审计框架,基于python语言开发,与前几个相比属于重量级工具。目标&优势:发现和利用所有WEB应用程序漏洞9大类近150个plugin(插件模块)()可按照扫描目标进行配置audit扫描和发现漏洞infrastructure 扫描目标服务器的基础架构信息系统、软件版本等grep 被动扫描插件类型,根据audit法宝发包返回的流量分析evasion 编码变形等逃避目标IDS等检测mangle 基于正则表达式内容的自动变换auth 基于表单的身份认证bruteforce 暴力破解,Fuzz隐藏文件output 扫描结果输出成其他格式可以被其他工具调用crawl爬网 attack 不可人工修改安装w3af
参考:/deng_xj/article/details/87753112
字符界面 W3af_console
图形化界面 W3af_GUI
Arachni
安装过程遇到问题,参考:/weixin_43653897/article/details/110704626
OWASP_ZAP 必须掌握
Zed attack proxy
WEB Application 集成渗透测试和漏洞挖掘工具
开源免费跨平台简单易用
截断代理
主动、被动扫描
Fuzzy、暴力破解
步骤:
step1:每启动一个窗口为一个实例,选择是否长久保存会话内容。
step2:设置代理
step3:工具->Fuzz 选中->add 添加一个载荷
选中->右键->Fuzz payloads 可添加各种文本文件。
ZAP中集成很多文件,File Fuzzers。
通过响应代码判断是否成功,筛选:排序、header 长度
step4:手动爬网
step5:自动爬网
step6:
扫描模式
Presist Session Mode: 1.Safe 不会对目标进行破坏性操作 2. Protected 只能对指定的web application做有一定危险性的扫描3. Standard 可能会对目标站点进行破坏,但破坏性不大4. ATTACK 肆无忌惮
扫描策略默认继承扫描策略,根据一般网站的漏洞集成。
访问https报错证书告警,需要在ZAP中安装根证书。
彩虹表攻击SHA1哈希。
Burpsuite 必须掌握
Web安全工具中的瑞士军刀统一的集成工具发现全部现代Web安全漏洞所有的工具共享一个能处理并显示HTTP消息的可扩展框架安装遇到JDK版本问题参考:/weixin_43653897/article/details/110764488
默认情况下只拦截客户端向服务器请求的数据,不拦截服务器向客户端返回的数据。在proxy->options中设置。
如果觉得《Kali Linux学习笔记—Web渗透(1)》对你有帮助,请点赞、收藏,并留下你的观点哦!