内容简介:大家好,爱写靶机入侵文章的我又来了!本次靶机分2种第一种为CTF中的PWN,该靶机设计在Linux 32位系统中,一共分为3个等级,本次先实战使用靶机ROP下载地址:
前言
大家好,爱写靶机入侵文章的我又来了!本次靶机分2种第一种为CTF中的PWN,该靶机设计在 Linux 32位系统中,一共分为3个等级,本次先实战使用 level-0 ,第二个靶机为SolidState,还是跟原来一样我们入侵进去拿到root权限。
靶机安装/下载
靶机ROP下载地址: https://pan.baidu.com/s/1rYDOK-EDZDEfEYk2_IfRMg
靶机IP:172.16.24.48
SolidState靶机下载地址: https://pan.baidu.com/s/1UvSFf-8wMAtRFZ5qNkjMJg
靶机IP:172.16.24.66
实战
ROP靶机PWN
老规矩探测IP:
通过nmap探测可以看到该靶机开了3个端口,我们访问http看一下
这里给出来了,该等级的 c语言 代码和一些需要我们关注的信息,比如该等级靶机让我们锻炼ret2libc技术,还给出了一个ssh的账号密码为: level0 : warmup ,通过上面的源码可以看到这里有很明显的栈溢出漏洞,下一步我们就登陆该等级ssh,查看调试一下吧
登陆成功,在目录下面有一个flag文件,我们现在的权限说没办法读取的,下一步我们运行一下该level0,看看是怎么样的
可以看到程序接收用户的输入,如果经常挖漏洞的小伙伴一看就知道这样的方式很有可能是出现溢出漏洞的(假如没有源码的情况下),下面我们来调试一下这个level0看看,
通过上图可以看到小弟是先确认一下系统版本,确认其为32位Linux操作系统,后面才使用gdb加载level0文件
通过查看main可以看到比较敏感的函数:gets
下一步使用checksec来检测一下开启了那些防护,
如上图可以看到只开启了NX,满足可以使用ret2libc技术,下一步我们来确认偏移地址,我们使用pattern来完成,gdb peda插件已经内置,因为我们有源码所有我就不把偏移指设的那么多,如图:
生成完后,我们继续运行一下该程序,在gdb里直接输入 “r” 即可,如何输入生成的值执行
通过上图可以看到程序如我们预想的那样奔溃,EIP变成了 0x41414641
接下来我们通过pattern_offset来判断溢出点为44
下一步我们来确认一下溢出点是否真确
通过上面的调试已经确认该溢出点是正确的,eip也可控,存在栈溢出漏洞,下一步我们使用vmmap查看内存映射,寻找选择可读可写和可执行的内存块
到了这里有经验的小伙伴肯定知道该怎么做了,
我们找到了2个,下一步我们找pop3ret,我们使用 ropgadget 来帮我们完成,pade插件里已经有了,如图:
,我们找到了一个,是否正确呢,我们去 http://ropshell.com 上验证一下,小弟这里就把这个level0 下载到本机然后上传到该站分析,
确认无误后,下一步我们就来编写这个exp吧,
上图中 0xbffdf000 为 堆栈地址
下面的0x21000 为 堆栈的空间地址
最后的 0x666 为发送的shellcode字节,其实小伙伴们可以写小一点,我就不一样了我喜欢大的。。。。
最后我们运行该exp,拿flag
如图所示,已成功拿到 shell 和flag
【完】
SolidState靶机入侵
看完比较枯燥的,下面我们来点有趣的。
老规矩探测IP:
下一步使用nmap探测一下,
发现其开放了多个端口,我们先看看80端口,看有没有什么可利用的
下一步我们使用目录猜解 工具 跑一下看看
发现其过滤了我们的探测,我们在上面扫描时,看到4555端口开放了一个很敏感的服务:JAMES Remote Admin 2.3.2
到了这里我们访问一下该端口看看,
让我们登陆,哈哈哈,不用怀疑谷歌一波,发现其默认账号密码为:root :root
试一下,然后就直接进去了。。。。
通过上图提示,我们直接输入 help
看到了其给了我们几个命令,下面小弟就直接列出用户,然后选择一个账户修改其密码,如图:
可以看到 我重置了 mindy 账户的密码改为 666
下面我又搜索了关于 JAMES 的漏洞,发现一个远程命令执行漏洞,如图:
地址: https://www.exploit-db.com/exploits/35513
那这个漏洞需要配合登陆ssh触发,我们看到上面我已经重置了其邮箱密码,下面我们登陆其邮箱看看有没有什么发现,(关于邮箱怎么设置连接,请查看小弟的前面几篇文章)
成功拿到ssh密码:P @55W0rd1 !2@
下一步我们修改一下我们找到的exp脚本,
直接修改第19行代码,把payload改成我本机的ip,然后在本机接收1234 端口
下一步就是登陆该ssh账户,
我们已经成功拿到shell,(注,这里要说一下,如果没有利用这个漏洞,直接用ssh登陆,得到的shell是“rbash”的,小弟试了试没办法绕过)。
下面我们直接提权吧,老规矩在/tmp目录下上传提权脚本看看
我在/tmp目录下操作的时候,发现刚刚下载完的文件突然就不见了,我去。。。
当然我的手速还是挺快的,刚刚已经运行完了该脚本,分析中发现了一个可写文件且权限较高,如图:
我们访问查看一下这个文件,
看了源码应该就知道了为什么/tmp目录下的文件会突然不见。。。
下面不用怀疑直接替换这个文件,即可
因为刚刚我们可以看到,这个文件是自己默认隔段时间执行的,所以我们只需要在本机上运行监听端口静静等待美丽的shell自己送来门了就行,如图:
成功拿到root_shell
结语
祝您生活工作愉快!
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 渗透测试实战-DC-1:1靶机入侵+Matrix2靶机入侵
- 渗透测试实战-Blacklight靶机+DeRPnStiNK靶机入侵
- 渗透测试实战-eric靶机+HackInOS靶机入侵
- 渗透测试实战-lin.security靶机+Goldeneye靶机入侵
- 渗透测试实战——unknowndevice64-1靶机+Moonraker靶机入侵
- 渗透测试实战-bulldog 2靶机入侵
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Apache Tomcat 6高级编程
Vivek Chopra、Sing Li、Jeff Genender / 人民邮电出版社 / 2009-3 / 79.00元
《Apache Tomcat 6高级编程》全面介绍了安装、配置和运行Apache Tomcat服务器的知识。书中不仅提供了配置选项的逐行分析,还探究了Tomcat的特性和功能,可以帮助读者解决出现在系统管理的各个阶段的各种问题,包括共享主机、安全、系统测试和性能测试及调优。 《Apache Tomcat 6高级编程》重点讲解Tomcat 6的应用知识。从基本的Tomcat和Web应用程序配置......一起来看看 《Apache Tomcat 6高级编程》 这本书的介绍吧!