命令执行绕过
通过php的危险函数执行需要的命令
简单例题
在ping ip后利用linux的命令分割符分割,可以执行任意命令
通过php的可变变量也能进行命令执行
类似于:或者,$a可控为{cmd}
linux大部分命令放置在/bin或者/ *** in目录下,无法执行可以考虑使用等命令
用;号隔开每个命令, 每个命令按照从左到右的顺序,顺序执行, 彼此之间不关心是否失败,所有命令都
会执行。
后台执行
命令之间使用 && 连接,实现逻辑与的功能。
只有在 && 左边的命令返回真(命令返回值 $?==0),&& 右边的命令才会被执行。
只要有一个命令返回假(命令返回值 $?==1),后面的命令就不会被执行。
命令A|命令B,即命令A的正确输出作为命令B的操作对象
例如: ps aux | grep "test" 在 ps aux中的結果中查找test。
命令之间使用 || 连接,实现逻辑或的功能。
只有在 || 左边的命令返回假(命令返回值 $?==1),|| 右边的命令才会被执行。
Win:
system()
shell_exec()
eval()
asssert()
exec()
preg_replace()
call_user_func()
passthru()
pctml_exec()
popen()
proc_open()
反引号命令执行(反引号相当于shell_exec())
如果命令注入的网站过滤了某些分割符,可以将分隔符编码后(url编码,base64等)绕过
这个编码后可以
例题:
覆盖写原来定时执行,用来清除进程的detect.py,直接get root权限
linux内置分隔符
对于 >,+ 等 符号的过滤 ,变量为>,变量则为+
通过拆分命令达到绕过的效果
空变量绕过
控制环境变量绕过
空值绕过
反斜杠绕过
$*和$@,$x(x 代表 1-9),${x}(x>=10) :比如ca${21}t a.txt表示cat a.txt 在没有传入参数的情况下,这些特殊字符默认为空,如下:
在Linux bash中还可以使用来执行系统命令
可以通过curl命令将命令的结果输出到访问的url中
在服务器日志中可看到
这样,命令的回显就能在日志中看到了
无回显的情况下wget带出
escapeshellarg()
escapeshellarg ( string) : string
escapeshellarg()将给字符串增加一个单引号并且能引用或者转码任何已经存在的单引号,这样以确保能够直接将一个字符串传入 shell 函数,并且还是确保安全的。对于用户输入的部分参数就应该使用这个函数。
例子
escapeshellcmd()
escapeshellcmd ( string) : string
escapeshellcmd()对字符串中可能会欺骗 shell 命令执行任意命令的字符进行转义。 此函数保证用户输入的数据在传送到 exec()或 system()函数,或者 执行操作符之前进行转义。
反斜线(\)会在以下字符之前插入: *`|*?~<>^()[]{}$*, \x0A和 \xFF。 '和 "仅在不配对儿的时候被转义。 在 Windows 平台上,所有这些字符以及 %和 !字符都会被空格代替。
使用的本意是避免参数注入,但是如果在此基础上又使用了,反而又会造成参数注入
例子:
这时候我们只能扫描一个ip地址,无法增加参数
-oN/-oX/-oG:
将报告写入文件,格式分别为正常(自定义.txt),XML,grepable.
但是如果多了个escapeshellcmd
可以写入一句话
注意要两遍都加单引号,否则写入的文件名或者其他的地方会有奇怪的错误
参考题目来自:https://www.jianshu.com/p/a77e956d9941
p神教程:https://www.leavesongs.com/SHARE/some-tricks-from-my-secret-group.html
题目:hitcon2017的babyfirst,hgame2020代打出题人服务中心
假设我们一次只能执行长度为5的命令
linux命令执行的时候可以使用反斜杠换行
bash脚本中同样适用上面的规则
可以用文件名加反斜杠构成命令,使用ls -t > o 将文件名输出到文件,使用bash o执行脚本
ls默认是按照ascii码由小到大排序的
如果想要控制文件的排序,我们可以使用
ls -t是按照文件创建时间排序的
将输出到文件
这样我们就可以先利用反斜杠将我们要执行的命令分隔开,在利用ls-t将命令分隔后的文件名写入到一个文件里,再使用bash执行这个脚本
构造
有了作为跳板,我们就可以写入其他的命令了
为了方便,我们可以利用curl从我们的vps上下载脚本,反弹shell。这样我们只需要构造
vps上
为了更方便,我们可以把vps的ip数字化
http://www.msxindl.com/tools/ip/ip_num.asp
795113595
所以要构造的payload就变成了
我vps用的宝塔,宝塔我没搞出来怎么支持纯数字ip。。。
本文导读目录: 1、来个黑客与电脑白痴的搞笑对话 2、黑客和电脑白痴的小说叫什么..能告诉我吗 3、关于黑客的问题 4、黑客与电脑小白对话全集有哪些? 5、黑客与电脑白痴对话的全文...
笔者是个K歌爱好者,使用K歌APP的过程中,很多场景下都会看到购买VIP的提示。 比如唱歌前下载伴奏的时候,VIP才能下载HQ音质的伴奏;唱完歌后后期的时候,VIP音质效果出类拔萃(好到不相信自己...
安全五、安全主张为了招引受害者,下面的图片显现的信息是:“您的Adobe Flash Player版别现已过期,请进行更新”。 当用户挑选更新时,就会下载歹意文件。 3.发掘源码缝隙,修正源码及备份文...
上海商务陪伴小学妹兼职【陶红恋】,上海是一座成功人士的聚集地,对商业模特的需求也是比较大的,今天明星商务分享模特访梦,年龄成都 女 24,婚姻:未婚,学历:高中,气质:上海商务陪伴小学妹兼职寻找方法,...
调查一个人要多少钱,现在每个人的身份凭证可能就是身份证了吧,但是你不知道的是身份证也许就可以调查你的所有的信息,我们会想不就一个身份证号码吗,它怎么就成了别人调查我的所有关键所在呢。 调查一个人要多...
不想让自家的Wi-Fi被蹭网,有没有什么办法呢?将Wi-Fi隐藏起来就可以解决您的烦恼。华为4G路由2支持隐藏Wi-Fi,隐藏之后,手机或电脑等无线设备将搜索不到华为4G路由2的 Wi-Fi,必须手动...