【CTFHub ShellShock解题记录】,破壳漏洞,出现于2014年
可以通过以下命令来判断是否存在这个漏洞
env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
如果结果中有 说明存在这个漏洞,执行了echo 这个语句 。
大致原理:
bash shell中定义环境变量通过函数名称来调用时,正常情况下是这样
但是对于存在漏洞的环境下,Bash对于环境变量只是检测到函数,并且从’{‘开始执行,但是并没有在’}'后停止,也就是说定义在函数体外shell命令也会执行,所以env x='() { :;}; echo ' 输出了 。
题目打开,通过蚁剑连接
查看() 和上题一样还是没有禁用函数 。正常情况下蚁剑已经实现通过漏洞,直接拿到shell,但是这题不行 。
得手工,上传shell.php和test.php,用来存放命令执行结果
可能是因为test.php文件为空上传报错,但是还是传上去了,刷新一下,
文章插图
> /var/www/html/test.php");error_log("admin",1);//mail("admin@localhost","","","","");?>
发现在/目录有flag文件,和之前题目一样,这次直接通过tac来读取文件 。
通过来设置环境变量,默认定义的环境变量名必须以PHP_开头 。
()函数会在执行sh -c -t -i触发
在浏览器访问shell.php,再打开tes,php,拿到flag
搞定
参考文章
- 初中学化学技巧,初中化学解题技巧
- 取数游戏II-洛谷
- 解三角形题型及解题方法归纳总结 解直角三角形经典题型
- 初中解方程解应用题类型及技巧 熟知这些解题技巧轻松得高分
- 初一平方根解题方法 掌握这些知识点轻松应对
- 高考物理满分技巧 这三大类型的解题技巧建议收藏起来
- 做思维逻辑题技巧 逻辑思维题解题妙招
- 二重积分的几何意义解题 二重积分的几何意义
- 数独九宫格的解题方法和技巧1-6 数独九宫格的解题方法和技巧 数独9宫格万能口诀
- 初中一次函数应用解题方法 实际应用问题的解决技巧