环境配置
靶场搭建
靶场地址: 提取码: 3p47
项目七靶场渗透最终目的:获得域控中的flag.txt文件中的内容 项目七靶场环境是用 VMware Workstation 搭建,把环境文件下载后,用VMware Workstation 编辑虚拟网络编辑器即可正常访问。
- WEB 服务器是双网卡
第一块网卡桥接 ip 段是 192.168.0.0/24 第二块网卡 vmnet18 10.10.1.0/24
- oa 服务器
第一块网卡 vmnet18 10.10.1.0/24 第二块网卡 vmnet19 10.10.10.0/24
- dc 域控
网卡 vmnet19 10.10.10.0/24
网络拓扑图
测试网络
外网
对于主机web服务器是无法ping通的、防火墙拦截了数据包,所以可以通过直接访问它的80端口,查看网络是否连通
内网
由于内网主机OA同样设置有防火墙所以web与oa之间不能ping通,同样可以通过访问80端口,查看连通状态 由于dc没有设置防火墙,所以oa是可以直接ping通的
信息收集
确认ip
使用netdiscover 探测内网
sudo netdiscover -i eth0 -r 192.168.0.0/24
192.168.0.114就是渗透对象 也可以使用nmap扫描
nmap -sP -PI -PT 192.168.0.0/24
端口扫描
利用masscan与nmap联合加快扫描速度
masscan
因为服务器上安全防护软件 尽量把 rate 的值调低 ,调大可能会被封(如果被封20分钟后解封)
masscan -p 1-65535 192.168.0.114 --rate=100
nmap
nmap -sV -p 3389,5985,6588,999,21,80 -A 192.168.0.114 -oA attack-ports
这是对nmap扫描结果美化后的界面
绊定hosts域名
这个靶场 web 服务器的域名是 www.moonlab.com 在 hosts 绑定对应的 IP 方能访问 web 服务。
linux 系统 /etc/hosts windows C:WindowsSystem32driversetchosts 192.168.0.114 www.moonlab.com
绑定后访问
发现什么都没有显示,随便加了个index.php,发现网站存在安全狗
whataweb查询网站的cms
whatweb www.moonlab.com
被WAF拦截了
目录扫描
由于已经知道有WAF存在,使用一般现有的扫描器都会被拦截 这里使用dirsearch开默认线程扫描会被拦截,所以将线程设置为1扫,但是并没有扫出有用的结果,基本都被WAF(安全狗)拦截返回200,还一个原因字典不够强大
python dirsearch.py -u "www.moonlab.com" -t 1 -e*
去网上了解了扫描目录WAF(安全狗)绕过的方法:
- 降低请求频率,防止IP被ban
- 爬虫白名单绕过
- 代理池请求
这里由于一般扫描器都被拦截,就使用暗月师傅提供的文档里的一个目录遍历脚本,字典使用的是dirsearch自带的dicc.txt,脚本将结果输出为url.txt
#encoding:utf-8 from cgitb import reset import requests import sys import time # url = "http://www.moonlab.com" with open (dicc.txt,r,encoding=UTF-8) as readfile: for dirs in readfile.readlines(): url = http://www.moonlab.com/+dirs.strip( ) resp = requests.get(url) strlen = len(resp.text) print(url+---statu---+str(resp.status_code)+---lens---+str(strlen)) #sys.exit() time.sleep(2) if resp.status_code == 200 or resp.status_code == 403 or resp.status_code == 500 or resp.status_code == 301: if str(strlen) != "2939": with open(url.txt,a,encoding=UTF-8) as writefile: writefile.write(url+---statu---+str(resp.status_code)+---lens---+str(strlen)+ )
可以看到爆出了robots.txt文件,它的请求包返回长度为84,做到这里突然想起nmap扫描端口信息时有一个端口999开放的服务,由于本人学的很浅,这么敏感的信息没有第一时间发现利用
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/291867.html