XXXXXXXXXXX
题 目特洛伊木马程序的设计与实现
学生姓名
指导教师
学 院 信息科学与工程学院
专业班级
完成时间 2010年5月28日
摘 要
随着计算机网络技术的飞速发展黑客技术也不断更新它对网络安全构成了极大的威胁。特洛伊木马作为黑客工具中重要的一员其技术日新月异破坏力之大是绝不容忽视的。因此对木马技术的研究刻不容缓。
本文首先介绍了木马的基本概念包括木马的结构、行为特征、功能、分类以及木马的发展现状和发展趋势。然后详细介绍了木马的工作原理和木马系统的关键技术。木马的关键技术包括木马的伪装方式、木马程序的隐藏技术、木马的自启动以及木马的通信技术等。另外本文研究了远程控制技术包括TCP/IP协议的介绍、 Socket通信技术和客户端/服务器模型C/S 。
本文在研究木马技术的基础上设计了一款远程控制木马。该木马程序能够通过客户端对远程主机进行控制和监视服务端可以自动连接客户端。另外该木马程序还包括远程文件操作文件复制、拷贝、删除、下载、上传等 远程系统控制关机、重启鼠标、屏幕锁定启动项管理 网络连接控制远程进程管理和文件传输等功能。最后本文实现了这一款木马程序并对其进行了测试。测试结果显示该木马程序实现了所有的功能能够对远程主机进行控制。
关键词 木马 Socket远程控制
ABSTRACT
With the rapid development of network, the dependence between our society,computer system and information network becomes bigger and bigger.The safety of theinternet is especially important.The hackers create a great network security threats,and thecurrently most available mean of invasion are the Trojan technology.Therefore, thistechnique has been studied for the Trojan technology.
This paper introduces the basic concepts of Trojans, including structure, behaviorcharacteristics,function,classification and Trojans situation and development trend.Then, italso introduces the details of the Trojan works and Trojan key technology.Key technologiesinclude Trojan disguised wacommunication technology. In addition, this paper also studies about the remote controltechnology, including TCP/IP protocol description,Socket communication technology andclient/server model (C/S).
There is a remote control Trojan based on this paper which is studying the Trojantechnology.This Trojan horse can control and watch the distance host through the client,and the server can connect with the client automatically. In addition, the Trojan programalso includes a remote file operations (file copy, copy, delete, download, upload, etc.),remote system control (shutdownnetwork connection control, remote process management, file transfer and other functions.Finally, this paper realizes this Trojan horse program,and tests it.Test results show that theTrojan horse program achieves all the functions and it can control the remote host.
KEY WORDS Trojan,Socket,Remote control精品
目录
摘 要I
ABSTRACT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .II
第一章绪论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1.1木马的研究背景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1.2木马发展的现状. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
1.3论文研究的意义和目的. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
1.4论文的研究内容. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
1.5论文章节安排. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
第二章木马技术基础. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
2.1木马系统结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
2.2木马的基本特征. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
2.3木马的功能. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
2.4木马的分类. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
2.5木马的发展趋势. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
第三章木马工作原理及关键技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
3.1木马的伪装. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
3.2木马的隐藏. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
3.3木马常见的启动方式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
3.4远程控制技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
3.4.1IP协议. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
3.4.2 TCP协议. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
3.4.3套接字(Sockets)技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
3.5木马的通信. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
3.5.1端口复用技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
3.5.2反弹端口. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
3.5.3潜伏技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
3.6客户机/服务器模型. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
第四章远程控制木马的设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
4.1功能分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
4.2系统总体设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
4.2.1使用环境和拓扑结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
4.2.2系统的逻辑模型. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
4.2.3设计思路. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
4.3系统实现的关键技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
4.3.1 DLL模块化技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
4.3.2钩子技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38
4.3.3远程线程插入技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
4.3.4隐蔽通信技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
4.4系统的开发工具. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
第五章远程控制木马的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
5.1服务端程序的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
5.1.1服务端的自启动. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
5.1.2通信模块的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50
5.1.3服务端管理模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
5.2客户端的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
5.2.1远程文件控制. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
5.2.2系统控制. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
5.2.3文件传输. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60
第六章结束语. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .62
参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63
致 谢. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65
第一章 绪论
1.1木马的研究背景
随着网络的快速发展 Internet深入到社会的每个角落人们充分享受到了其给工作和生活带来的巨大便利人类社会对计算机系统和信息网络的依赖性也越来越大。工业和信息化部统计数据显示 2009年中国网民规模已达3.84亿预计2010中国网民规模突破4亿[1]。 由于计算机系统和信息网络系统本身固有的脆弱性 网络入侵工具(如蠕虫、木马等)不断涌现社会、企业和个人也因此蒙受了越来越大的损失。木马由于它的隐蔽性、远程可植入性和可控制性等技术特点已成为黑客攻击或不法分子入侵网络的重要工具 目前不断发生的互联网安全事故中大部分都有木马的身影。
2010年1月国内最知名的信息网络安全厂商金山安全正式发布《2009年中国电脑病毒疫情及互联网安全报告》。报告显示 2009年金山毒霸共截获新增病毒和木马20684223个与5年前新增病毒数量相比增长了近400倍。在新增病毒中木马仍然首当其冲新增数量多达15223588个 占所有病毒重量的73.6%。全国共有76409010台约7600万台计算机感染病毒与08年的感染量相比增加了13.8%[2]。
计算机病毒猖獗的背后是巨大的经济利益。据中国国家计算机网络应急处理中心估计 目前木马黑色产业链的年产值己超过2.38亿元人民币造成的损失则超过76亿元。木马经济产业化的一个重要表现就是制造木马、传播木马、盗窃账户信息、销赃、洗钱分工明确形成了一个非常完善的流水性作业程序这个流水作业程序就是一条黑色产业链[3]。
木马程序使得远程的黑客能够享有系统的控制权。 “知己知彼百战不殆”如果想找出防御木马攻击的有效途径就必须认真地研究木马攻击的技术。在研究木马攻防的过程中如果能够理清木马攻击手段的发展脉络就有可能进一步找出木马发展的趋势并提早思考应对策略。
1.2木马发展的现状
自从世界上出现第一个木马程序1986年的P C-Wri t e木马到今天木马的发展已经历了五代[4] [5]
第一代木马出现在网络发展的早期是以窃取网络密码为主要任务即简单的密码窃取、发送等在隐藏和通信方面均无特别之处。
第二代木马在技术上有很大的进步使用标准的C/S架构提供远程文件管理、屏幕监视等功能。但是由于植入木马的服务端程序会打开连接端口等候客户端连接比较容易被发现。如 “冰河”、 “Qmi ti s”。
第三代木马在功能上与第二代木马没有太大差异它的改变主要在网络连接方式上它的特征是不打开连接端口进行侦听而是使用I CMP通信协议进行通信或使用反向连接技术让服务器端主动连接客户端以突破防火墙的拦截。在数据传递技术上也做了不小的改进出现了I CMP等类型的木马利用畸形报文传递数据增加了查杀的难度。如 网络神偷、 Peep201等。
第四代木马在进程隐藏方面做了大改动采用了内核插入式的嵌入方式利用远程插入线程技术嵌入DLL线程或者挂接PSAPI[6] 实现木马的隐藏。前三代木马大多都有独立的木马 因此用户可以根据启动项目中的描述内容很快找到木马并删除它。但是第四代木马选择注册表的方式伪装成DLL文件形式加载
青云互联怎么样?青云互联是一家成立于2020年6月份的主机服务商,致力于为用户提供高性价比稳定快速的主机托管服务,目前提供有美国免费主机、香港主机、香港服务器、美国云服务器,让您的网站高速、稳定运行。目前,美国洛杉矶cn2弹性云限时七折,美国cera机房三网CN2gia回程 13.3元/月起,可选Windows/可自定义配置。点击进入:青云互联官网青云互联优惠码:七折优惠码:dVRKp2tP (续...
前几天还在和做外贸业务的网友聊着有哪些欧洲机房的云服务器、VPS商家值得选择的。其中介绍他选择的还是我们熟悉的Vultr VPS服务商,拥有比较多达到17个数据中心,这不今天在登录VULTR商家的时候看到消息又新增一个新的机房。这算是第18个数据中心,也是欧洲VPS主机,地区是瑞典斯德哥尔摩。如果我们有需要欧洲机房的朋友现在就可以看到开通的机房中有可以选择瑞典机房。目前欧洲已经有五个机房可以选择,...
香港云服务器最便宜价格是多少钱一个月/一年?无论香港云服务器推出什么类型的配置和活动,价格都会一直吸引我们,那么就来说说香港最便宜的云服务器类型和香港最低的云服务器价格吧。香港云服务器最便宜最低价的价格是多少?香港云服务器只是服务器中最受欢迎的产品。香港云服务器有多种配置类型,如1核1G、2核2G、2核4G、8到16核32G等。这些配置可以满足大多数用户的需求,无论是电商站、视频还是游戏、小说等。...