概述
文章目录
- 命令执行与代码执行漏洞
- 命令执行漏洞原理
- windows命令连接符
- linux命令连接符
- 命令执行空格绕过
- 命令执行关键字绕过
- 命令执行关键字绕过
- shell反弹
- 命令执行漏洞的修复
- 1、excapeshellarg函数
- 2、escapeshellcmd参数
- 代码执行漏洞
- eval函数
- assert函数
- call_user_func函数
- call_user_func_array函数
- create_function函数
- array_map函数
- 敏感文件
- FUZZ测试
命令执行与代码执行漏洞
命令执行漏洞原理
应用程序的某些功能需要调用可以执行系统命令的函数,如果这些函数或者函数的参数能被用户控制,就可能通过命令连接符将恶意代码拼接到正常的函数中,从而随意执行系统命令。
windows命令连接符
“&”命令前面的语句为假,则直接执行后面的;前面的语句为真,命令都执行。
“&&”前面的语句为假,则直接出错,后面的也不执行;前面为真,都执行。
“|”前面命令正确,直接执行后面的语句;前面的语句为假,则直接出错,后面的也不执行。
“||”前面出错,执行后面的;前面不出错,只执行前面的,不执行后面的命令。
linux命令连接符
“;”分号操作符使多个命令顺序执行,前面命令和后面命令都会执行。
“&”操作符使命令在后台运行,可以同时执行多条命令。
“&&”操作符,第一个命令执行成功,执行第二个命令。前面命令不错在,后面的命令不在执行。
“|”操作符,将第一个命令的输出作为第二个命令的输入,前面跟后面的都会执行,但是只显示后面的执行结果。
“||”操作符,前面命令执行成功后面的命令不会执行,前面的命令执行失败后面的命令会执行。
命令执行空格绕过
$IFS
或${IFS}
,在linux下的内部域分隔符,IFS存储的值可以使空格、tab、换行符或者其它自定义符号
TAB
制表符:%09是Tab的url编码,可以通过%09来待敌空格、绕过空格的过滤
{}
花括号
输入重定向<
命令执行关键字绕过
变量拼接
空变量
系统变量:${SHELLOPTS}
转义字符
命令执行关键字绕过
通配符:查询时通过通配符模糊查询某些文件
Base64编码:利用系统函数base64编码,将关键字进行base64编码,绕过过滤。
expr awk :通过expr和awk命令从其他的文件中获取字符并进行命令构造。
shell反弹
shell反弹:反弹shell,就是攻击监听在某TCP/UDP段位为服务端,目标机主动发起请求道攻击机监听的端口,并将其命令行的输入输出转到攻击机。
命令执行漏洞的修复
一、PHP配置文件禁用敏感函数
通过php配置文件中的disable_functions禁用敏感函数
二、使用相关过滤函数处理相关参数
1、excapeshellarg函数
此函数把字符串转码为可以在shell命令里使用的参数,过滤命令中的参数
2、escapeshellcmd参数
此函数对字符串中可能会欺骗shell命令执行任意命令的字符进行转义,此函数保证用户输入的数据在传送到exec()或system函数,或者执行操作符之前进行转义。
代码执行漏洞
应用程序中提供了一些可以将字符串作为代码执行的函数,如果这些函数的参数控制不严格,可能会被利用造成任意代码执行。
RCE远程系统命令执行/远程代码执行。
命令执行是在操作系统上执行的命令,代码执行是应用解析后通过应用程序代码执行的命令。
eval函数
把字符串当做PHP代码执行。
assert函数
assert函数会检查指定的assertion并在结果为FALSE时采取适当的行动。如果assertion是字符串,它将会被assert()当做PHP代码来执行。
call_user_func函数
call_user_func—把第一参数作为回调函数调用。
call_user_func_array函数
此函数把第一个参数作为回调函数调用,把参数数组作为回调函数的参数传入。
create_function函数
此函数创建一个匿名函数
根据传递的参数创建匿名函数,并为其返回唯一名称。
array_map函数
此函数为数组的每个元素应用回调函数
敏感文件
Vim编辑器意外退出时会生成.swp的备份文件
robots.txt:搜索引擎中访问网站的时候要查看的第一个文件,该文件告诉搜索引擎蜘蛛程序哪些文件不能爬取。
FUZZ测试
漏洞挖掘有三种方法:白盒代码审计,灰盒逆向工程和黑盒测试。黑盒测试是FUZZ测试中效率最高的一种,能够快速验证大量潜在的安全威胁。它通过向软件输入非法的字段,观测被测试软件是否异常而实现。
最后
以上就是懦弱画板为你收集整理的命令执行与代码执行漏洞的全部内容,希望文章能够帮你解决命令执行与代码执行漏洞所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复