热门课程

免费试听

上课方式

开班时间

当前位置: 首页 -   文章 -   新闻动态 -   正文

安全漏洞从原理到实战--命令执行漏洞

知了堂姐
2024-07-09 11:12:24
0
一、命令执行漏洞简介
命令执行漏洞就是黑客可以直接在web应用中执行系统命令,从而获取敏感信息或者拿下shell权限。
  • 命令执行漏洞成因
命令执行漏洞形成的原因是web服务器对用户输入的命令安全监测不足,导致恶意代码被执行。
  • 命令执行漏洞分类
  1. 系统命令执行漏洞:传入系统命令
  2. PHP代码执行漏洞:传入PHP代码
  • 系统命令执行函数
1system
  1. 含义
执行外部程序,并且显示输出
(2)语法
system ( string $command [, int &$return_var ] ) : string
 
2exec函数
(1)含义
执行系统外部命令时不会输出结果,而是返回结果的最后一行。
(2)语法
function exec(string $command,array[optional] $output,int[optional] $return_value)
3Passthru
(1)含义
passthru直接将结果输出到浏览器,不需要使用 echo 或 return 来查看结果,不返回任何值,且其可以输出二进制,比如图像数据。
(2)语法
function passthru(string $command,int[optional] $return_value)
4、反引号``shell_exec()
shell_exec() 函数实际上仅是反撇号 (`) 操作符的变体
 
5popen()
popen() 函数打开进程文件指针。
6proc_open
 执行一个命令,并且打开用来输入/输出的文件指针。
7、$env
$_env是环境变量。
PHP中的$_ENV是一个包含服务器端环境变量的数组。它是PHP中一个超级全局变量,我们可以在PHP 程序的任何地方直接访问它。
$_ENV只是被动的接受服务器端的环境变量并把它们转换为数组元素,你可以尝试直接输出它。
  • PHP代码执行漏洞
在PHP里面有一些函数将输入的字符串参数当做PHP代码执行。
PHP代码执行函数:eval、assert、preg_replace
  1. eval函数
把字符串当成 PHP 代码来计算。
  1. preg_replace函数
preg_replace 函数执行一个正则表达式的搜索和替换。
  1. assert函数
assert函数检查一个断言是否为FALSE
 
  • 防御命令执行漏洞函数
1escapeshellarg()
把字符串转码为可以在 shell 命令里使用的参数
2escapeshellcmd()
转义命令中的所有shell元字符,# &;`,|*?~<>^()[]{}$\\
  • 系统命令执行漏洞拼接符
拼接符 作用
| 只执行第二个命令
|| 第一个命令执行成功则第二个命令不执行,若1失败,则执行2
& 不管第一个命令是否执行成功都会执行第二个命令
&& 必须两个命令都成功才执行
第一个命令执行完成再执行第二个命令(linux系统)
  • 命令执行漏洞实例
1DVWA command injector   low
(1)使用&符号拼接命令,不管第一个命令是否执行成功都会执行第二个命令。
  1. 使用管道符,只执行第二个命令不执行第一个命令。
2DVWA command injector   medium
(1)中级的命令注入漏洞过滤了&&
(2)&还是可以执行,也可以使用&&&绕过。
3DVWA command injector   high
(1)high直接过滤了&等符号
(2)使用管道符绕过
4DVWA command injector   impossible
(1)提交127.0.0.1&whoami,发现&等特殊字符,whoami等敏感词被过滤了
(2)无法绕过
5、pikachu
(1)exec ping
提交www.baidu.com&dir,普通拼接即可绕过
(2)exec “eval”
提交system(‘dir’);
提交phpinfo();
大家都在看

软件测试能干到多少岁?软件测试的发展路线

2024-07-09 浏览次数:0

RSTP协议原理与配置整——STP的不足

2024-07-09 浏览次数:0

怎么学前端更好就业?前端就业秘诀

2024-07-09 浏览次数:0

前端开发是干什么的?什么是前端开发和后端开发

2024-07-09 浏览次数:0

“互联网+”时代你准备好了吗

2024-07-09 浏览次数:0

学java可以从事什么工作?入行之前一定要考虑清...

2024-07-09 浏览次数:0
最新资讯
汇智知了堂考试认证 | 太棒了...   国家信息安全水平考试(NISP一级)  2024年3月考试成绩发布  通过的学员由中国信息安全测...
网络安全培训五个月能找到工作吗...   在这个数字化时代,网络安全成为了企业和个人都不可忽视的重要议题。随着网络攻击手段的日益复杂化,对...
现在从事Java开发的发展前景...   电脑的诞生和广泛应用,促进了IT领域的发展,但是21世纪的计算机早已不再是进入INTERNET的...
培训出来的前端能达到什么水平?...   前端作为IT行业的一大热门岗位,参加学习前端培训的人不在少数,很多人再报名前都关心一个问题,培训...
参加4个月网络安全培训能找到工...   转眼,又到年底了,不少打工人又有了跳槽或转行的躁动,毕竟大家都期望有一个更好的未来。数字化时代,...
java培训完找不到工作怎么班...   参加Java培训是很多转行Java的首选,但是有很多人都会有现象,Java培训完找不到工作,怎么...
网络安全毕业后从事什么工作?网...   随着互联网的普及和信息技术的迅猛发展,网络安全问题日益凸显,网络安全专业人才的需求也日益增长。那...
鸿蒙开发,市场需求到底有多大...   在当今科技飞速发展的时代,鸿蒙系统的出现无疑是一颗璀璨的新星。然而,鸿蒙开发的市场需求到底有多大...