1. 【网警提醒】基础网络攻防之webshell攻击
什么是webshell?有什么危害?
webshell 就是一种可以在web服务器上执行的后台脚本或者命令执行环境。
黑客通过入侵网站上传webshell后获得服务器的执行操作权限,比如执行系统命令、窃取用户数据、删除web页面、修改主页等,其危害不言而喻。
Webshell攻击的特点有哪些?
1
持续远程访问
入侵者可以利用 webshell 从而达到长期控制网站服务器的目的。若攻击者自行修复了漏洞,以确保没有其他人会利用该漏洞,攻击者可以低调的随时控制服务器。一些流行的 webshell 使用密码验证和其他技术来确保只有上传 webshell 的攻击者才能访问它。
2
权限提升
在服务器没有配置错误的情况下, webshell 将在web服务器的用户权限下运行,该用户权限是有限的。通过使用 webshell ,攻击者可以尝试通过利用系统上的本地漏洞来执行权限提升,常见的有查找敏感配置文件、通过内核漏洞提权、利用低权限用户目录下可被Root权限用户调用的脚本提权、任务计划等。
3
极强的隐蔽性
有些恶意网页脚本可以嵌套在正常网页中运行,且不容易被查杀。webshell还可以穿越服务器防火墙,由于与被控制的服务器或远程主机交互的数据都是通过80端口传递,因此不会被防火墙拦截,在没有记录流量的情况下, webshell 使用post包发送,也不会被记录在系统日志中,只会在web日志中记录一些数据提交的记录。
获取webshell的常见方法
1
直接上传获得webshell
因过滤上传文件不严,导致用户可以直接上传 webshell 到网站任意可写目录中,从而拿到网站的管理员控制权限。
2
添加修改上传类型
现在很多脚本程序上传模块不是只允许上传合法文件类型,大多数的系统是允许添加上传类型。
3
利用后台管理功能写入webshell
进入后台后还可以通过修改相关文件来写入webshell。
4
利用后台数据库备份及恢复获得
主要是利用后台对access数据库的“备份数据库”或“恢复数据库”功能,“备份的数据库路径”等变量没有过滤导致可以把任意文件后缀改为asp,从而得到webshell。
5
php+mysql系统
后台需要有mysql数据查询功能,入侵者就可以利用它执行SELECT ... in TO OUTFILE查询输出php文件,因为所有的数据是存放在mysql里的,所以我们可以通过正常手段把我们的WebShell代码插入mysql在利用SELECT ... in TO OUTFILE语句导出shell。
webshell网站后门的清除方法
后门的文件可以直接删除,找到后门文件,直接删除即可;
不能直接删除后门文件,只能删除文件内容中的木马代码进行清除。
1、文件名为index.asp 、index.php,这类为自动生成SEO类型文件,可以直接删除,如要彻底清除后门,需找生成此文件的源文件。
2、文件内容只有一行,或很少量的代码,此类被称为“一句话后门”。
3、文件内容中存在password或UserPass关键字。
4、另外一些在上传组件目录或上传目录的文件可以直接删除。如eWebEditor、Editor、FCKeditor、webeditor、UploadFiles、uploads等。
1、网站自身文件被插入恶意代码
2、网站配置文件
这类插入网站自身代码中的后门清除方法:
首先备份此文件以备改错可恢复,查找到后门代码的位置,一般通过查找“eval、execute、request、ExecuteGlobal”关键字进行定位。把确定为后门的代码删除后保存文件。访问网站看是否报错,以确认有没有改错。
网站如何防御webshell攻击?
从根本上解决动态网页脚本的安全问题,要做到防注入、防暴库、防COOKIES欺骗、防跨站攻击等等,务必配置好服务器FSO权限。
1、建议用户通过ftp来上传、维护网页,尽量不安装上传程序。
2、对上传程序的调用一定要进行身份认证,并只允许信任的人使用上传程序。
3、程序管理员的用户名和密码要有一定复杂性,不能过于简单,还要注意定期更换。
4、到正规网站下载程序,要对数据库名称和存放路径进行修改,数据库名称要有一定复杂性。
5、尽量保持程序是最新版本。
6、不要在网页上加注后台管理程序登陆页面的链接。
7、为防止程序有未知漏洞,可以在维护后删除后台管理程序的登陆页面,下次维护时再上传。
8、时常备份数据库等重要文件。
9、日常多维护,并注意空间中是否有来历不明的asp文件。
10、尽量关闭网站搜索功能,利用外部搜索工具,以防爆出数据。
11、利用白名单上传文件,不在白名单内的一律禁止上传,上传目录权限遵循最小权限原则。
2. 悬镜中的webshell是如何使用的
WebShell是一种常见的网页后门,它常常被攻击者用来获取Web服务器的操作权限。攻击者在进行网站入侵时,通常会将WebShell文件与Web目录下的长长网页文件放置在一起,然后通过浏览器访问WebShell文件,从而获取命令执行环境,最终达到控制网站服务器的目的。
当网站服务器被控制后,就可以在其上任意查看数据库、上传下载文件以及执行任意程序命令等。WebShell与正常网页具有相同的运行环境和服务端口,它与远程主机通过WWW(80)端口进行数据交换的,一次能够很容易地避开杀毒软件的检测和穿透防火墙。
总体,悬镜服务器卫士中WebShell的作用,一方面,WebShell常常被站长用于网站管理、服务器管理等等,根据FSO权限的不同,作用有在线编辑网页脚本、上传下载文件、查看数据库、执行任意程序命令等。另一方面,被入侵者利用,从而达到控制网站服务器的目的。
这些网页脚本常称为Web脚本木马,目前比较流行的ASP或PHP木马,也有基于.NET的脚本木马。悬镜服务器卫士中系统应用防护中WebShell检测,所要应对的就是后者。
悬镜服务器卫士WebShell有以下5种攻击方式:
1)首先通过系统前台上传WebShell脚本到网站服务器,此时,网站服务器会向客户端返回上传文件的整体URL信息;然后通过URL对这个脚本进行访问,使其可以执行;最终导致攻击者能够在网站的任意目录中上传悬镜服务器卫士WebShell,从而获取管理员权限。
2)攻击者利用管理员密码登录进入后台系统,并借助后台管理工具向配置文件写入悬镜服务器卫士WebShell,允许任意脚本文件上传。
3)通过数据库的备份和恢复功能和获取WebShell。在数据库备份时,可以将备份文件的扩展名更改为.asp类型。
4)系统中其他站点遭受攻击,或者搭载在Web服务器上的Ftp服务器遭受攻击后,被注入了WebShell,这些都会导致整个网站系统被感染。
5) 攻击者利用Web服务器漏洞直接对其进行攻击,从而获得控制权限。
WebShell的感染过程描述:
1)攻击者首先通过SQL注入、跨站脚本攻击等方式得到上传权限,然后将WebShell上传至服务器。
2)通过WebShell完成对服务器的控制,实现植入僵尸木马、篡改网页以及获取敏感信息等恶意功能。
3)植入攻击木马,使其作为攻击“肉鸡”对整个网站进行感染。
3.4.1.5Linux下WebShell攻击
WebShell反弹命令行Shell的方式在Linux从操作系统下Web服务器入侵提权过程中得到了广泛应用。在Linux下,WebShell可以执行命令,然后溢出却必须在交互环境中进行,否则即使提权成功,也不能获得完美利用。
因此,为了完成WebShell攻击,只需反弹一个Shell命令行窗口,在命令行终端下执行溢出并进行提权。
多数Linux操作系统下的PHP WebShell都通过反弹连接功能获得一个继承当前WebShell权限的Shell命令行窗口。在使用反弹连接功能前,需要首先使用NC工具对一个未使用的端口进行监听,然后选择反弹连接方式。
3.4.1.6 WebShell检测
对于WebShell的检测,北京安普诺网络安全团队通过自主研发,设计出一种综合多种检测方法的综合检测方案。
特征检测系统中核心是特征提取,选取特征的好坏直接关系到检测结果的优劣。因此,在进行特征选取时,首先应对Web页面本身进行充分考虑,使得选取的特征能够很好地表现出静态页面。其次,选取的特征还应该具有动态特点,可以体现出页面所进行的操作。
如果提取网页的全部特征进行处理,则无法检测变形的WebShell,也会因为特征过多而对效率产生影响。如果检测特征过少,则有可能产生误报。通过将多个WebShell库综合在一起,同时,又加入公司积累的特征码,综合构建了一个非常强大的WebShell特征库,这个特征库构成了WebShell检测的依据。
通过对文件进行特征库匹配、文件base64编码后特征库匹配、可疑特征码匹配等多种手段进行扫描,从而保证扫描准确性并且降低误报率。
扫描后,可以具体的提供WebShell的名称、类型等详细信息,以供用户参考。并且针对反馈,用户还可以有选择的执行“清理”、“添加信任”等功能,以此实现对WebShell的检测、发现、处理等操作。
特征检测是比较常见的WebShell检测方法,base64编码后特征匹配相对于普通特征码检测的优势在于匹配的准确性更高误报率更低。
但是特征检测的局限性还是存在的,就是同时降低误报率和漏报率是很难实现的,所以还需要别的手段对文件进行综合的检测。
为此悬镜服务器卫士中有Delttime(文件创建时间间隔),Fnum(文件数量阈值)的概念。以特征属性、Delttime属性、Fnum属性作为Webshell动态检测算法的主要3个输入参数,根据不同参数对检测结果的影响大小来决定其在算法中的权重。
实践证明该算法检测效率相对传统特征值检测大幅降低检测误报率,有一定的可行性。目前悬镜服务器卫士正在申请国家发明专利。与此同时,为了方便用户使用,软件给用户提供“快速扫描”、“自定义扫描”功能。
具体效果,大家可以通过下载使用悬镜服务器卫士就知道了。谢谢。希望这个能帮到你。
3. 什么叫webshell ,什么叫注入,什么叫旁注,还有一些常用工具的功能,比如nc,sc等等
webshell,我们常常称其为匿名的用户,ws是通过网络中的各种网站的端口进行突破的,继而对其服务器进行一定权限的设置等。
注入:是注入一个可以进行的网址...通常用于连接公司、学校或办公的数据库的!
旁注则是可以在主机上建一个虚拟站点然后进行进行渗透,得到所要得到一个重要关节webshell,再开放的程序及一些非安全设置进行的跨站式入侵方法,然后就可以侵入其服务器啦。呵呵
NC:全名Network Computer,是基于网络计算环境的一种计算设备,可以实现Internet功能,通过网络进行信息查询和信息处理。
SC:是一套XP系统中功能强大的DOS命令,能与“服务控制器”和已安装设备进行通讯。
SC命令的功能有
1、可以检索和设置有关服务的控制信息,可以测试和调试服务程序。
2、可以设置存储在注册表中的服务属性,以控制如何在启动时启动服务应用程序,以及如何将其作为后台程序运行。即更改服务的启动状态。
3、可以用来删除系统中的无用的服务
4、其参数可以配置指定的服务,检索当前服务的状态,也可以停止和启动服务
5、可以创建批处理文件来调用不同的SC命令,以自动启动或关闭服务序列。
4. WEBSHELL是什么
webshell常常被称为匿名用户(入侵者)通过WEB服务端口对WEB服务器有某种程度上操作的权限,由于其大多是以网页脚本的形式出现,也有人称之为网站后门工具。
一方面,webshell被站长常常用于网站管理、服务器管理等等,根据FSO权限的不同,作用有在线编辑网页脚本、上传下载文件、查看数据库、执行任意程序命令等。
另一方面,被入侵者利用,从而达到控制网站服务器的目的。这些网页脚本常称为WEB
脚本木马,目前比较流行的asp或php木马,也有基于.NET的脚本木马。
有些恶意网页脚本可以嵌套在正常网页中运行,且不容易被查杀。
webshell可以穿越服务器防火墙,由于与被控制的服务器或远程主机交换的数据都是通过80端口传递的,因此不会被防火墙拦截。并且使用webshell一般不会在系统日志中留下记录,只会在网站的web日志中留下一些数据提交记录,没有经验的管理员是很难看出入侵痕迹的。