渗透测试的步骤有哪些
渗透测试步骤
明确目标
· 确定范围:测试目标的范围,ip,域名,内外网。
· 确定规则:能渗透到什么程度,时间?能否修改上传?能否提权等。
· 确定需求:web应用的漏洞、业务逻辑漏洞、人员权限管理漏洞等等。
信息收集
方式:主动扫描,开放搜索等。
开放搜索:利用搜索引擎获得,后台,未授权页面,敏感url等。
漏洞探索
利用上一步中列出的各种系统,应用等使用相应的漏洞。
*** :
1.漏扫,awvs,IBM appscan等。
2.结合漏洞去exploit-db等位置找利用。
3.在网上寻找验证poc。
内容:
系统漏洞:系统没有及时打补丁
Websever漏洞:Websever配置问题
Web应用漏洞:Web应用开发问题
其它端口服务漏洞:各种21/8080(st2)/7001/22/3389
通信安全:明文传输,token在cookie中传送等。
漏洞验证
将上一步中发现的有可能可以成功利用的全部漏洞都验证一遍,结合实际情况,搭建模拟环境进行试验。成功后再应用于目标中。
自动化验证:结合自动化扫描工具提供的结果
手工验证,根据公开资源进行验证
试验验证:自己搭建模拟环境进行验证
登陆猜解:有时可以尝试猜解一下登陆口的账号密码等信息
业务漏洞验证:如发现业务漏洞,要进行验证
公开资源的利用
信息分析
为下一步实施渗透做准备:
精准打击:准备好上一步探测到的漏洞的exp,用来精准打击
绕过防御机制:是否有防火墙等设备,如何绕过
定制攻击路径:更佳工具路径,根据薄弱入口,高内网权限位置,最终目标
绕过检测机制:是否有检测机制,流量监控,杀毒软件,恶意代码检测等
攻击代码:经过试验得来的代码,包括不限于xss代码,sql注入语句等
获取所需
实施攻击:根据前几步的结果,进行攻击
获取内部信息:基础设施
进一步渗透:内网入侵,敏感目标
持续性存在:一般我们对客户做渗透不需要。rookit,后门,添加管理账号,驻扎手法等
清理痕迹:清理相关日志,上传文件等
信息整理
整理渗透工具:整理渗透过程中用到的代码,poc,exp等
整理收集信息:整理渗透过程中收集到的一切信息
整理漏洞信息:整理渗透过程中遇到的各种漏洞,各种脆弱位置信息
形成报告
按需整理:按照之前之一步跟客户确定好的范围,需求来整理资料,并将资料形成报告
补充介绍:要对漏洞成因,验证过程和带来危害进行分析
修补建议:当然要对所有产生的问题提出合理高效安全的解决办法
kali linux下怎么装Metasploit
Kali Linux系统是一个渗透测试平台,所以许多渗透测试工具都被集成在了里面,而且Kali使用了Debian系统的软件包管理方式,也就是说Kali可以用apt-get命令安装软件,Metasploit这个软件当然也可以用软件源方式来安装,所以在Kali上安装Metasploit的命令是这样的:
apt-get install metasploit
求BackTrack 3 BackTrack 4 BackTrack 5
以下来自百度百科,全粘过来了。
释义
*** 4全称Back Track four,这是一个linux环境的便携系统,可以放到U盘或者光盘中启动,对本身硬盘没有影响,无需在本地安装。
是圈内非常著名的黑客攻击平台,是一个封装好的Linux操作系统,内置大量的 *** 安全检测工具以及黑客破解软件等。
*** 3~4因可以方便的破解无线 *** 而出名,其中内置的spoonwep是一个非常强悍的图形化破解wep无线 *** 密码的工具。[2]
[编辑本段]简介
Backtrack 是处于世界领先地位的渗透测试和信息安全审计发行版本。有着上百种预先安装好的工具软件,并确定能完美运行,Backtrack4 提供了一个强大的渗透测试平台--从Web hack的应用程序到RFID 审查,都可由Backtrack来完成。[2]
[编辑本段]内幕
BackTrack 的基础
*** 4 引入了许多显著的变化,基于Ubuntu Intrepid。现在开始使用我们自己修改了的Ubuntu软件包和渗透测试工具软件来维护我们自己全部的软件仓库。
另外一个显著的变化是更新linux 核心版本到2.6.29.4.这个新核心带来了一整套系统内在的变化,使得极大地改变了BackTrack的架构。
Backtrack 的核心
不再使用lzma格式的squashfs作为live cd的文件系统,从而导致了一个更大容量的ISO文件。但从另外一个方面来看,这也使得我们不用维护我们自己的核心补丁问题。目前这是很痛苦的,因为squashfs融入主流核心的速度十分缓慢。
*** 4使用了squashfs-tools version 4.0,内建的squashfs核心模块(2.6.29.4),和旧版本不兼容。使用了AUFS格式作为统一文件系统 (unification filesystem)。
核心已经安装了几个无线驱动的注入和优化补丁,并且打了bootsplash 补丁,这些补丁都能在核心源码包中找到。(/usr/src/linux/patches)
这些变化意味着以前很多在 *** 2/ *** 3中使用的 *** 已经不再有效,比如启动时的cheatcodes参数。
由于核心的转移也意味着不再使用live-linux脚本来生成iso文件,现在我们使用casper。[2]
[编辑本段]相关联
软件包和软件仓库
*** 4中一个更大的变化就是使用了软件仓库,可以经常更新安全补丁和工具,类似Debian。意味着如果你选择把 *** 4安装到硬盘,
你就可以通过apt-get命令,维护和更新你的软件包。
*** 4工具软件有以下几个大类:
BackTrack-Enumeration
BackTrack-Tunneling
BackTrack-Bruteforce
BackTrack-Spoofing
BackTrack-Passwords
BackTrack-Wireless
BackTrack-Discovery
BackTrack-Cisco
BackTrack-Web Applicaitons
BackTrack-Forensics
BackTrack-Fuzzers
BackTrack-Bluetooth
BackTrack-Misc
BackTrack-Sniffers
BackTrack-VOIP
BackTrack-Debuggers
BackTrack-Penetration
BackTrack-Database
BackTrack-RFID
BackTrack-Python
BackTrack-Drivers
BackTrack-GPU
Meta packages
工具软件的分类有一个很好的特点,就是我们可以支持“BackTrack meta packages”. 一个Meta 软件包是一个虚设的软件包,
可以包含其他的几个软件包。比如,meta软件包“backtrack-web” 可以包括 *** 4提供的所有Web渗透测试工具应用软件。
Meta Meta 软件包有两个meta meta packages: backtrack-world 和backtrack-desktop
backtrack-world 包含了所有的BackTrack meta软件包
backtrack-desktop包含了backtrack-world,backtrack-networking 和backtrack-mulimedia.后面的两个meta软件包从Ubuntu引入的。[2]
[编辑本段]安装操作
安装 *** 4到硬盘
*** 4(基础框架版和全版本)包含了一个修改了的Ubiquity installer.这种安装是非常简单易懂的。
更新 *** 4
使用apt-get命令来更新 *** 4是比较简单的
apt-get update 同步更新软件包列表
apt-get upgrade 下载和安装所有可用的更新
apt-get dist-upgrade 下载和安装所有的升级更新
定制 *** 4
*** 你自己的Live CD
*** 1
*** 你自己喜欢的 *** 4是很简单的.
1.下载并安装 *** 4的基础核心架构版本
2.用apt-get安装需要的软件包
3.用remmastersys重新打包你的安装
*** 2
下载 *** 4的iso文件,使用定制脚本来更新和修改,参看[1]
安装 *** 4到U盘
最简单安装 *** 4到U盘的 *** 就是用unetbootin 工具软件。(在 *** 4 的/opt/目录下)
安装 *** 4到U盘 -保存数据
运行 *** 4
KDE3 特别用法
*** 4 包含了“强加的”KDE3,和KDE4 Ubuntu Intrepid库同存。 *** 4使用KDE3,牢记KDE3包都有“kde3”的后缀,可以和KDE4区分。
比如,你想安装KDE中的kate文本编辑器,你必须apt-get install kate-kde3(安装KDE3版本中的kate),
而不是apt-get kate(安装KDE4版本中的kate)。[2]
[编辑本段]人工更新工具
*** 4软件仓库会极力保持更新最新版本的工具软件,但有极少的部分例外。这些“特殊的”软件由他们的作者经常更新,有些还包括显著的更新。我们感到对这些类型的工具 *** 静态的二进制文件是无益的,这些软件的使用者更好使用SVN来同步更新。这些工具包括MSF,W2AF,Nikto等
Kali Linux 2022.1
Kali Linux是一个开源的,基于Debian的Linux发行版,面向各种信息安全任务,如渗透测试,安全研究,计算机取证和逆向工程。
Kali Linux 操作系统是一个 BackTrack 开发人员项目,专为高级用户设计为安全操作系统。主要创新是,发行版现在完全基于 Debian,并在我们的启动版本中使用 Gnome 3 作为标准桌面。
此操作有几个优点:通过连接到 Debian 存储库,系统始终获取软件的最新版本 - 这也包括测试版本和非稳定版本,您将始终了解最新动态。访问所有已启用工具的源代码有助于快速设置。
Kali Linux 安装可通过 Debian 预安装功能实现自动化;这在企业使用中节省了大量时间。操作还允许您创建单独的映像,您可以在其中使用自己选择的桌面环境。
预安装的安全工具包括:Nmap、线框、金属板框架、马尔特戈、sqlmap 和许多其他有用的工具。
操作系统的优点:
Kali Linux 是黑客测试和安全审核的首选工具。完整的软件包提供对所有重要工具的访问,并为用户提供更大的自由。使用场景无疑是非常特殊的,你必须有足够的专业知识来使用它们。
Kali Linux渗透测试平台包含大量的工具和实用程序。从信息收集到最终报告,Kali Linux使安全和IT专业人员能够评估其系统的安全性。
此版本为 Kali 内部提供的 默认登录页面 带来了全新的外观。利用更新的文档站点 (Kali-Docs和Kali-Tools), 搜索功能将帮助您使用Kali Linux找到几乎任何需要的东西!
这个版本将迎来一 个新的风格 ,即"kali-linux-everything"镜像。这允许一 个完整的离线独立映像 (ISO),对于那些需要 预安装Kali所有工具 的人来说。与以前不同的是,在Kali的设置过程中,用户不需要通过 *** 镜像下载"kali-linux-everything"软件包,因为它们将位于同一媒体上,但由于这一点,最初下载的映像要大得多。由于大小增加(~2.8GB到~9.4GB),这些图像最初将仅使用其设计用于处理流量的技术BitTorrent提供。此外,由于有更多的软件包,安装 Kali 也需要更长的时间。
如果您了解自己在做什么,并且这听起来像是您想要的东西,请抓住洪流并尝试一下!
要了解有关 Kali 软件包分组的更多信息,请参阅我们关于元软件包的文档。
由于已知的限制,这将不包括此时的Kaboxer应用程序。
强化 部分有一个新设置!现在可以将 Kali 的 SSH 客户端配置为 广泛兼容性 ,这意味着 启用了旧算法和密码 。因此,连接到使用这些的旧服务器现在非常简单,无需在命令行上显式传递其他选项。 kali-tweaks
此设置的目的是使发现易受攻击的SSH服务器变得更加容易,就像前面解释的那样,这开辟了更多潜在的攻击面 (这就是这种情况的发生,由于最近的渗透测试,不间断电源为我们提供了完成 *** 保护的立足点) )。
请注意,与 OpenSSL 和 Samba 不同,默认情况下 不 启用此弱化行为,因为 SSH 是一个足够敏感的组件,我们希望 在默认情况下保持 其安全 。因此,如果您对此设置感兴趣,则必须运行 ,进入 "强化 "部分并在此处启用它。 kali-tweaks
以下是 "强化" 屏幕当前的外观:
对于在具有 i3 桌面环境的客户机虚拟机中使用 Kali 的用户,默认情况下未启用 VMware 的主机-客户机功能(例如拖放、复制/粘贴),必须手动完成。此问题现已修复,您无需执行任何操作,它应该开箱即用。这是在软件包 i3-wm 中启用的。 kali-desktop-i34.20.1-1
我们一直试图支持尽可能多的Kali用户。从我们的早期版本到今天都是如此。
为了帮助盲人和视障用户,我们很高兴地说 ,语音合成 又回到了Kali设置中。当我们发布Kali 2021.4时,安装程序中的声音坏了。这是由于声音驱动程序中的包装错误造成的,不幸的是,这个问题在一段时间内没有被注意到。此问题现已修复。非常感谢报告了这个问题的isfr8585!
在众多软件包更新之间,添加了各种新工具!已添加 内容(到 *** 存储库) 的快速细分:
向ProjectDiscovery致敬他们的工作和工具!
以前不可用于体系结构的包的列表,以及已在此版本中添加的包: arm64
蓝牙现在应该固定在RaspberryPi图像上,除了Zero 2 W,我们仍在寻找修复程序,并将在准备就绪时发布更新的图像。引导加载程序发生了更改,更改了正在使用的串行设备名称。
图像文件名已更改为更冗长的命名,而不是使用设备的简写或昵称。
构建脚本现在有一个文档页面,可以更深入地解释它们。
RaspberryPi Zero 2 W设备现在也有文档。
这些是 来自公众的人,他们帮助了Kali 和团队进行最后一次发布。我们想赞扬他们的工作 (我们喜欢在应得的地方给予赞扬!
任何人都可以帮忙,任何人都可以参与其中!
新鲜图片 :那你还在等什么呢?已经开始下载了!
经验丰富的Kali Linux用户已经意识到了这一点,但对于那些没有意识到这一点的用户,我们也确实会 *** 每周构建 版本,您也可以使用它们。如果您无法等待我们的下一个版本,并且在下载映像时想要最新的软件包 (或错误修复 ),则可以改用每周映像。这样,您将有更少的更新要做。 只要知道这些是自动构建,我们不像标准发布映像那样进行 QA 。但是我们很乐意接受有关这些图像的错误报告,因为我们希望在下一个版本之前修复任何问题!
现有安装 :如果您已经有一个现有的 Kali Linux 安装,请记住,您始终可以执行快速更新:
你现在应该在Kali Linux 2022.1上。我们可以通过执行以下操作进行快速检查:
注意: uname -r 的输出可能因系统体系结构而异。
渗透测试应该怎么做呢?
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-namelistings/param-name
param-valuefalse/param-value
3、任意文件上传漏洞
漏洞描述
目标网站允许用户向网站直接上传文件,但未对所上传文件的类型和内容进行严格的过滤。
渗透测试
① 收集网站信息,判断使用的语言(PHP,ASP, *** P)
② 过滤规则绕过 *** :文件上传绕过技巧
风险评级:高风险
安全建议
① 对上传文件做有效文件类型判断,采用白名单控制的 *** ,开放只允许上传的文件型式;
② 文件类型判断,应对上传文件的后缀、文件头、图片类的预览图等做检测来判断文件类型,同时注意重命名(Md5加密)上传文件的文件名避免攻击者利用WEB服务的缺陷构造畸形文件名实现攻击目的;
③ 禁止上传目录有执行权限;
④ 使用随机数改写文件名和文件路径,使得用户不能轻易访问自己上传的文件。
4、命令注入漏洞
漏洞描述
目标网站未对用户输入的字符进行特殊字符过滤或合法性校验,允许用户输入特殊语句,导致各种调用系统命令的web应用,会被攻击者通过命令拼接、绕过黑名单等方式,在服务端运行恶意的系统命令。
渗透测试
风险评级:高风险
安全建议
① 拒绝使用拼接语句的方式进行参数传递;
② 尽量使用白名单的方式(首选方式);
③ 过滤危险 *** 、特殊字符,如:【|】【】【;】【’】【"】等
5、SQL注入漏洞
漏洞描述
目标网站未对用户输入的字符进行特殊字符过滤或合法性校验,允许用户输入特殊语句查询后台数据库相关信息
渗透测试
① 手动测试:判断是否存在SQL注入,判断是字符型还是数字型,是否需要盲注
② 工具测试:使用sqlmap等工具进行辅助测试
风险评级:高风险
安全建议
① 防范SQL注入攻击的更佳方式就是将查询的逻辑与其数据分隔,如Java的预处理,PHP的PDO
② 拒绝使用拼接SQL的方式
6、跨站脚本漏洞
漏洞描述
当应用程序的网页中包含不受信任的、未经恰当验证或转义的数据时,或者使用可以创建 HTML或JavaScript 的浏览器 API 更新现有的网页时,就会出现 XSS 缺陷。XSS 让攻击者能够在受害者的浏览器中执行脚本,并劫持用户会话、破坏网站或将用户重定向到恶意站点。
三种XSS漏洞:
① 存储型:用户输入的信息被持久化,并能够在页面显示的功能,都可能存在存储型XSS,例如用户留言、个人信息修改等。
② 反射型:URL参数需要在页面显示的功能都可能存在反射型跨站脚本攻击,例如站内搜索、查询功能。
③ DOM型:涉及DOM对象的页面程序,包括:document.URL、document.location、document.referrer、window.location等
渗透测试
存储型,反射型,DOM型
风险评级:高风险
安全建议
① 不信任用户提交的任何内容,对用户输入的内容,在后台都需要进行长度检查,并且对【】【】【"】【’】【】等字符做过滤
② 任何内容返回到页面显示之前都必须加以html编码,即将【】【】【"】【’】【】进行转义。
7、跨站请求伪造漏洞
漏洞描述
CSRF,全称为Cross-Site Request Forgery,跨站请求伪造,是一种 *** 攻击方式,它可以在用户毫不知情的情况下,以用户的名义伪造请求发送给被攻击站点,从而在未授权的情况下进行权限保护内的操作,如修改密码,转账等。
渗透测试
风险评级:中风险(如果相关业务极其重要,则为高风险)
安全建议
① 使用一次性令牌:用户登录后产生随机token并赋值给页面中的某个Hidden标签,提交表单时候,同时提交这个Hidden标签并验证,验证后重新产生新的token,并赋值给hidden标签;
② 适当场景添加验证码输入:每次的用户提交都需要用户在表单中填写一个图片上的随机字符串;
③ 请求头Referer效验,url请求是否前部匹配Http(s)😕/ServerHost
④ 关键信息输入确认提交信息的用户身份是否合法,比如修改密码一定要提供原密码输入
⑤ 用户自身可以通过在浏览其它站点前登出站点或者在浏览器会话结束后清理浏览器的cookie;
8、内部后台地址暴露
漏洞描述
一些仅被内部访问的地址,对外部暴露了,如:管理员登陆页面;系统监控页面;API接口描述页面等,这些会导致信息泄露,后台登陆等地址还可能被爆破。
渗透测试
① 通过常用的地址进行探测,如login.html,manager.html,api.html等;
② 可以借用burpsuite和常规页面地址字典,进行扫描探测
风险评级:中风险
安全建议
① 禁止外网访问后台地址
② 使用非常规路径(如对md5加密)
9、信息泄露漏洞
漏洞描述
① 备份信息泄露:目标网站未及时删除编辑器或者人员在编辑文件时,产生的临时文件,或者相关备份信息未及时删除导致信息泄露。
② 测试页面信息泄露:测试界面未及时删除,导致测试界面暴露,被他人访问。
③ 源码信息泄露:目标网站文件访问控制设置不当,WEB服务器开启源码下载功能,允许用户访问网站源码。
④ 错误信息泄露:目标网站WEB程序和服务器未屏蔽错误信息回显,页面含有CGI处理错误的代码级别的详细信息,例如SQL语句执行错误原因,PHP的错误行数等。
⑤ 接口信息泄露:目标网站接口访问控制不严,导致网站内部敏感信息泄露。
渗透测试
① 备份信息泄露、测试页面信息泄露、源码信息泄露,测试 *** :使用字典,爆破相关目录,看是否存在相关敏感文件
② 错误信息泄露,测试 *** :发送畸形的数据报文、非正常的报文进行探测,看是否对错误参数处理妥当。
③ 接口信息泄露漏洞,测试 *** :使用爬虫或者扫描器爬取获取接口相关信息,看目标网站对接口权限是否合理
风险评级:一般为中风险,如果源码大量泄漏或大量客户敏感信息泄露。
安全建议
① 备份信息泄露漏洞:删除相关备份信息,做好权限控制
② 测试页面信息泄露漏洞:删除相关测试界面,做好权限控制
③ 源码信息泄露漏洞:做好权限控制
④ 错误信息泄露漏洞:将错误信息对用户透明化,在CGI处理错误后可以返回友好的提示语以及返回码。但是不可以提示用户出错的代码级别的详细原因
⑤ 接口信息泄露漏洞:对接口访问权限严格控制
10、失效的身份认证
漏洞描述
通常,通过错误使用应用程序的身份认证和会话管理功能,攻击者能够破译密码、密钥或会话令牌, 或者利用其它开发缺陷来暂时性或永久性冒充其他用户的身份。
渗透测试
① 在登陆前后观察,前端提交信息中,随机变化的数据,总有与当前已登陆用户进行绑定的会话唯一标识,常见如cookie
② 一般现在网站没有那种简单可破解的标识,但是如果是跨站认证,单点登录场景中,可能为了开发方便而简化了身份认证
风险评级:高风险
安全建议
① 使用强身份识别,不使用简单弱加密方式进行身份识别;
② 服务器端使用安全的会话管理器,在登录后生成高度复杂的新随机会话ID。会话ID不能在URL中,可以安全地存储,在登出、闲置超时后使其失效。
11、失效的访问控制
漏洞描述
未对通过身份验证的用户实施恰当的访问控制。攻击者可以利用这些缺陷访问未经授权的功能或数据,例如:访问其他用户的帐户、查看敏感文件、修改其他用户的数据、更改访问权限等。
渗透测试
① 登入后,通过burpsuite 抓取相关url 链接,获取到url 链接之后,在另一个浏览器打开相关链接,看能够通过另一个未登入的浏览器直接访问该功能点。
② 使用A用户登陆,然后在另一个浏览器使用B用户登陆,使用B访问A独有的功能,看能否访问。
风险评级:高风险
安全建议
① 除公有资源外,默认情况下拒绝访问非本人所有的私有资源;
② 对API和控制器的访问进行速率限制,以更大限度地降低自动化攻击工具的危害;
③ 当用户注销后,服务器上的Cookie,JWT等令牌应失效;
④ 对每一个业务请求,都进行权限校验。
12、安全配置错误
漏洞描述
应用程序缺少适当的安全加固,或者云服务的权限配置错误。
① 应用程序启用或安装了不必要的功能(例如:不必要的端口、服务、网页、帐户或权限)。
② 默认帐户的密码仍然可用且没有更改。
③ 错误处理机制向用户披露堆栈跟踪或其他大量错误信息。
④ 对于更新的系统,禁用或不安全地配置最新的安全功能。
⑤ 应用程序服务器、应用程序框架(如:Struts、Spring、ASP.NET)、库文件、数据库等没有进行相关安全配置。
渗透测试
先对应用指纹等进行信息搜集,然后针对搜集的信息,看相关应用默认配置是否有更改,是否有加固过;端口开放情况,是否开放了多余的端口;
风险评级:中风险
安全建议
搭建最小化平台,该平台不包含任何不必要的功能、组件、文档和示例。移除或不安装不适用的功能和框架。在所有环境中按照标准的加固流程进行正确安全配置。
13、使用含有已知漏洞的组件
漏洞描述
使用了不再支持或者过时的组件。这包括:OS、Web服务器、应用程序服务器、数据库管理系统(DBMS)、应用程序、API和所有的组件、运行环境和库。
渗透测试
① 根据前期信息搜集的信息,查看相关组件的版本,看是否使用了不在支持或者过时的组件。一般来说,信息搜集,可通过http返回头、相关错误信息、应用指纹、端口探测(Nmap)等手段搜集。
② Nmap等工具也可以用于获取操作系统版本信息
③ 通过CVE,CNVD等平台可以获取当前组件版本是否存在漏洞
风险评级:按照存在漏洞的组件的安全风险值判定当前风险。
安全建议
① 移除不使用的依赖、不需要的功能、组件、文件和文档;
② 仅从官方渠道安全的获取组件(尽量保证是最新版本),并使用签名机制来降低组件被篡改或加入恶意漏洞的风险;
③ 监控那些不再维护或者不发布安全补丁的库和组件。如果不能打补丁,可以考虑部署虚拟补丁来监控、检测或保护。
详细学习可参考:
渗透测试环境搭建
QC986-27D34-6M3TY-JJXP9-TBGMD
docker search upload-labs
docker pull c0ny1/upload-labs
docker run -dt --name upload -p 80:80 --rm c0ny1/upload-labs
0条大神的评论