一 : 黑客是怎样攻击服务器的
文:Saumil Udayan Shah
译:杨宴雷
Web服务器将成为下一代黑客施展妖术的对象。在很大程度上,进行这种攻
击只需一个Web浏览器和一个创造性的头脑。以前,黑客的攻击对象集中在操作系统
和网络协议上,但随着这些攻击目标的弱点和漏洞逐渐得到修补,要进行这类攻击
已经变得非常困难。操作系统正在变得更加稳健,对攻击的抵抗能力日益提高。随
着身份验证和加密功能渐渐被内置到网络协议中,网络协议也变得更加安全。此外,
防火墙也越来越智能,成为网络和系统的外部保护屏障。 另一方面,电子商务
技术正在日益普及开来,其复杂性有增无减。基于Web的应用程序正在与基本的操作
系统和后端数据库更加紧密地集成在一起。遗憾的是,人们在基于Web的基础设施安
全性方面所做的工作还很不够。Web服务器和Web应用程序中的弱点被发现的速度为
何这么快呢?
有很多因素促成了这种Web黑客活动的快速增加。其中最主要的原因是防火
墙允许所有的Web通信都可以进出网络,而防火墙无法防止对Web服务器程序及其组
件或Web应用程序的攻击。第二个原因是,Web服务器和基于Web的应用程序有时是在
\"功能第一,安全其次\"的思想指导下开发出来的。
当您的Web服务器面临巨大威胁时,怎样保障它们的安全呢?这就需要您不
断了解新信息,新情况,每天跟踪您所用服务器的有关网站,阅读相关新闻并向它
进行咨询。为了让你着手这方面的工作,下面介绍黑客对NT系统的四种常用攻击手
段,同时介绍如何防止这类攻击。
Microsoft IIS ism.dll缓冲区溢出
受影响的服务器:运行IIS 4.0并带有\"Service Pack 3/4/5\"的Windows NT服
务器
Microsoft IIS缓冲区溢出这一安全弱点是Web服务器无时不有的重大缺陷
之一。该弱点被称为IIS eEye,这个名称来自发现此问题的一个小组。在实施缓冲
区溢出攻击时,黑客向目标程序或服务输入超出程序处理能力的数据,导致程序突
然终止。另外,还可以通过设置,在执行中的程序终止运行前,用输入的内容来覆
盖此程序的某些部分,这样就可以在服务器的安全权限环境下执行任意黑客命令。
eEye发现,IIS用来解释HTR文件的解释程序是ism.dll,它对缓冲区溢出攻
击的抵抗力十分脆弱。如果攻击者将一个以.htr结尾的超长文件名(大约3,000个字
符,或更多)传递给IIS,那么输入值将在ism.dll中造成输入缓冲区溢出,并导致
IIS崩溃。如果攻击者输入的不是一串字母而是可执行代码(通常称为\"鸡蛋\"或\
"外壳代码\"),那么在IIS终止之前
将执行该代码。由eEye小组发现的这一攻击方
法包括三个步骤:
1.创建一个用于侦听任意TCP端口上连接活动的程序。一旦接收到连接信号,
该程序将执行一个Windows命令外壳程序(cmd.exe),并将该外壳与连接绑定在一起。
这个程序是经过修改的Netcat。Netcat是一个流行的网络连接实用程序,其源代码
可以免费获得。 2.在IIS的ism.dll中制造缓冲区溢出,并使IIS从外部Web站点
下载侦听程序(由步骤1产生)。 3.执行刚下载的程序(由步骤2产生),该程
序将等待传入的连接并使攻击者进入Windows命令外壳程序中。
由于缓冲区溢出导致IIS在崩溃之前转而运行Windows命令外壳,所以该外
壳程序将在IIS的安全权限背景下运行,而该安全权限背景等价于NT Administrato
r权限。这样,攻击者要做的只是与被攻击的IIS服务器的侦听端口建立连接,然后
等着出现c:>提示就万事大吉了。现在,攻击者拥有对整个NT服务器的管理权限,可
以做任何事,比如,添加新用户、修改服务器的内容、格式化驱动器,甚至将该服
务器用作攻击其它系统的踏脚石。
运行IIS 4.0并带有\"Service Pack 3/4/5\"的Windows NT服务器容易受到
此类攻击。Microsoft已经发布了对该弱点的修补程序。Windows NT Service Pack
6也已经修补了该问题。
Microsoft IIS MDAC RDS安全弱点 受影响的服务器:运行IIS 4.0并安装了
MDAC 2.1或更早版本的Windows NT服务器
在发现IIS eEye安全弱点的大约一个月后,IIS 4.0的另一个弱点又暴露出
来。使用Microsoft数据访问组件(MDAC)和远程数据服务(RDS),攻击者可以建立非
法的ODBC连接,并获得对Web服务器上的内部文件的访问权。如果安装了Microsoft
Jet
OLE DB提供程序或Datashape提供程序,攻击者可以使用Visual Basic for Ap
plications shell()函数发出能够在服务器上执行的命令。 在安装了MDAC 2.1
或更高版本的IIS 4.0上,从位于其公共目录中的msadcmsa-dcs.dll,可以找到MDA
C RDS弱点。Rain Forest Puppy在其站点中对该弱点进行了详细说明。该弱点利用
了IIS上MDAC默认安装时的不适当配置和安全机制的缺乏这一漏洞。在等价于NT Ad
ministrator的IIS Web服务器进程的安全权限背景下,进行这种攻击的黑客可以在
NT系统上远程执行任意命令。
MDAC的弱点不是由于技术造成的,而是由于用户对它的配置方式所致。很
多站点是通过NT Option Pack 4.0安装IIS 4.0的。如果NT Option Pack 4.0是以典
型或默认配置安装的,那么MDAC就容易遭到这种攻击。大多数使用默认安装的系统
管理员都没有具体调整过这些设置,从而使Web服务器的安全性大大降低。
Foundstone公司的George Kurtz、Purdue
大学的Nitesh Dhanjani和我曾经
共同设计了一个只有一行的命令字符串,该命令将利用MDAC RDS弱点,使远程NT系
统启动一个通过FTP或TFTP进行的文件传输过程。这个命令将告诉服务器到从某个外
部系统下载并执行Netcat。Netcat将运行Windows命令外壳程序,并建立一个返回攻
击者计算机的连接,这样,攻击者就获得了对远程NT系统的完全管理控制权。
Microsoft已经发布了相应的安全公告,并对使IIS 4.0免受该弱点攻击的保护措施
进行了说明。
Allaire ColdFusion 4.0弱点
受影响的服务器:运行在Windows NT上的Allaire ColdFusion Server 4.
0
作为还算容易使用的、功能强大的脚本语言,ColdFusion已经广泛流行起
来。但流行并不意味着安全。ColdFusion的问题不在于该服务器自身,而是在于它
附带的脚本。ColdFusion 4.0提供了示范应用程序和范例,它们可以在位于Web服务
器根目录中的cfdocsexampleapp和cfdocsexpeval目录中找到。当用户执行典型安装
时,将安装这些应用程序和脚本。ColdFusion所附带的部分范例经过修改后,将允
许非法访问服务器上所包含的敏感数据。这些弱点表明,基本的应用程序服务器可
以被编写得不好的应用程序脚本歪曲利用。
存在这种弱点的一个范例应用程序是cfdocsexampleappdocssourcewindow.
cfm。因为ColdFusion是作为具有Administrator权限的系统服务运行的,所以,该
程序可以被用来任意访问和查看NT Web服务器上的任何文件,包括boot.ini。用这
种方法可以检索任何文件。Packet Storm对该弱点做了完整解释。
而更严重的弱点存在于cfdocsexpevalopenfile.cfm、cfdocsexpevaldisp
layopenedfile.cfm和cfdocsexpevalexprcalc.cfm中。这三个文件可以用来查看服
务器上的任何文件,更为严重的是,它们还能将任意文件上载到服务器。对该弱点
如何发作的讨论超出了本文的范围,欲了解详细信息请访问L0pht Heavy Industri
es的咨询信息。表达式求值程序exprcalc.cfm用于让开发人员计算被上载文件中的
Cold-Fusion表达式的值。作为预防手段,该脚本在进行表达式计算时便会把被上载
的文件删除掉,但要避免删除却是件容易的事。这样,攻击者可以上载恶意文件,
并最终控制服务器。
这些就是ColdFusion的示范脚本中最严重的弱点。要防止出现问题,请从
任何运行中的服务器中删除ColdFusion示范脚本。Allaire的Security Zone提供了
补丁程序,并提供了如何保护ColdFusion服务器的进一步信息。
Sambar 4.3 hello.bat
受影响的服务器:运行在Windows NT上的Sambar 4.3 beta 7和更早版本
Sambar是提供给开发者的免费Web服务器。它提供了对CGI和WinCGI脚本、
ODBC脚本以及ISAPI的支持。它
甚至捆绑了Perl 5解释器。
Sambar 4.3 beta 7版和更早版本附带两个名为hello.bat和echo.bat的文
件,它们是将Windows批处理文件用作CGI脚本的范例。这两个脚本本身没有问题,
hello.bat显示字符串\"Hello World\",而echo.bat显示字符串\"Place Holder\"。
但当批处理文件被用作CGI脚本时,Web服务器将使用Windows命令外壳程序cmd.exe
来运行它们。这样,攻击者可以利用该弱点针对目标服务器运行任意命令。例如,
假如攻击者把URL http://target.site/cgi-bin/hello.bat?&dir+c:放在他或她的
浏览器中,那么,将在服务器上运行命令\"dir c:\",并在浏览器上显示结果。由
于Sambar是在NT Administrator安全权限下运行的,因此事情会变得更为复杂。这
样的权限等级可以让攻击者作为NT Administrator运行任意命令。
Windows命令外壳使用\"&”在相同命令行上分隔多个命令。如果用户将
“&”放在hello.bat的后面,并在其后添加一个命令,那么将在执行hello.bat后执
行第二个命令。
由于已经删除了文件hello.bat和echo.bat,Sambar 4.3 beta 8版和更高
版本没有该弱点。但是,由于Windows命令外壳程序解析命令行的方式无法改变,所
以并没有办法能真正修正该问题。如果您安装了4.3 beta 7版或更低版本,请一定
要删除hello.bat和echo.bat。
二 : G口发包服务器攻击效果分析
现在很多人用G口发包做DDoS攻击,G口真的有那么好吗?(解释下,G口也就是指G口带宽不限制发包的服务器)我们来简单的分析下。
先来说说发包效率的问题。拿一台G口的服务器和一台100M的服务器相同配置下。
标准SYN的数据包一般为64字节,每发一个包。大概有20个字节的间隙,大家想想看,如果在非标准的数据包。比如1M字节的包。发完了1M才有20字节的间隙,哪个效率高?肯定是发大包效率高嘛,但大包根本就是垃圾数据,基本上到不了对方墙上,就算到了。他一秒钟能处理上百万数据包。一下子就把你的DDoS攻击流量给干掉了,防火墙的性能是这样算的,是指单位时间能处理的包数,所以。只要你能发足够的包给防火墙。他处理不来。那这墙就死了,再所以。发包的服务器只有在单位时间里发尽量多的包。而不是发尽量大的包。怎么发尽量多的包。就是标准的64字节的数据包,一秒发12W个,而G口的网卡和操作系统架构限制了他一秒钟最多只能发30W包左右,百M的机器1秒最高可以发14W的包,这个时候2台百M的就相当于G口中的攻击力了。
上面所述的关键:发包服务器的系统架构、发包服务器的网卡吞吐量、防火墙的性能。
系统方面linux效率最优秀。但操作太麻烦,没玩过linux的话。那是相当麻烦,命令行太多了。网卡吞吐量:什么叫网卡吞吐量?就是指单位时间内成功地传送数据的数量。现在G口都有吞吐限制,小数据包达不到1/3线速。100M的虽然也有吞吐限制,但是在相同网卡吞吐量的情况下。G口能发20W包,百M可以发12万包。你选哪个?硬件抗DDoS防火墙:上面说过。防火墙的性能是指单位时间里能够处理的包数。而不是单位时间内能够处理的数据包大小,这里是很多人的一个误区。如果防火墙1秒能处理20万大数据包。那基本是也只能处理20W小的数据包。也就是说。单位时间内发尽量小,尽量多的数据包给他,比如说。G口。一秒发一个900M的包。人家能处理20万个你900M的包。你需要多少台G口攻击?
综上所述。10台100M攻击效率完全大于1台1G,现在不是几年前了。想用小流量造成大效果已经是很少很少了。
想攻击带有墙的。你就必须准备和他墙一样的流量。而且还要用正确的方法才能成功。所以就出现现在很多搞了10个G服务器连个4G的防御都打不死的郁闷者。上面所说的都是针对目标带有防火墙的。而且是针对SYN半连接攻击的个人见解,如果没DDoS防火墙。G口效率当然比100M的好。
对于使用DDoS攻击器用肉鸡的方式,打流量的话一般只有UDP、ICMP了吧。很多肉鸡的路由器都是屏蔽了UDP、ICMP包的数据包根本发不出去。就算发出去了。UDP还不是打大数据包。大数据包墙一下子就过滤掉了都,如果用UDP发小数据包。那还不如SYNFLOOD,所以现在肉鸡的作用都是打CC攻击的多。打连接攻击。或者伪造数据包。至于连接攻击怎么样能够穿墙呢?这里就不一一解说了
扩展:发包服务器 / syn发包服务器 / g口发包服务器
三 : 服务器被sfewfesfs病毒攻击(分析和解决)
sfewfesfs病毒,或者叫nhgbhhj病毒是一种肆虐于linux服务器上的病毒。从名字上可以看出来病毒的创作者对它的名字是随机取的,就是要增加它的隐蔽性。本来以为这种事情离我很远,但是一次疏忽的操作导致我的个人VPS差点挂掉,在这里记录下来也算是给大家提个醒吧。
起因[www.61k.com]
其实起因现在看起来也是有点愚蠢,因为我最近对discourse这个新兴的论坛程序很感兴趣,再加上它有个特性是可以跟disqus和多说一样嵌入到已有的静态网站中。所以我也想在Logecho中试一试它。
百度了一下它的安装文档。因此我就跟着步骤一步一步开始做了,我为了图省事找了一篇中文文档,事实证明这个安装步骤非常麻烦,我做了几步以后突然想起来discourse貌似有个docker安装的版本,因此在它的官网上找到了推荐的安装流程,非常简单,几步就做完了。
但是上面提到了,我有个安装流程做了一半就没管它了,好死不死的是我正好做到了创建一个名为admin的用户那一步
$ sudo adduser admin$ sudo adduser admin sudo
为了方便登录,我还特意把admin的密码改成了12345。做到这里,我就去找其它的安装文档了,这个事情也被我抛到了九霄云外。明眼人马上就可以看出来我留下这样一个弱口令高权限的账号是多么危险,我当时也就是想临时用用,用完了马上删掉的。
所以悲剧往往在不经意间就发生了。。。
出事了
大概到第二天中午的时候,我正在VPS上操作一个倒入数据的脚本,突然发现终端响应特别慢,程序也卡死了。我当时还以为是网络间歇性抽风就没管它。但过了一回就收到了linode发来的告警邮件,而且一次是两封。CPU,网络负载都超过上限了,我意识到自己可能是中招了。
但此时由于系统响应缓慢,而且网络拥塞,我已经无法通过ssh连上主机了。下图可以看到当时的系统情况
还好Linode提供了基于网页的实时终端,我一上去就发现了一个名为nhgbhhj的进程占用非常高的负载。在网上一搜索发现确实是一种恶意程序,目的就是不断发包占满你的带宽。由于网上的资料都非常旧了,我发现它们提供的方法并不能有效删除这个程序,所以就自己琢磨了一下
分析
首先第一步当然是kill掉这个程序,但肯定是治标不治本,不过好在可以马上把系统负载降下来,这样我就可以利用终端登录回去了。然后是找到这些进程的本体文件,根据网上的介绍应该放在/tmp目录下面,进去一看果然有一坨奇奇怪怪的文件
把这些文件干掉,并杀掉相应的进程,发现有个conf.n文件老是删不掉,或者说删了以后又自己跑出来了
推测应该还有很多进程没有杀干净,后来发现该目录下还有很多隐藏文件,比如以.ssh开头的
真是狡兔三窟,把这些乌七八糟的东西删掉以后conf.n文件就再也没出来了,判断应该是杀干净了。
补漏
首先要把这个弱密码的admin账户处理掉,为了更彻底一点干脆完全禁止密码登录,到/etc/ssh/sshd_config找到
PasswordAuthentication yes
把yes改成no,然后重启ssh服务即可。
总结
首先,网络安全的弦要时刻紧绷,也许你其它方面做得都很好,但就是因为有一点疏忽就可能功亏一篑。
在服务器上做任何一个操作的时候都要想到后果,不要为了图方便就放弃一些安全底限,现在大多数猜口令的扫描器都是时时刻刻全网扫描的,只要是弱口令就没有侥幸逃脱的。不信可以看看你的登录日志
root@localhost:/tmp# cat /var/log/auth.log | grep adminJan 19 08:23:48 localhost sshd[22552]: Invalid user www-admin from 180.150.177.103Jan 19 08:23:48 localhost sshd[22552]: input_userauth_request: invalid user www-admin [preauth]Jan 19 08:23:51 localhost sshd[22552]: Failed password for invalid user www-admin from 180.150.177.103 port 40628 ssh2Jan 19 08:24:51 localhost sshd[22592]: Invalid user www-admin from 180.150.177.103Jan 19 08:24:51 localhost sshd[22592]: input_userauth_request: invalid user www-admin [preauth]Jan 19 08:24:53 localhost sshd[22592]: Failed password for invalid user www-admin from 180.150.177.103 port 35412 ssh2Jan 19 08:26:28 localhost sshd[22658]: Invalid user www-admin from 180.150.177.103Jan 19 08:26:28 localhost sshd[22658]: input_userauth_request: invalid user www-admin [preauth]Jan 19 08:26:30 localhost sshd[22658]: Failed password for invalid user www-admin from 180.150.177.103 port 58053 ssh2Jan 19 08:27:29 localhost sshd[22704]: Invalid user www-admin from 180.150.177.103Jan 19 08:27:29 localhost sshd[22704]: input_userauth_request: invalid user www-admin [preauth]Jan 19 08:27:32 localhost sshd[22704]: Failed password for invalid user www-admin from 180.150.177.103 port 52837 ssh2Jan 19 11:01:07 localhost sshd[29337]: Invalid user wwwadmin from 180.150.177.103Jan 19 11:01:07 localhost sshd[29337]: input_userauth_request: invalid user wwwadmin [preauth]Jan 19 11:01:09 localhost sshd[29337]: Failed password for invalid user wwwadmin from 180.150.177.103 port 33113 ssh2Jan 19 11:02:01 localhost sshd[29366]: Invalid user wwwadmin from 180.150.177.103Jan 19 11:02:01 localhost sshd[29366]: input_userauth_request: invalid user wwwadmin [preauth]Jan 19 11:02:03 localhost sshd[29366]: Failed password for invalid user wwwadmin from 180.150.177.103 port 56130 ssh2Jan 19 15:35:37 localhost sshd[7495]: Invalid user gitadmin from 202.85.211.206Jan 19 15:35:37 localhost sshd[7495]: input_userauth_request: invalid user gitadmin [preauth]Jan 19 15:35:39 localhost sshd[7495]: Failed password for invalid user gitadmin from 202.85.211.206 port 48362 ssh2Jan 19 15:38:38 localhost sshd[7735]: Invalid user pgadmin from 202.85.211.206Jan 19 15:38:38 localhost sshd[7735]: input_userauth_request: invalid user pgadmin [preauth]Jan 19 15:38:41 localhost sshd[7735]: Failed password for invalid user pgadmin from 202.85.211.206 port 49705 ssh2Jan 19 15:38:42 localhost sshd[7739]: Invalid user pgadmin from 202.85.211.206Jan 19 15:38:42 localhost sshd[7739]: input_userauth_request: invalid user pgadmin [preauth]Jan 19 15:38:44 localhost sshd[7739]: Failed password for invalid user pgadmin from 202.85.211.206 port 50784 ssh2Jan 19 15:38:45 localhost sshd[7741]: Invalid user pgadmin from 202.85.211.206Jan 19 15:38:45 localhost sshd[7741]: input_userauth_request: invalid user pgadmin [preauth]Jan 19 15:38:47 localhost sshd[7741]: Failed password for invalid user pgadmin from 202.85.211.206 port 51875 ssh2Jan 19 15:38:48 localhost sshd[7745]: Invalid user pgadmin from 202.85.211.206Jan 19 15:38:48 localhost sshd[7745]: input_userauth_request: invalid user pgadmin [preauth]Jan 19 15:38:50 localhost sshd[7745]: Failed password for invalid user pgadmin from 202.85.211.206 port 52905 ssh2Jan 19 15:38:52 localhost sshd[7760]: Invalid user pgadmin from 202.85.211.206Jan 19 15:38:52 localhost sshd[7760]: input_userauth_request: invalid user pgadmin [preauth]Jan 19 15:38:53 localhost sshd[7760]: Failed password for invalid user pgadmin from 202.85.211.206 port 54193 ssh2Jan 19 15:39:19 localhost sshd[7800]: Invalid user wasadmin from 202.85.211.206Jan 19 15:39:19 localhost sshd[7800]: input_userauth_request: invalid user wasadmin [preauth]Jan 19 15:39:21 localhost sshd[7800]: Failed password for invalid user wasadmin from 202.85.211.206 port 35276 ssh2Jan 19 15:39:34 localhost sshd[7829]: Invalid user db2admin from 202.85.211.206Jan 19 15:39:34 localhost sshd[7829]: input_userauth_request: invalid user db2admin [preauth]Jan 19 15:39:35 localhost sshd[7829]: Failed password for invalid user db2admin from 202.85.211.206 port 40124 ssh2Jan 19 15:40:16 localhost sshd[7880]: Invalid user cvsadmin from 202.85.211.206Jan 19 15:40:16 localhost sshd[7880]: input_userauth_request: invalid user cvsadmin [preauth]Jan 19 15:40:17 localhost sshd[7880]: Failed password for invalid user cvsadmin from 202.85.211.206 port 54468 ssh2Jan 19 15:40:18 localhost sshd[7884]: Invalid user cvsadmin from 202.85.211.206Jan 19 15:40:18 localhost sshd[7884]: input_userauth_request: invalid user cvsadmin [preauth]Jan 19 15:40:21 localhost sshd[7884]: Failed password for invalid user cvsadmin from 202.85.211.206 port 55489 ssh2Jan 19 15:40:22 localhost sshd[7899]: Invalid user cvsadmin from 202.85.211.206Jan 19 15:40:22 localhost sshd[7899]: input_userauth_request: invalid user cvsadmin [preauth]Jan 19 15:40:24 localhost sshd[7899]: Failed password for invalid user cvsadmin from 202.85.211.206 port 56596 ssh2Jan 19 15:40:25 localhost sshd[7901]: Invalid user cvsadmin from 202.85.211.206Jan 19 15:40:25 localhost sshd[7901]: input_userauth_request: invalid user cvsadmin [preauth]Jan 19 15:40:27 localhost sshd[7901]: Failed password for invalid user cvsadmin from 202.85.211.206 port 57620 ssh2Jan 19 15:40:28 localhost sshd[7903]: Invalid user cvsadmin from 202.85.211.206Jan 19 15:40:28 localhost sshd[7903]: input_userauth_request: invalid user cvsadmin [preauth]Jan 19 15:40:30 localhost sshd[7903]: Failed password for invalid user cvsadmin from 202.85.211.206 port 58645 ssh2Jan 19 17:24:31 localhost sshd[14524]: Invalid user gitadmin from 202.85.211.206Jan 19 17:24:31 localhost sshd[14524]: input_userauth_request: invalid user gitadmin [preauth]Jan 19 17:24:33 localhost sshd[14524]: Failed password for invalid user gitadmin from 202.85.211.206 port 33227 ssh2Jan 19 17:27:05 localhost sshd[14779]: Invalid user pgadmin from 202.85.211.206Jan 19 17:27:05 localhost sshd[14779]: input_userauth_request: invalid user pgadmin [preauth]Jan 19 17:27:07 localhost sshd[14779]: Failed password for invalid user pgadmin from 202.85.211.206 port 33521 ssh2Jan 19 17:27:08 localhost sshd[14785]: Invalid user pgadmin from 202.85.211.206Jan 19 17:27:08 localhost sshd[14785]: input_userauth_request: invalid user pgadmin [preauth]Jan 19 17:27:10 localhost sshd[14785]: Failed password for invalid user pgadmin from 202.85.211.206 port 34578 ssh2Jan 19 17:27:10 localhost sshd[14787]: Invalid user pgadmin from 202.85.211.206Jan 19 17:27:10 localhost sshd[14787]: input_userauth_request: invalid user pgadmin [preauth]Jan 19 17:27:12 localhost sshd[14787]: Failed password for invalid user pgadmin from 202.85.211.206 port 35593 ssh2Jan 19 17:27:13 localhost sshd[14791]: Invalid user pgadmin from 202.85.211.206Jan 19 17:27:13 localhost sshd[14791]: input_userauth_request: invalid user pgadmin [preauth]Jan 19 17:27:15 localhost sshd[14791]: Failed password for invalid user pgadmin from 202.85.211.206 port 36610 ssh2Jan 19 17:27:15 localhost sshd[14793]: Invalid user pgadmin from 202.85.211.206Jan 19 17:27:15 localhost sshd[14793]: input_userauth_request: invalid user pgadmin [preauth]Jan 19 17:27:17 localhost sshd[14793]: Failed password for invalid user pgadmin from 202.85.211.206 port 37616 ssh2Jan 19 17:27:39 localhost sshd[14836]: Invalid user wasadmin from 202.85.211.206Jan 19 17:27:39 localhost sshd[14836]: input_userauth_request: invalid user wasadmin [preauth]Jan 19 17:27:40 localhost sshd[14836]: Failed password for invalid user wasadmin from 202.85.211.206 port 46739 ssh2Jan 19 17:27:51 localhost sshd[14854]: Invalid user db2admin from 202.85.211.206Jan 19 17:27:51 localhost sshd[14854]: input_userauth_request: invalid user db2admin [preauth]Jan 19 17:27:53 localhost sshd[14854]: Failed password for invalid user db2admin from 202.85.211.206 port 51364 ssh2Jan 19 17:28:28 localhost sshd[14926]: Invalid user cvsadmin from 202.85.211.206Jan 19 17:28:28 localhost sshd[14926]: input_userauth_request: invalid user cvsadmin [preauth]Jan 19 17:28:30 localhost sshd[14926]: Failed password for invalid user cvsadmin from 202.85.211.206 port 37019 ssh2Jan 19 17:28:31 localhost sshd[14930]: Invalid user cvsadmin from 202.85.211.206Jan 19 17:28:31 localhost sshd[14930]: input_userauth_request: invalid user cvsadmin [preauth]Jan 19 17:28:33 localhost sshd[14930]: Failed password for invalid user cvsadmin from 202.85.211.206 port 38037 ssh2Jan 19 17:28:34 localhost sshd[14932]: Invalid user cvsadmin from 202.85.211.206Jan 19 17:28:34 localhost sshd[14932]: input_userauth_request: invalid user cvsadmin [preauth]Jan 19 17:28:36 localhost sshd[14932]: Failed password for invalid user cvsadmin from 202.85.211.206 port 39119 ssh2Jan 19 17:28:37 localhost sshd[14936]: Invalid user cvsadmin from 202.85.211.206Jan 19 17:28:37 localhost sshd[14936]: input_userauth_request: invalid user cvsadmin [preauth]Jan 19 17:28:39 localhost sshd[14936]: Failed password for invalid user cvsadmin from 202.85.211.206 port 40179 ssh2
这次还好发现地及时,当时我也正好连在线上。如果是不知不觉间中招,很有可能被服务商停止服务,那就损失大了。
四 : 黑客是怎样攻击服务器的
文:Saumil Udayan Shah译:杨宴雷Web服务器将成为下一代黑客施展妖术的对象。[www.61k.com)在很大程度上,进行这种攻击只需一个Web浏览器和一个创造性的头脑。以前,黑客的攻击对象集中在操作系统和网络协议上,但随着这些攻击目标的弱点和漏洞逐渐得到修补,要进行这类攻击已经变得非常困难。操作系统正在变得更加稳健,对攻击的抵抗能力日益提高。随着身份验证和加密功能渐渐被内置到网络协议中,网络协议也变得更加安全。此外,防火墙也越来越智能,成为网络和系统的外部保护屏障。 另一方面,电子商务技术正在日益普及开来,其复杂性有增无减。基于Web的应用程序正在与基本的操作系统和后端数据库更加紧密地集成在一起。遗憾的是,人们在基于Web的基础设施安全性方面所做的工作还很不够。Web服务器和Web应用程序中的弱点被发现的速度为何这么快呢?有很多因素促成了这种Web黑客活动的快速增加。其中最主要的原因是防火墙允许所有的Web通信都可以进出网络,而防火墙无法防止对Web服务器程序及其组件或Web应用程序的攻击。第二个原因是,Web服务器和基于Web的应用程序有时是在\"功能第一,安全其次\"的思想指导下开发出来的。当您的Web服务器面临巨大威胁时,怎样保障它们的安全呢?这就需要您不断了解新信息,新情况,每天跟踪您所用服务器的有关网站,阅读相关新闻并向它进行咨询。为了让你着手这方面的工作,下面介绍黑客对NT系统的四种常用攻击手段,同时介绍如何防止这类攻击。 Microsoft IIS ism.dll缓冲区溢出 受影响的服务器:运行IIS 4.0并带有\"Service Pack 3/4/5\"的Windows NT服务器Microsoft IIS缓冲区溢出这一安全弱点是Web服务器无时不有的重大缺陷之一。该弱点被称为IIS eEye,这个名称来自发现此问题的一个小组。在实施缓冲区溢出攻击时,黑客向目标程序或服务输入超出程序处理能力的数据,导致程序突然终止。另外,还可以通过设置,在执行中的程序终止运行前,用输入的内容来覆盖此程序的某些部分,这样就可以在服务器的安全权限环境下执行任意黑客命令。eEye发现,IIS用来解释HTR文件的解释程序是ism.dll,它对缓冲区溢出攻击的抵抗力十分脆弱。如果攻击者将一个以.htr结尾的超长文件名(大约3,000个字符,或更多)传递给IIS,那么输入值将在ism.dll中造成输入缓冲区溢出,并导致IIS崩溃。如果攻击者输入的不是一串字母而是可执行代码(通常称为\"鸡蛋\"或\"外壳代码\"),那么在IIS终止之前
攻击服务器 黑客是怎样攻击服务器的
将执行该代码。(www.61k.com)由eEye小组发现的这一攻击方法包括三个步骤: 1.创建一个用于侦听任意TCP端口上连接活动的程序。一旦接收到连接信号,该程序将执行一个Windows命令外壳程序(cmd.exe),并将该外壳与连接绑定在一起。这个程序是经过修改的Netcat。Netcat是一个流行的网络连接实用程序,其源代码可以免费获得。 2.在IIS的ism.dll中制造缓冲区溢出,并使IIS从外部Web站点下载侦听程序(由步骤1产生)。 3.执行刚下载的程序(由步骤2产生),该程序将等待传入的连接并使攻击者进入Windows命令外壳程序中。由于缓冲区溢出导致IIS在崩溃之前转而运行Windows命令外壳,所以该外壳程序将在IIS的安全权限背景下运行,而该安全权限背景等价于NT Administrator权限。这样,攻击者要做的只是与被攻击的IIS服务器的侦听端口建立连接,然后等着出现c:>提示就万事大吉了。现在,攻击者拥有对整个NT服务器的管理权限,可以做任何事,比如,添加新用户、修改服务器的内容、格式化驱动器,甚至将该服务器用作攻击其它系统的踏脚石。运行IIS 4.0并带有\"Service Pack 3/4/5\"的Windows NT服务器容易受到此类攻击。Microsoft已经发布了对该弱点的修补程序。Windows NT Service Pack6也已经修补了该问题。 Microsoft IIS MDAC RDS安全弱点 受影响的服务器:运行IIS 4.0并安装了MDAC 2.1或更早版本的Windows NT服务器在发现IIS eEye安全弱点的大约一个月后,IIS 4.0的另一个弱点又暴露出来。使用Microsoft数据访问组件(MDAC)和远程数据服务(RDS),攻击者可以建立非法的ODBC连接,并获得对Web服务器上的内部文件的访问权。如果安装了MicrosoftJet OLE DB提供程序或Datashape提供程序,攻击者可以使用Visual Basic for Applications shell()函数发出能够在服务器上执行的命令。 在安装了MDAC 2.1或更高版本的IIS 4.0上,从位于其公共目录中的msadcmsa-dcs.dll,可以找到MDAC RDS弱点。Rain Forest Puppy在其站点中对该弱点进行了详细说明。该弱点利用了IIS上MDAC默认安装时的不适当配置和安全机制的缺乏这一漏洞。在等价于NT Administrator的IIS Web服务器进程的安全权限背景下,进行这种攻击的黑客可以在NT系统上远程执行任意命令。MDAC的弱点不是由于技术造成的,而是由于用户对它的配置方式所致。很多站点是通过NT Option Pack 4.0安装IIS 4.0的。如果NT Option Pack 4.0是以典型或默认配置安装的,那么MDAC就容易遭到这种攻击。大多数使用默认安装的系统管理员都没有具体调整过这些设置,从而使Web服务器的安全性大大降低。Foundstone公司的George Kurtz、Purdue
攻击服务器 黑客是怎样攻击服务器的
大学的Nitesh Dhanjani和我曾经共同设计了一个只有一行的命令字符串,该命令将利用MDAC RDS弱点,使远程NT系统启动一个通过FTP或TFTP进行的文件传输过程。(www.61k.com)这个命令将告诉服务器到从某个外部系统下载并执行Netcat。Netcat将运行Windows命令外壳程序,并建立一个返回攻击者计算机的连接,这样,攻击者就获得了对远程NT系统的完全管理控制权。 Microsoft已经发布了相应的安全公告,并对使IIS 4.0免受该弱点攻击的保护措施进行了说明。 Allaire ColdFusion 4.0弱点受影响的服务器:运行在Windows NT上的Allaire ColdFusion Server 4.0作为还算容易使用的、功能强大的脚本语言,ColdFusion已经广泛流行起来。但流行并不意味着安全。ColdFusion的问题不在于该服务器自身,而是在于它附带的脚本。ColdFusion 4.0提供了示范应用程序和范例,它们可以在位于Web服务器根目录中的cfdocsexampleapp和cfdocsexpeval目录中找到。当用户执行典型安装时,将安装这些应用程序和脚本。ColdFusion所附带的部分范例经过修改后,将允许非法访问服务器上所包含的敏感数据。这些弱点表明,基本的应用程序服务器可以被编写得不好的应用程序脚本歪曲利用。存在这种弱点的一个范例应用程序是cfdocsexampleappdocssourcewindow.cfm。因为ColdFusion是作为具有Administrator权限的系统服务运行的,所以,该程序可以被用来任意访问和查看NT Web服务器上的任何文件,包括boot.ini。用这种方法可以检索任何文件。Packet Storm对该弱点做了完整解释。而更严重的弱点存在于cfdocsexpevalopenfile.cfm、cfdocsexpevaldisplayopenedfile.cfm和cfdocsexpevalexprcalc.cfm中。这三个文件可以用来查看服务器上的任何文件,更为严重的是,它们还能将任意文件上载到服务器。对该弱点如何发作的讨论超出了本文的范围,欲了解详细信息请访问L0pht Heavy Industries的咨询信息。表达式求值程序exprcalc.cfm用于让开发人员计算被上载文件中的Cold-Fusion表达式的值。作为预防手段,该脚本在进行表达式计算时便会把被上载的文件删除掉,但要避免删除却是件容易的事。这样,攻击者可以上载恶意文件,并最终控制服务器。这些就是ColdFusion的示范脚本中最严重的弱点。要防止出现问题,请从任何运行中的服务器中删除ColdFusion示范脚本。Allaire的Security Zone提供了补丁程序,并提供了如何保护ColdFusion服务器的进一步信息。 Sambar 4.3 hello.bat受影响的服务器:运行在Windows NT上的Sambar 4.3 beta 7和更早版本Sambar是提供给开发者的免费Web服务器。它提供了对CGI和WinCGI脚本、ODBC脚本以及ISAPI的支持。它
攻击服务器 黑客是怎样攻击服务器的
甚至捆绑了Perl 5解释器。(www.61k.com]Sambar 4.3 beta 7版和更早版本附带两个名为hello.bat和echo.bat的文件,它们是将Windows批处理文件用作CGI脚本的范例。这两个脚本本身没有问题,hello.bat显示字符串\"Hello World\",而echo.bat显示字符串\"Place Holder\"。但当批处理文件被用作CGI脚本时,Web服务器将使用Windows命令外壳程序cmd.exe来运行它们。这样,攻击者可以利用该弱点针对目标服务器运行任意命令。例如,假如攻击者把URL http://target.site/cgi-bin/hello.bat?&dir+c:放在他或她的浏览器中,那么,将在服务器上运行命令\"dir c:\",并在浏览器上显示结果。由于Sambar是在NT Administrator安全权限下运行的,因此事情会变得更为复杂。这样的权限等级可以让攻击者作为NT Administrator运行任意命令。Windows命令外壳使用\"&”在相同命令行上分隔多个命令。如果用户将“&”放在hello.bat的后面,并在其后添加一个命令,那么将在执行hello.bat后执行第二个命令。由于已经删除了文件hello.bat和echo.bat,Sambar 4.3 beta 8版和更高版本没有该弱点。但是,由于Windows命令外壳程序解析命令行的方式无法改变,所以并没有办法能真正修正该问题。如果您安装了4.3 beta 7版或更低版本,请一定要删除hello.bat和echo.bat。
本文标题:攻击服务器-黑客是怎样攻击服务器的61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1