渗透安全及渗透测试流程_渗透测试 业务安全,不愧是阿里P8

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注网络安全)
img

正文

渗透测试简介

什么是渗透测试?

渗透测试是通过模拟恶意黑客的攻击方法,来评估计算机网络系统安全的一种评估方法。这个过程包括对系统的任何弱点、技术缺陷或漏洞的主动分析,这个分析是从一个攻击者可能存在的位置来进行的,并且从这个位置有条件主动利用安全漏洞。

渗透测试还具备以下两个显著特点:

渗透测试是一个渐进的并且逐步深入的过程。
渗透测试是选择不影响业务系统正常运行的攻击方法进行的测试。

PETS渗透测试执行标准

Step1、前期交互阶段:在前期交互阶段,在渗透测试团队与客户进行交互讨论,最重要的是确定渗透测试的范围、目标、限制条件以及服务合同细节。

Step2、情报搜集阶段:在目标范围确定之后,将进入情报搜集阶段,渗透测试团队可以利用各种信息来源与搜集技术方法,尝试获取更多关于目标组织网络拓扑、系统配置与安全防御措施的信息。

Step3、威胁建模阶段:在搜集到充足的情报信息之后,渗透测试团队的成员们停下敲击键盘,大家聚到一起针对获取的信息进行威胁建模(Threat Modeling)与攻击规划。这是渗透测试过程中非常重要,但很容易被忽略的一个关键点。

Step4、漏洞分析阶段:在确定出最可行的攻击通道之后,接下来需要考虑该如何取得目标系统的访问控制权,即漏洞分析(Vulnerability Analysis)。

Step5、渗透攻击阶段:渗透攻击是是渗透测试过程中最有魅力的环节。在此环节中,渗透测试团队需要利用他们所找出的目标系统安全漏洞,来真正入侵系统当中,获得访问权。

Step6、后渗透攻击阶段:后渗透攻击是整个渗透测试过程中最能体现渗透测试团队创造力与技术能力的环节,前面的环节可以说是按部就班地完成非常普遍的目标,而在这个环节中,需要渗透测试团队根据目标组织的业务经营模式,保护资产形式与安全防御计划的不同特点,自主设计出攻击目标,识别关键基础设施,并寻找客户组织最具价值和尝试安全保护的信息和资产,最终能够对客户组织造成最重要业务影响的攻击途径。

Step7、撰写报告阶段:渗透测试过程最终向客户组织提交,取得认可并成功获得合同付款的就是一份渗透测试报告。这份情报凝聚了之前所有阶段之中渗透测试团队所获取的关键情报信息、探测和发掘出的系统安全漏洞、成功渗透攻击的过程,以及造成业务影响后果的途径,同时还要站在防御者的角度上,帮助他们分析安全防御体系中的薄弱环节、存在的问题,以及修补与升级技术方案。

实际渗透测试中的流程

1、明确目标:当拿到一个渗透测试项目时,我们首先应该明确客户要求我们进行渗透测试的范围以及整体项目的时间。

2、信息收集:子域名、系统版本、架构、真实IP地址、whios查询、历史漏洞查询、指纹识别等。

3、漏洞发现:通过漏扫软件结合手动挖掘常规的web、系统等漏洞。

4、漏洞利用:由浅入深、旁敲侧推、尽可能的将漏洞的价值发挥到最大化。

5、后渗透:包括内网渗透、权限维持、权限提升,读取用户hash,这里一定要把握好尺度。

6、报告文档阶段:根据之前测试获取的漏洞及企业要求去编写最终的渗透测试报告。

风险规避
不要进行诸如ddos攻击,不破坏数据测试之前对重要数据进行备份
任何测试执行前必须和客户进行沟通,以免引来不必要的麻烦
可以对原始系统生成镜像环境,然后对镜像环境进行的测试
明确渗透测试范围

OWASP Top 10应用安全风险-2017

A1:2017-注入:将不受信任的数据作为命令或查询的一部分发送到解析器时,会产生诸如SQL注入、NoSQL注入、OS注入和LDAP注入的注入缺陷。攻击者的恶意数据可以诱使解析器在没有适当授权的情况下执行非预期命令或访问数据。

A2:2017-失效的身份认证:通常,通过错误使用应用程序的身份认证和会话管理功能,攻击者能够破译密码、密钥或会话令牌,或者利用其它开发缺陷来暂时性或永久性冒充其他用户的身份。

A3:2017-敏感数据泄露:许多Web应用程序和API都无法正确保护敏感数据,例如:财务数据、医疗数据和PII数据。攻击者可以通过窃取过修改未加密的数据来实施信用卡诈骗、身份盗窃或其他犯罪行为。未加密的敏感数据容易受到破坏,因此,我们需要对敏感数据加密,这些数据包括:传输过程中的数据、存储的数据以及浏览器的交互数据。

A4:2017-XML外部实体(XXE):许多较早的或配置错误的XML处理器评估了XML文件中的外部实体引用。攻击者可以利用外部实体窃取使用URL文件处理器的内部文件和共享文件、监听内部扫描端口、执行远程代码和实施拒绝服务攻击。

A5:2017-失效的访问控制:未对通过身份验证的用户实施恰当的访问控制。攻击者可以利用这些缺陷访问未经授权的功能或数据,例如:访问其他用户的账户、查看敏感文件、修改其他用户的数据、更改访问权限等。

A6:2017-安全配置错误:安全配置错误是最常见的安全问题,这通常是由于不安全的默认配置、不完整的临时配置、开源云存储、错误的HTTP标头配置以及包含敏感信息的详细错误信息所造成的。因此,我们不仅需要对所有的操作系统、框架、库和应用程序进行安全配置,而且必须及时修补和升级它们。

A7:2017-跨站脚本:当应用程序的新网页中包含不受信任的、未经恰当验证或转义的数据时,或者使用可以创建HTML或Javascript的浏览器API更新现有的网页时,就会出现XSS缺陷。XSS让攻击者能够在受害者的浏览器中执行脚本,并劫持用户会话,破坏网站或将用户重定向到恶意站点

A8:2017-不安全的反序列化:不安全的反序列化会导致远程代码执行,即使反序列化缺陷不会导致远程代码执行,攻击者也可以利用它们来执行攻击,包括:重播攻击、注入攻击和特权升级攻击。

A9:2017-使用含有已知漏洞的组件:组件(例如:库、框架和其他软件模块)拥有和应用程序相同的权限。如果应用程序中含有已知漏洞的组件的应用程序和API可能会破坏应用程序防御、造成各种攻击并产生严重影响。

A10:2017-不足的日志记录和监控:以及事件响应缺失或无效的集成,使攻击者能够进一步攻击系统、保持持续性或转向更多系统,以及篡改、提取或销毁数据。大多数缺陷研究显示,缺陷被检测出的时间超过200天,且通常通过外部检测方检测,而不是通过内部流程或监控检测。

渗透测试术语简介

白帽子:白帽子描述的是正面的黑客。通过技术手段识别计算机系统或网络系统中的安全漏洞,提交给厂商并提出修复方法。

黑帽子:为了谋取利益而行走在法律边缘甚至违法乱纪的骇客。

灰帽子:介质与黑白之间,无法具体的定性。

肉鸡:就是傀儡机,可以随意被控制的电脑或服务器。

木马:一些用来获取用户权限的程序或者代码段。

后门:为了方便二次进入系统留下的非常隐蔽的后门程序。

shell:命令执行环境,通常所说的拿Shell,就是拿到对方的命令执行环境。

webshell:通过Web入侵的一种脚本工具,可以据此对网站服务进行一定程度的控制。

poc:用来验证漏洞存在的一段代码或程序。

EXP:漏洞利用的一段代码或程序。

Payload:Payload即有效攻击载荷,可以是一段代码,被隐藏并且秘密发送的信息。

WAF:web应用防护系统,也称之为网站应用级入侵防御系统。

提权:利用一些手段将低权限提升为高权限,这里的高权限一般为管理员或系统权限。

API:高级可持续性攻击,是指组织(特别是政府)或者小团体利用先进的攻击手段对特定目标进行长期持续性网络攻击的供给形式(极强的隐蔽性、潜伏期长、持续性强、目标性强)。

CMS:内容管理系统,可以理解为网站的一种模板,将一些功能集中控制管理,是网站搭建变得更为快捷。

黑盒测试:即对内部情况一无所知的情况下进行渗透测试或者其他测试。

白盒测试:了解内部系统、结构、源码的情况下进行渗透测试或其他测试。

灰盒测试:介质于黑白盒之间的渗透测试或其它测试。

0day:0day漏洞是指负责应用程序的程序员或供应商所未知的软件缺陷。因为该漏洞未知,所以没有可用的补丁程序。

1day:1day刚发布但是已被发现官方刚发布补丁网络上还是存在大量的Vulnerability。

Nday:Nday已经被公布出来的0day。

Proxy:代理。一类程序或系统,接收来自客户机算计的流量,并代表客户端与服务器交互,代理能用于过滤应用级别的制定类型的流量或缓存信息以提高性能。许多防火墙依赖代理进行过滤。

加壳/脱壳:“壳”是一段专门负责保护软件不被非法修改或反编译的程序,它们一般都是先于程序运行,拿到控制权,然后完成它们保护软件的任务。加壳就是将软件源码保护,脱壳相反。

Shellcode: shellcode是一段用于利用软件漏洞而执行的代码,shellcode 为16进制的机器码,因为经常让攻击者获得shell而得名。

钓鲸攻击:捕鲸是另一种进化形式的鱼叉式网络钓鱼。它指的是针对高级管理人员和组织其他高级人员的网络钓鱼攻击。通过使电子邮件具有个性化并专门针对相关目标进行定制的攻击。

水坑攻击:顾名思义,是在受害者必经之路设置了一个"水坑(陷阱)” 。最常见的做法是,黑客分析攻击目标的上网活动规律,寻找攻击目标经常访问的网站的弱点,先将此网站“攻破”并植入攻击代码,一旦攻击目标访问该网站就会“中招”。

横向移动:在纵向获取到某个服务器的权限时,我们可以以该服务器为跳板,进行横向拓展的内网攻击。

电信诈骗:是指通过电话、网络和短信方式,编造虚假信息,设置骗局,对受害人实施远程、非接触式诈骗,诱使受害人打款或转账的犯罪行为,通常以冒充他人及仿冒、伪造各种合法外衣和形式的方式达到欺骗的目的。

杀猪盘:网络流行词,电信诈骗的一种,是一种网络交友诱导股票投资、赌博等类型的诈骗方式,"杀猪盘” 则是”从业者们”自己起的名字,是指放长线“养猪”诈骗,养得越久,诈骗得越狠。

脱库:将数据库中的数据导出。

社工库:一种黑客将泄露在暗网/公网上的用户数据整合起来,并用来查询或者社工的手段的工具。

撞库攻击:在获取到用户的一组账号密码时,尝试用该账号登录其他站点/app等。

旁站:同一台服务器上可能存在其他的站点。

蜜罐:可以联想为情报收集系统,用来诱导黑客进行攻击,以此来判断黑客行为,甚至完成反制。

还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!

王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。

对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!

【完整版领取方式在文末!!】

93道网络安全面试题

内容实在太多,不一一截图了

黑客学习资源推荐

最后给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

1️⃣零基础入门
① 学习路线

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

image

② 路线对应学习视频

同时每个成长路线对应的板块都有配套的视频提供:

image-20231025112050764

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注网络安全)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

tps://img-blog.csdnimg.cn/874ad4fd3dbe4f6bb3bff17885655014.png#pic_center)

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注网络安全)
[外链图片转存中…(img-cbmBJnX7-1713620374990)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 15
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Python Web自动化测试是使用Python编程语言进行Web应用程序的自动化测试。通过自动化测试,可以模拟用户行为、检测应用程序的功能和性能,并确保应用程序在不同浏览器和操作系统上的正常运行。 Python Web自动化测试通常包括以下几个步骤: 1. 环境设置:首先,需要安装Python解释器和相关的库,如Selenium、Requests等。这些库提供了用于模拟用户行为和与Web应用程序进行交互的功能。 2. 页面元素定位:在进行Web自动化测试之前,需要确定要测试的页面元素,如按钮、输入框、链接等。使用Selenium库提供的定位方法,可以通过标签名称、类名、ID、CSS选择器等方式找到页面元素。 3. 编写测试脚本:使用Python编写测试脚本,通过调用Selenium库提供的方法,模拟用户的操作,如点击按钮、输入文本、跳转页面等。同时,可以使用断言来验证页面元素的存在、文本内容的正确性等。 4. 执行测试脚本:执行编写好的测试脚本,可以使用命令行工具或集成开发环境来运行。在执行过程中,可以实时查看测试结果,并生成测试报告。 5. 分析测试结果:根据测试结果,分析应用程序的功能是否正常,是否存在Bug或性能问题。如果发现问题,可以通过调试和修复代码来解决。 总结来说,Python Web自动化测试是使用Python编程语言和相关库对Web应用程序进行自动化测试的过程。通过模拟用户行为,可以有效地验证应用程序的功能和性能,并提高测试效率和质量。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [【自动化测试】如何做好python接口/web自动化测试?看看8年测试老鸟的总结......](https://blog.csdn.net/shuang_waiwai/article/details/127808096)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值