仓酷云

标题: ASP编程:木马客户端与服务端通信是怎样埋没的 [打印本页]

作者: 变相怪杰    时间: 2015-1-16 22:26
标题: ASP编程:木马客户端与服务端通信是怎样埋没的
减少客户内IT专业人才缺乏带来的影响。ASP的客户员工利用浏览器进入相关的应用软件,简单易用,无需专业技术支持。 一个乐成的木马必需完成一种既牢靠,又不容易被宿主发明的通信计划,上面在我所知的局限内对各类计划的完成办法,牢靠性,平安性做一些切磋。文中毛病的地方必定良多,接待人人指出,更但愿能有木马开辟履历的妙手写一些这方面的文章,能让不论是黑客,仍是一般用户,都失掉必定的进步。至于甚么告诫的我也未几说了,归正看了文章你往做好事与我是毫有关系的。上面进进正题。

起首应当明白的是受益者的呆板上运转的木马程序我们称之为服务端,把持者呆板上运转的我们称之为客户端(实在关于古代的木马,已很难说谁是客户,谁是服务了,不外我们仍是持续用这类叫法)。别的固然Windows9x仍旧有伟大的用户基本,可是Windows9x向WindowsXP迁移只是日夕成绩,以是这里的会商次要是针对NT/2000/XP平台的。

1.利用TCP协定,服务端侦听,客户端毗连。这是最复杂,最早,最普遍利用的一种通信计划。利用过冰河大概被冰河客户端扫过的对此必定不会生疏。这类通信计划是服务端在宿主呆板上开一个TCP端口,然后守候客户真个毗连,在经由过程对客户真个认证后,客户端就能够把持服务端了。因为是创建在TCP协定基本上,以是通信的牢靠性是失掉包管的。可是通信的平安性却很成成绩。起首,利用像fport,tcpviewpro如许的工具能够很简单的发明在某一端口上侦听的历程,和历程对应的可实行文件。其次,在安装了防火墙的呆板上,当客户端毗连到服务端时,很简单引发防火墙报警。

2.利用TCP协定,客户端侦听,服务端毗连。这就是所谓的反向毗连手艺了。为了克制服务端在某一端口上侦听易被发明这一弱点,如今服务端不再侦听端口,而是往毗连客户端在侦听的某一端口。如许用一样平常的portscanner大概fport就很发明不了服务端了。而为了更好的麻木宿主机,客户端侦听的端口通常为21,80,23这类任何人都要会见的端口。固然在安装了防火墙的呆板上,服务端往毗连客户端仍是要引发防火墙报警,可是一个大意的用户极可能会疏忽“使用程序xxxxx试图会见xxx.xxx.xxx.xxx经由过程端口80”如许的告诫。

这类反向毗连手艺要办理的一个成绩是,服务端怎样找到客户端。因为一样平常客户端都是拨号上彀的,没有一个流动的IP,以是客户端IP不成能硬编码在服务端程序中。固然因为拨号上彀用户的IP一样平常都是处于一个流动的IP地点局限内,服务端也能够扫描这个局限,然后依据被扫描主机的反应来断定是不是是本人的客户端,可是服务端扫描一个IP地点局限也太……另外一个办法是客户端经由过程一个有流动IP大概流动域名的第三方公布本人的IP,完成的办法就良多了,好比经由过程一个大众的邮箱,经由过程一个团体主页,就看你有多年夜的设想力的。

3.利用UDP协定,服务端侦听,客户端毗连;客户端侦听,服务端毗连。办法和平安性与利用TCP协定差未几。必要注重的是UDP不是一个牢靠的协定,以是,必需在UDP协定的基本上计划一个本人的牢靠的报文传送协定。

4.办理防火墙成绩,不管是服务端主动侦听,仍是服务端自动毗连,在服务端和客户端试图创建毗连时城市引发防火墙得报警。究竟大意得用户不会良多,以是,办理防火墙报警是服务端必需要办理的一个成绩。一种办法是代码注进,服务端将本人注进到一个能够正当的与外界举行收集通信的历程(好比IE,ICQ,OICQ,TELNTED,FTPD,IIS等)的地点空间中,然后大概能够以一个新线程的情势运转,大概只是修正宿主历程,截获宿主历程的收集体系挪用(WinSock)。后者的完成大概要贫苦一些。假如是以新线程的情势运转,那末然后大概能够主动侦听,大概能够自动毗连。

不管哪一种情形都不会引发防火墙的报警(固然不是百分之百不会引发防火墙报警)。但要注重的是假如是主动侦听的话,好比寄生在IE内,用fport会发明IE在某一个端口侦听,这有大概会引发仔细的用户的警悟。以是对照好得办法是在新线程内往自动毗连客户端,并且连的是客户真个80端口;假如是寄生在OICQ内,何不毗连客户真个8000端口。利用代码注进必要服务端具有多少特权,思索到一样平常用户都是以Admin身份启动NT的,这应当不是一个成绩(假如服务端是作为一个service启动的话,就更没成绩了)。

5.再会商一下服务端自动毗连时客户端IP的发布成绩。

利用第三方发布客户端IP不是一种牢靠的办法。好比假如是经由过程一个团体主页公布客户端IP的话,一旦因为各种缘故原由,这个团体主页被主页供应商作废的话,服务端就找不到客户端了。而这类团体主页被主页供应商作废的大概性是很年夜的。同时客户端也要冒表露本人的IP的风险。以是更好的办法是客户端经由过程某种办法自动告知服务端本人的IP和端口,然后服务端来毗连。如许能够包管最年夜的牢靠性,平安性和天真性。

服务端怎样收到客户真个关照呢?一种办法是我们截获其他历程收到的TCP数据大概UDP包,然后剖析截获的数据,从中断定是不是客户端发来了一个呈报其IP的数据片段。另外一种办法是利用RAWsocket来收听ECHOREPLY范例的ICMP包,在ICMP数据包的数据往就包括了客户端IP。而关于一般用户来讲,因为要上彀扫瞄,如许的ICMP包是很少过滤失落的。

6.用ICMP来通信。

既然客户端能够经由过程发一个ICMP(ECHOREPLY)来告知服务端它的IP,那为何不把一切服务端和客户真个通信都创建在ICMP的基本上呢?服务端向客户端发ICMP(ECHOREQUEST),客户端向服务端发ICMP(ECHOREPLY),然后能够在ICMP基本上创建一个本人的牢靠数据报通信协定。假如不怕烦的话,还能够创建一个TCPoverICMP。因为一样平常的用户这两类ICMP包都是设为无告诫放行的,这类办法的秘密性仍是很强的。

7.用自界说的协定来通信。

我们晓得IP头的协定字段指定了这个IP包承载得数据的协定,好比TCP,UDP,ICMP等等。我们完整能够把这个字段设为我们本人界说的值(>80),界说本人的通信协定。不外估量这类IP包将会被一切的防火墙过滤失落。

8.关于服务器上的木马的通信埋没。

后面所说都是针对团体用户(年夜部分都是拨号用户,包含Modem,ISDN,ADSL,FTTX+LA,CableModem)。对这类呆板来讲,一样平常都没有开甚么服务,并且一样平常都利用了团体防火墙,同时ICMPECHOREPLY/REQUEST都是放行的,一切才有我们上述的各类计划。而关于服务器来讲,最少要开HTTP服务,同时,又一样平常位于专门的防火墙以后。这个专门的防火墙极可能过滤失落除范例为TCP,且目标端口为80的IP包以外的一切的IP包,更不要说各种ICMP包了。向下的计划通不外,我们能够尝尝向上的计划。一种办法就是打针到IIS服务的历程空间中,然后在IIS承受到木马客户真个哀求前来个预处置,在IIS将数据发给木马客户端时来个后处置,不外我不晓得怎样完成,不知哪为妙手晓得。

另外一种办法就是写一个ISAPIAP,如许,木马客户端发个http://xxx.xxx.xxx.xxx/backdoor.dll?cmd=dir+c:哀求来发命令了。固然,统统信息都是加密得。RPC除RPCoverSMB,RPCoverTCP等等外,另有一个RPCoverHTTP,现实上QQ的http代办署理就是他本人界说的一个rpcoverhttp,最少QQ本人是这么叫的。如今,我们也来了个rpcoverhttp。

通信埋没手艺只是木马埋没诸手艺中得一部分,但也是最主要的一部分。由于他不仅要回护木马,还要回护木马得把持者,以是不论是木马编写者,仍是防火墙编写者,都应当对这一部分给于充足的器重。



由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。
作者: 若天明    时间: 2015-1-19 12:32
掌握asp的特性而且一定要知道为什么。
作者: 金色的骷髅    时间: 2015-1-24 19:16
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
作者: 小魔女    时间: 2015-2-2 12:43
作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。
作者: 莫相离    时间: 2015-2-7 20:01
Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
作者: 灵魂腐蚀    时间: 2015-2-23 09:34
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
作者: 愤怒的大鸟    时间: 2015-3-7 07:06
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。
作者: 仓酷云    时间: 2015-3-14 15:21
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
作者: 柔情似水    时间: 2015-3-21 11:19
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2