webshell的定义
顾名思义,"web" ——需要服务器开放web服务,"shell"——取得对服务器某种程度上操作权限。
简单地说, WebShell就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门。webshell就是一个asp或php木马后门,黑客在入侵了一个网站后,常常在将这些 asp或php木马后门文件放置在网站服务器的web目录中,与正常的网页文件混在一起。然后黑客就可以用web的方式,通过asp或php木马后门控制网站服务器,包括上传下载文件、查看数据库、执行任意程序命令等。由于其大多是以网页脚本的形式出现,也有人称之为网站后门工具。
webshell的作用
一方面,webshell被站长常常用于网站管理、服务器管理等等。
另一方面,被入侵者利用,从而达到控制网站服务器的目的。这些网页脚本常称为WEB脚本木马。
webshell具有隐蔽性,有些恶意网页脚本可以嵌套在正常网页中运行,且不容易被查杀。webshell 最大的优点就是可以穿越防火墙,由于与被控制的服务器或远程主机交换的数据都是通过80端口传递的,因此不会被防火墙拦截。并且使用webshell一般不会在系统日志中留下记录,只会在网站的web日志中留下一些数据提交记录,没有经验的管理员是很难看出入侵痕迹的。
webshell的分类与特点
(总结自i春秋网络安全学院)
- 大马:1.体积大,包含很多功能;2.通常会调用系统的关键函数;3.通常以代码加密进行隐藏。
- 小马:体积小,只包含文件上传功能。
- 一句话木马:1.代码极短,通常只有一行代码;2.可以单独作为一个文件,也可以插入其他正常文件中;3.变形多,难以查杀;4.基本框架不变:数据执行(数据传递)。
防范webshell
(转载自百度百科)
从根本上解决动态网页脚本的安全问题,要做到防注入、防爆库、防COOKIES欺骗、防跨站攻击(xss)等等,务必配置好服务器FSO权限。最小的权限=最大的安全。防范webshell的最有效方法就是:可写目录不给执行权限,有执行权限的目录不给写权限。防范方法:
- 建议用户通过ftp来上传、维护网页,尽量不安装asp的上传程序。
- 对asp上传程序的调用一定要进行身份认证,并只允许信任的人使用上传程序。
- asp程序管理员的用户名和密码要有一定复杂性,不能过于简单,还要注意定期更换。
- 到正规网站下载程序,下载后要对数据库名称和存放路径进行修改,数据库名称要有一定复杂性。
- 要尽量保持程序是最新版本。
- 不要在网页上加注后台管理程序登陆页面的链接。
- 为防止程序有未知漏洞,可以在维护后删除后台管理程序的登陆页面,下次维护时再通过上传即可。
- 要时常备份数据库等重要文件。
- 日常要多维护,并注意空间中是否有来历不明的asp文件。
- 尽量关闭网站搜索功能,利用外部搜索工具,以防爆出数据。
- 利用白名单上传文件,不在白名单内的一律禁止上传,上传目录权限遵循最小权限原则。