如何对网站进行渗透测试和漏洞扫描

如何对网站进行渗透测试和漏洞扫描,第1张

渗透测试在未得到被测试方授权之前依据某些地区法律规定是违法行为。这里我们提供的所有渗透测试方法均为(假设为)合法的评估服务,也就是通常所说的道德黑客行为(Ethicalhacking),因此我们这里的所有读者应当都是EthicalHackers,如果您还不是,那么我希望您到过这里后会成为他们中的一员;)

这里,我还想对大家说一些话:渗透测试重在实践,您需要一颗永不言败的心和一个有着活跃思维的大脑。不是说您将这一份文档COPY到您网站上或者保存到本地电脑您就会了,即使您将它打印出来沾点辣椒酱吃了也不行,您一定要根据文档一步一步练习才行。而且测试重在用脑,千万别拿上一两个本文中提到的工具一阵乱搞,我敢保证:互联网的安全不为因为这样而更安全。祝您好运。。。

一、简介

什么叫渗透测试?

渗透测试最简单直接的解释就是:完全站在攻击者角度对目标系统进行的安全性测试过程。

进行渗透测试的目的?

了解当前系统的安全性、了解攻击者可能利用的途径。它能够让管理人员非常直观的了解当前系统所面临的问题。为什么说叫直观呢?就像Mitnick书里面提到的那样,安全管理(在这里我们改一下,改成安全评估工作)需要做到面面俱到才算成功,而一位黑客(渗透测试)只要能通过一点进入系统进行破坏,他就算是很成功的了。

渗透测试是否等同于风险评估?

不是,你可以暂时理解成渗透测试属于风险评估的一部分。事实上,风险评估远比渗透测试复杂的多,它除渗透测试外还要加上资产识别,风险分析,除此之外,也还包括了人工审查以及后期的优化部分(可选)。

已经进行了安全审查,还需要渗透测试吗?

如果我对您说:嘿,中国的现有太空理论技术通过计算机演算已经能够证明中国完全有能力实现宇航员太空漫步了,没必要再发射神8了。您能接受吗?

渗透测试是否就是黑盒测试?

否,很多技术人员对这个问题都存在这个错误的理解。渗透测试不只是要模拟外部黑客的入侵,同时,防止内部人员的有意识(无意识)攻击也是很有必要的。这时,安全测试人员可以被告之包括代码片段来内的有关于系统的一些信息。这时,它就满足灰盒甚至白盒测试。

渗透测试涉及哪些内容

技术层面主要包括网络设备,主机,数据库,应用系统。另外可以考虑加入社会工程学(入侵的艺术/THEARTOFINTRUSION)。

渗透测试有哪些不足之处?

主要是投入高,风险高。而且必须是专业的EthicalHackers才能相信输出的最终结果。

你说的那么好,为什么渗透测试工作在中国开展的不是很火热呢?

我只能说:会的,一定会的。渗透测试的关键在于没法证明你的测试结果就是完善的。用户不知道花了钱证明了系统有问题以后,自己的安全等级到了一个什么程序。但是很显然,用户是相信一个专业且经验丰富的安全团队的,这个在中国问题比较严重。在我接触了一些大型的安全公司进行的一些渗透测试过程来看,测试人员的水平是对不住开的那些价格的,而且从测试过程到结果报表上来看也是不负责的。我估计在三年以后,这种情况会有所改观,到时一方面安全人员的技术力量有很大程度的改观,另一方面各企业对渗透测试会有一个比较深刻的理解,也会将其做为一种IT审计的方式加入到开发流程中去。渗透测试的专业化、商业化会越来越成熟。

二、制定实施方案

实施方案应当由测试方与客户之间进行沟通协商。一开始测试方提供一份简单的问卷调查了解客户对测试的基本接收情况。内容包括但不限于如下:

目标系统介绍、重点保护对象及特性。

是否允许数据破坏?

是否允许阻断业务正常运行?

测试之前是否应当知会相关部门接口人?

接入方式?外网和内网?

测试是发现问题就算成功,还是尽可能的发现多的问题?

渗透过程是否需要考虑社会工程?

。。。

在得到客户反馈后,由测试方书写实施方案初稿并提交给客户,由客户进行审核。在审核完成后,客户应当对测试方进行书面委托授权。这里,两部分文档分别应当包含如下内容:

实施方案部分:

书面委托授权部分:

三、具体 *** 作过程

1、信息收集过程

网络信息收集:

在这一部还不会直接对被测目标进行扫描,应当先从网络上搜索一些相关信息,包括GoogleHacking,Whois查询,DNS等信息(如果考虑进行社会工程学的话,这里还可以相应从邮件列表/新闻组中获取目标系统中一些边缘信息如内部员工帐号组成,身份识别方式,邮件联系地址等)。

1使用whois查询目标域名的DNS服务器

2nslookup

>settype=all

><domain>

>server<nsserver>

>setq=all

>ls-d<domain>

涉及的工具包括:Google,Demon,webhostinginfo,Apollo,Athena,GHDBXML,netcraft,seologs除此之外,我想特别提醒一下使用Googlebot/21绕过一些文件的获取限制。

Googlehacking中常用的一些语法描述

1搜索指定站点关键字site。你可以搜索具体的站点如site:来搜索中国政府部门的网站。

2搜索在URL网址中的关键字inurl。比如你想搜索带参数的站点,你可以尝试用inurl:aspid=

3搜索在网页标题中的关键字intitle。如果你想搜索一些登陆后台,你可以尝试使用intitle:"adminlogin"

目标系统信息收集:

通过上面一步,我们应当可以简单的描绘出目标系统的网络结构,如公司网络所在区域,子公司IP地址分布,接入地址等。这里特别要注意一些比较偏门的HOST名称地址,如一些backup开头或者temp开关的域名很可能就是一台备份服务器,其安全性很可能做的不够。

从获取的地址列表中进行系统判断,了解其组织架构及 *** 作系统使用情况。最常用的方法的是目标所有IP网段扫描。

端口/服务信息收集:

这一部分已经可以开始直接的扫描 *** 作,涉及的工具包括:nmap,thc-amap

1我最常使用的参数

nmap-sS-p1-10000-n-P0-oXfilenamexml--open-T5<ipaddress>

应用信息收集:>

这里有必要将SNMP拿出来单独说一下,因为目前许多运营商、大型企业内部网络的维护台通过SNMP进行数据传输,大部分情况是使用了默认口令的,撑死改了private口令。这样,攻击者可以通过它收集到很多有效信息。snmp-gui,HiliSoftMIBBrowser,mibsearch,net-snmp都是一些很好的资源。

2、漏洞扫描

这一步主要针对具体系统目标进行。如通过第一步的信息收集,已经得到了目标系统的IP地址分布及对应的域名,并且我们已经通过一些分析过滤出少许的几个攻击目标,这时,我们就可以针对它们进行有针对性的漏洞扫描。这里有几个方面可以进行:

针对系统层面的工具有:ISS,Nessus,SSS,Retina,天镜,极光

针对WEB应用层面的工具有:AppScan,AcunetixWebVulnerabilityScanner,WebInspect,Nstalker

针对数据库的工具有:ShadowDatabaseScanner,NGSSQuirreL

针对VOIP方面的工具有:PROTOSc07sip(在测试中直接用这个工具轰等于找死)以及c07h225,Sivus,sipsak等。

事实上,每个渗透测试团队或多或少都会有自己的测试工具包,在漏洞扫描这一块针对具体应用的工具也比较个性化。

3、漏洞利用

有时候,通过服务/应用扫描后,我们可以跳过漏洞扫描部分,直接到漏洞利用。因为很多情况下我们根据目标服务/应用的版本就可以到一些安全网站上获取针对该目标系统的漏洞利用代码,如milw0rm,securityfocus,packetstormsecurity等网站,上面都对应有搜索模块。实在没有,我们也可以尝试在GOOGLE上搜索“应用名称exploit”、“应用名称vulnerability”等关键字。

当然,大部分情况下你都可以不这么麻烦,网络中有一些工具可供我们使用,最著名的当属metasploit了,它是一个开源免费的漏洞利用攻击平台。其他的多说无益,您就看它从榜上无名到冲进前五(top100)这一点来说,也能大概了解到它的威力了。除此之外,如果您(您们公司)有足够的moeny用于购买商用软件的话,COREIMPACT是相当值得考虑的,虽然说价格很高,但是它却是被业界公认在渗透测试方面的泰山北斗,基本上测试全自动。如果您觉得还是接受不了,那么您可以去购买CANVAS,据说有不少0DAY,不过它跟metasploit一样,是需要手动进行测试的。最后还有一个需要提及一下的Exploitation_Framework,它相当于一个漏洞利用代码管理工具,方便进行不同语言,不同平台的利用代码收集,把它也放在这里是因为它本身也维护了一个exploit库,大家参考着也能使用。

上面提到的是针对系统进行的,在针对WEB方面,注入工具有NBSI,OWASPSQLiX,SQLPowerInjector,sqlDumper,sqlninja,sqlmap,Sqlbftools,priamos,ISR-sqlget等等。

在针对数据库方面的工具有:

数据库工具列表Oracle(1521端口):目前主要存在以下方面的安全问题:

1、TNS监听程序攻击(sid信息泄露,停止服务等)

2、默认账号(defaultpasswordlist)

3、SQLINJECTION(这个与传统的意思还不太一样)

4、缓冲区溢出,现在比较少了。thc-orakel,tnscmd,oscanner,Getsids,TNSLSNR,lsnrcheck,OAT,Checkpwd,orabfMSSqlServer(1433、1434端口)Mysql(3306端口)DB2(523、50000、50001、50002、50003端口)db2utilsInformix(1526、1528端口)

在针对Web服务器方面的工具有:

WEB服务器工具列表IISIISPUTSCANNERTomcat想起/admin和/manager管理目录了吗?另外,目录列表也是Tomcat服务器中最常见的问题。比如5版本中的

在渗透测试过程中,一旦有机会接触一些OFFICE文档,且被加了密的话,那么,rixler是您马上要去的地方,他们提供的OFFICE密码套件能在瞬间打开OFFICE文档(2007中我没有试过,大家有机会测试的话请给我发一份测试结果说明,谢谢)。看来微软有理由来个补丁什么的了。对于企业来说,您可以考虑使用铁卷或者RMS了。

6、日志清除

Itisnotnecessaryactually

7、进一步渗透

攻入了DMZ区一般情况下我们也不会获取多少用价值的信息。为了进一步巩固战果,我们需要进行进一步的内网渗透。到这一步就真的算是无所不用其及。最常用且最有效的方式就是Sniff抓包(可以加上ARP欺骗)。当然,最简单的你可以翻翻已入侵机器上的一些文件,很可能就包含了你需要的一些连接帐号。比如说你入侵了一台Web服务器,那么绝大部分情况下你可以在页面的代码或者某个配置文件中找到连接数据库的帐号。你也可以打开一些日志文件看一看。

除此之外,你可以直接回到第二步漏洞扫描来进行。

四、生成报告

报告中应当包含:

薄弱点列表清单(按照严重等级排序)

薄弱点详细描述(利用方法)

解决方法建议

参与人员/测试时间/内网/外网

五、测试过程中的风险及规避

在测试过程中无可避免的可能会发生很多可预见和不可预见的风险,测试方必须提供规避措施以免对系统造成重大的影响。以下一些可供参考:

1不执行任何可能引起业务中断的攻击(包括资源耗竭型DoS,畸形报文攻击,数据破坏)。

2测试验证时间放在业务量最小的时间进行。

3测试执行前确保相关数据进行备份。

4所有测试在执行前和维护人员进行沟通确认。

5在测试过程中出现异常情况时立即停止测试并及时恢复系统。

6对原始业务系统进行一个完全的镜像环境,在镜像环境上进行渗透测试。

渗透测试是什么?

渗透测试,是为了证明网络防御按照预期计划正常运行而提供的一种机制。不妨假设,你的公司定期更新安全策略和程序,时时给系统打补丁,并采用了漏洞扫描器等工具,以确保所有补丁都已打上。如果你早已做到了这些,为什么还要请外方进行审查或渗透测试呢?因为,渗透测试能够独立地检查你的网络策略,换句话说,就是给你的系统安了一双眼睛。而且,进行这类测试的,都是寻找网络系统安全漏洞的专业人士。

渗透测试有什么特点?

1、信息收集

信息收集分析是所有入侵攻击的前提/前奏/基础。通过对网络信息收集分析,可以相应地、有针对性地制定模拟黑客入侵攻击的计划,以提高入侵的成功率、减小暴露或被发现的几率。信息收集的方法包括主机网络扫描、 *** 作类型判别、应用判别、账号扫描、配置判别等等。
2、端口扫描

通过对目标地址的TCP/UDP端口扫描,确定其所开放的服务的数量和类型,这是所有渗透测试的基础。通过端口扫描,可以基本确定一个系统的基本信息,结合测试人员的经验可以确定其可能存在,以及被利用的安全弱点,为进行深层次的渗透提供依据。

3、权限提升
通过收集信息和分析,存在两种可能性,其一是目标系统存在重大弱点:测试人员可以直接控制目标系统,然后直接调查目标系统中的弱点分布、原因,形成最终的测试报告;其二是目标系统没有远程重大弱点,但是可以获得远程普通权限,这时测试人员可以通过该普通权限进一步收集目标系统信息。接下来,尽最大努力获取本地权限,收集本地资料信息,寻求本地权限升级的机会。这些不停的信息收集分析、权限升级的结果将构成此次项目整个渗透测试过程的输出。
4、溢出测试
当测试人员无法直接利用帐户口令登陆系统时,也会采用系统溢出的方法直接获得系统控制权限,此方法有时会导致系统死机或从新启动,但不会导致系统数据丢失,如出现死机等故障,只要将系统从新启动并开启原有服务即可。一般情况下,如果未授权,将不会进行此项测试。
5、WEB应用测试
Web脚本及应用测试专门针对Web及数据库服务器进行。根据最新的统计,脚本安全弱点为当前Web系统,尤其是存在动态内容的Web系统比较严重的安全弱点之一。利用脚本相关弱点轻则可以获取系统其他目录的访问权限,重则将有可能取得系统的控制权限。因此对于含有动态页面的Web、数据库等系统,Web脚本及应用测试将是必不可少的一个环节。
6、SQL注入攻击
SQL注入常见于应用了SQL 数据库后端的网站服务器,入侵者通过提交某些特殊SQL语句,最终可能获取、篡改、控制网站服务器端数据库中的内容。此类漏洞是入侵者最常用的入侵方式之一。
7、检测页面隐藏字段
网站应用系统常采用隐藏字段存储信息。许多基于网站的电子商务应用程序用隐藏字段来存储商品价格、用户名、密码等敏感内容。恶意用户通过 *** 作隐藏字段内容达到恶意交易和窃取信息等行为,是一种非常危险的漏洞。
8、跨站攻击
入侵者可以借助网站来攻击访问此网站的终端用户,来获得用户口令或使用站点挂马来控制客户端。
9、Cookie利用
网站应用系统常使用cookies 机制在客户端主机上保存某些信息,例如用户ID、口令、时戳等。入侵者可能通过篡改cookies 内容,获取用户的账号,导致严重的后果。

安全性漏洞挖掘

找出网站中存在的安全漏洞,对传统安全弱点的串联并形成路径,最终通过路径式的利用而达到模拟入侵的效果。发掘网站中影响业务正常运行、导致敏感信息泄露、造成现金和信誉损失的等的漏洞。

漏洞修复方案

渗透测试目的是防御,故发现漏洞后,修复是关键。安全专家针对漏洞产生的原因进行分析,提出修复建议,以防御恶意攻击者的攻击。

回归测试

漏洞修复后,对修复方案和结果进行有效性评估,分析修复方案的有损打击和误打击风险,验证漏洞修复结果。汇总漏洞修复方案评估结果,标注漏洞修复结果,更新并发送测试报告。

可以用于证明软件的安全性。

渗透测试是一种以攻击者角度来检测软件系统安全性的测试方法,旨在发现并修复漏洞,保护系统不受到黑客或其他恶意人员的攻击。渗透测试通常由授权的专业团队进行,通过模拟黑客攻击,发现潜在漏洞,并提供建议和措施加以修补,从而帮助企业更好地保障其数据和信息的安全。

渗透测试可以分为外部和内部两类。外部渗透测试专注于从互联网公共网络进行攻击,模拟真正的黑客攻击,进入公司网络的环境,而内部渗透测试则侧重于从公司内部进行模拟攻击,模拟公司内部用户被攻击的情况,以评估系统内部用户是否能够保护自己的设备和数据。

渗透测试的价值在于能够帮助企业按照安全标准和最佳实践来开发和维护系统。它可以帮助企业发现并修复漏洞,增强安全性,避免虚假警报,确保企业投资得到了保障,并有助于提供最高级别的风险管理和合规性。通过定期进行渗透测试,企业可以更好地了解系统漏洞和安全薄弱点,并采取措施加以防范,最终保障其数据和资产的安全。

01、信息收集
1、域名、IP、端口
域名信息查询:信息可用于后续渗透
IP信息查询:确认域名对应IP,确认IP是否真实,确认通信是否正常
端口信息查询:NMap扫描,确认开放端口
发现:一共开放两个端口,80为web访问端口,3389为windows远程登陆端口,嘿嘿嘿,试一下
发现:是Windows Server 2003系统,OK,到此为止。
2、指纹识别
其实就是网站的信息。比如通过可以访问的资源,如网站首页,查看源代码:
看看是否存在文件遍历的漏洞(如路径,再通过…/遍历文件)
是否使用了存在漏洞的框架(如果没有现成的就自己挖)
02、漏洞扫描
1、主机扫描
Nessus
经典主机漏扫工具,看看有没有CVE漏洞:
2、Web扫描
AWVS(Acunetix | Website Security Scanner)扫描器
PS:扫描器可能会对网站构成伤害,小心谨慎使用。
03、渗透测试
1、弱口令漏洞
漏洞描述
目标网站管理入口(或数据库等组件的外部连接)使用了容易被猜测的简单字符口令、或者是默认系统账号口令。
渗透测试
① 如果不存在验证码,则直接使用相对应的弱口令字典使用burpsuite 进行爆破
② 如果存在验证码,则看验证码是否存在绕过、以及看验证码是否容易识别
风险评级:高风险
安全建议
① 默认口令以及修改口令都应保证复杂度,比如:大小写字母与数字或特殊字符的组合,口令长度不小于8位等
② 定期检查和更换网站管理口令
2、文件下载(目录浏览)漏洞
漏洞描述
一些网站由于业务需求,可能提供文件查看或下载的功能,如果对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意的文件,可以是源代码文件、敏感文件等。
渗透测试
① 查找可能存在文件包含的漏洞点,比如js,css等页面代码路径
② 看看有没有文件上传访问的功能
③ 采用…/来测试能否夸目录访问文件
风险评级:高风险
安全建议
① 采用白名单机制限制服务器目录的访问,以及可以访问的文件类型(小心被绕过)
② 过滤/等特殊字符
③ 采用文件流的访问返回上传文件(如用户头像),不要通过真实的网站路径。
示例:tomcat,默认关闭路径浏览的功能:
<param-name>listings</param-name>
<param-value>false</param-value>
3、任意文件上传漏洞
漏洞描述
目标网站允许用户向网站直接上传文件,但未对所上传文件的类型和内容进行严格的过滤。
渗透测试
① 收集网站信息,判断使用的语言(PHP,ASP,JSP)
② 过滤规则绕过方法:文件上传绕过技巧
风险评级:高风险
安全建议
① 对上传文件做有效文件类型判断,采用白名单控制的方法,开放只允许上传的文件型式;
② 文件类型判断,应对上传文件的后缀、文件头、类的预览图等做检测来判断文件类型,同时注意重命名(Md5加密)上传文件的文件名避免攻击者利用WEB服务的缺陷构造畸形文件名实现攻击目的;
③ 禁止上传目录有执行权限;
④ 使用随机数改写文件名和文件路径,使得用户不能轻易访问自己上传的文件。
4、命令注入漏洞
漏洞描述
目标网站未对用户输入的字符进行特殊字符过滤或合法性校验,允许用户输入特殊语句,导致各种调用系统命令的web应用,会被攻击者通过命令拼接、绕过黑名单等方式,在服务端运行恶意的系统命令。
渗透测试
风险评级:高风险
安全建议
① 拒绝使用拼接语句的方式进行参数传递;
② 尽量使用白名单的方式(首选方式);
③ 过滤危险方法、特殊字符,如:|&;’"等
5、SQL注入漏洞
漏洞描述
目标网站未对用户输入的字符进行特殊字符过滤或合法性校验,允许用户输入特殊语句查询后台数据库相关信息
渗透测试
① 手动测试:判断是否存在SQL注入,判断是字符型还是数字型,是否需要盲注
② 工具测试:使用sqlmap等工具进行辅助测试
风险评级:高风险
安全建议
① 防范SQL注入攻击的最佳方式就是将查询的逻辑与其数据分隔,如Java的预处理,PHP的PDO
② 拒绝使用拼接SQL的方式
6、跨站脚本漏洞
漏洞描述
当应用程序的网页中包含不受信任的、未经恰当验证或转义的数据时,或者使用可以创建 HTML或JavaScript 的浏览器 API 更新现有的网页时,就会出现 XSS 缺陷。XSS 让攻击者能够在受害者的浏览器中执行脚本,并劫持用户会话、破坏网站或将用户重定向到恶意站点。
三种XSS漏洞:
① 存储型:用户输入的信息被持久化,并能够在页面显示的功能,都可能存在存储型XSS,例如用户留言、个人信息修改等。
② 反射型:URL参数需要在页面显示的功能都可能存在反射型跨站脚本攻击,例如站内搜索、查询功能。
③ DOM型:涉及DOM对象的页面程序,包括:documentURL、documentlocation、documentreferrer、windowlocation等
渗透测试
存储型,反射型,DOM型
风险评级:高风险
安全建议
① 不信任用户提交的任何内容,对用户输入的内容,在后台都需要进行长度检查,并且对<>"’&等字符做过滤
② 任何内容返回到页面显示之前都必须加以html编码,即将<>"’&进行转义。
7、跨站请求伪造漏洞
漏洞描述
CSRF,全称为Cross-Site Request Forgery,跨站请求伪造,是一种网络攻击方式,它可以在用户毫不知情的情况下,以用户的名义伪造请求发送给被攻击站点,从而在未授权的情况下进行权限保护内的 *** 作,如修改密码,转账等。
渗透测试
风险评级:中风险(如果相关业务极其重要,则为高风险)
安全建议
① 使用一次性令牌:用户登录后产生随机token并赋值给页面中的某个Hidden标签,提交表单时候,同时提交这个Hidden标签并验证,验证后重新产生新的token,并赋值给hidden标签;
② 适当场景添加验证码输入:每次的用户提交都需要用户在表单中填写一个上的随机字符串;
③ 请求头Referer效验,url请求是否前部匹配>

软件测试与渗透测试发展前途都非常不错的,可以根据个人的情况选择发展方向。

软件测试与渗透测试的区别:

1、测试对象不同

软件测试:主要测试的是程序、数据、文档。

渗透测试:对象主要为网络设备、主机 *** 作系统、数据库系统和应用系统。

2、测试内容不同

软件测试:主要工作内容是验证和确认,发现软件中的缺陷或者不足,然后把发现的问题整理成报告并分析出软件质量的好坏。验证是保证软件正确地实现了一些特定功能的一系列活动;确认是一系列的活动和过程,目的是想证实一个给定的外部环境中软件的逻辑正确性,即保证软件做了你所期望的事情。

渗透测试:主要包括黑盒测试、白盒测试和灰盒测试。主要做的工作有:信息收集、端口扫描、权限提升、远程溢出攻击、Web应用测试、SQL注入攻击、检测页面隐藏字段、跨站攻击、Cookie利用、后门程序检查、第三方软件误配置等。

3、测试原则不同

软件测试:

①测试应该尽早进行;

②软件测试应该由第三方来负责;

③设计测试用例时应考虑到合法的输入和不合法的输入以及各种边界条件;

④应该充分注意测试中的群集现象;

⑤对错误结果要进行一个确认过程;

⑥制定严格的测试计划;

⑦妥善保存测试计划、测试用例、出错统计和最终分析报告。

渗透测试:

①测试验证时间放在业务量最小的时间进行;

②测试执行前确保相关数据进行备份;

③所有测试在执行前和维护人员进行沟通确认;

④在测试过程中出现异常情况时立即停止测试并及时恢复系统;

⑤对原始业务系统进行一个完全的镜像环境,在镜像环境上进行渗透测试。

总而言之,软件测试更多的是以正常使用者的角度为出发点,测试软件的可用性;而渗透测试则是以极端攻击者的角度出发,测试系统的安全性。

信息收集

1,获取域名的whois信息,获取注册者邮箱姓名电话等。

2,查询服务器旁站以及子域名站点,因为主站一般比较难,所以先看看旁站有没有通用性的cms或者其他漏洞。

3,查看服务器 *** 作系统版本,web中间件,看看是否存在已知的漏洞,比如IIS,APACHE,NGINX的解析漏洞

4,查看IP,进行IP地址端口扫描,对响应的端口进行漏洞探测,比如rsync,心脏出血,mysql,ftp,ssh弱口令等。

5,扫描网站目录结构,看看是否可以遍历目录,或者敏感文件泄漏,比如php探针

6,googlehack进一步探测网站的信息,后台,敏感文件

漏洞扫描

开始检测漏洞,如XSS,XSRF,sql注入,代码执行,命令执行,越权访问,目录读取,任意文件读取,下载,文件包含,远程命令执行,弱口令,上传,编辑器漏洞,暴力破解等

漏洞利用

利用以上的方式拿到webshell,或者其他权限

权限提升

提权服务器,比如windows下mysql的udf提权,serv-u提权,windows低版本的漏洞

linux藏牛漏洞,linux内核版本漏洞提权,linux下的mysqlsystem提权以及oracle低权限提权

日志清理

总结报告及修复方案

sqlmap,怎么对一个注入点注入?

1)如果是get型号,直接,sqlmap-u"诸如点网址"

2)如果是post型诸如点,可以sqlmap-u"注入点网址”--data="post的参数"

3)如果是cookie,X-Forwarded-For等,可以访问的时候,用burpsuite抓包,注入处用号替换,放到文件里,然后sqlmap-r"文件地址"

nmap,扫描的几种方式

sql注入的几种类型?

1)报错注入

2)bool型注入

3)延时注入

4)宽字节注入


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13100359.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-30
下一篇 2023-05-30

发表评论

登录后才能评论

评论列表(0条)

保存