vulnhub靶场之THE PLANETS: EARTH

准备:
攻击机:虚拟机kali、本机win10 。
靶机:THE PLANETS: EARTH , 网段地址我这里设置的桥接,所以与本机电脑在同一网段,下载地址:https://download.vulnhub.com/theplanets/Earth.ova,下载后直接vm打开即可 。

vulnhub靶场之THE PLANETS: EARTH

文章插图
信息收集:
通过nmap扫描下网段内的存活主机地址,确定下靶机的地址:nmap 192.168.0.0/24,获得靶机地址:192.168.0.11
vulnhub靶场之THE PLANETS: EARTH

文章插图
扫描下端口对应的服务:nmap -T4 -sV -p- -A 192.168.0.11 , 显示开放了22、80、443端口,但是443端口需要进行dns解析 。
vulnhub靶场之THE PLANETS: EARTH

文章插图
在未设置dns解析时,访问下https和http服务显示均是400:
vulnhub靶场之THE PLANETS: EARTH

文章插图

vulnhub靶场之THE PLANETS: EARTH

文章插图
设置dns解析:
win:打开C:\Windows\System32\drivers\etc\hosts文件 , 添加:192.168.0.11 earth.local 192.168.0.11 terratest.earth.local , 然后访问:https://earth.local/或http://earth.local或https://terratest.earth.local获得初始界面:
vulnhub靶场之THE PLANETS: EARTH

文章插图

vulnhub靶场之THE PLANETS: EARTH

文章插图
kali:打开/etc/hosts文件,添加:192.168.0.11 earth.local 192.168.0.11 terratest.earth.local,然后同windows 。
目录扫描:
使用dirmap进行目录扫描:python dirmap.py -i http://earth.local/ -lcf和python dirmap.py -i https://terratest.earth.local -lcf,获得一下目录信息:
vulnhub靶场之THE PLANETS: EARTH

文章插图

vulnhub靶场之THE PLANETS: EARTH

文章插图
对扫描出来的地址进行访问,获得一个登录界面、一个robots.txt文件,访问结果如下:
vulnhub靶场之THE PLANETS: EARTH

文章插图

vulnhub靶场之THE PLANETS: EARTH

文章插图
尝试访问一下testingnotes.*文件,后面后缀进行测试,最后发现txt文档可以访问,https://terratest.earth.local/testingnotes.txt
vulnhub靶场之THE PLANETS: EARTH

文章插图
在该文件中发现了以下信息:
1、用户名信息:terra used as username for admin portal , 用户名terra是超级管理员账户 。
2、加密算法:Using XOR encryption as the algorithm, should be safe as used in RSA,加密算法XOR 。
3、加密文本:testdata.txt was used to test encryption , 测试数据在testdata.txt中 。
xor算法:a^b=c,则c^b=a或c^a=b,所以我们就需要将发送得信息与密码本信息进行异或,得到原来发送得未加密得信息 。
读取testdata.txt文件:
vulnhub靶场之THE PLANETS: EARTH

文章插图
解码传输信息
#vlunhub之THE PLANETS: EARTH脚本import binasciientry_str = '2402111b1a0705070a41000a431a000a0e0a0f04104601164d050f070c0f15540d1018000000000c0c06410f0901420e105c0d074d04181a01041c170d4f4c2c0c13000d430e0e1c0a0006410b420d074d55404645031b18040a03074d181104111b410f000a4c41335d1c1d040f4e070d04521201111f1d4d031d090f010e00471c07001647481a0b412b1217151a531b4304001e151b171a4441020e030741054418100c130b1745081c541c0b0949020211040d1b410f090142030153091b4d150153040714110b174c2c0c13000d441b410f13080d12145c0d0708410f1d014101011a050d0a084d540906090507090242150b141c1d08411e010a0d1b120d110d1d040e1a450c0e410f090407130b5601164d00001749411e151c061e454d0011170c0a080d470a1006055a010600124053360e1f1148040906010e130c00090d4e02130b05015a0b104d0800170c0213000d104c1d050000450f01070b47080318445c090308410f010c12171a48021f49080006091a48001d47514c50445601190108011d451817151a104c080a0e5a'pass_txt = "According to radiometric dating estimation and other evidence, Earth formed over 4.5 billion years ago. Within the first billion years of Earth's history, life appeared in the oceans and began to affect Earth's atmosphere and surface, leading to the proliferation of anaerobic and, later, aerobic organisms. Some geological evidence indicates that life may have arisen as early as 4.1 billion years ago."#将pass_txt转换成16进制pass_txt_16 = binascii.b2a_hex(pass_txt.encode(encoding="utf-8")).decode('utf-8').replace("b'",'')#进行xor运算result = hex(int(entry_str,16)^int(pass_txt_16,16)).replace('0x','')#将运算结果转换成字符串datatext = binascii.unhexlify(result).decode('utf-8')print(datatext)

推荐阅读