Sorry, this page is no longer available
Sorry, this page is no longer available
We may earn an affiliate commission when you visit our partners.
Course image
Sunny Gao

你想了解黑客是如何攻击网站和Web应用的吗,你想知道如何保护他们免受黑客攻击吗?你想知道你写出的代码是安全的吗?

那么让我们一起走进web网站安全测试吧。

这是一套关于网站和web应用渗透测试的综合课,这门课,将带你从一个初学者开始,从一个没有渗透测试的起点开始,走向专业的渗透测试。

本课程专注于渗透测试(penetration testing)的实际操作,包括每次攻击背后的理论。在进入渗透测试之前,您将首先学习如何搭建一套渗透测试环境,把所需的软件都安装上,以便在你自己的机器上实践渗透测试。

你会学到什么是网站,它是如何工作的,它依赖什么,什么是网络服务器,数据库,以及所有这些组件如何协同工作给我们提供的功能。

一旦你了解了网站是如何工作的,我们就开始讨论如何利用这些组件和这种通讯方式来讨论黑客是如何进行攻击的。本课程将带您从一个新手到一个更高级的水平——当你完成这套课以后,你将能够从黑帽黑客那里,对Web站点和Web应用进行安全测试,,不光是这些,你还能够解决这些漏洞并且对网站进行安全保护。在这套课程中所解释的所有攻击都是针对我实验环境中的真实设备进行的。

本课程分为三个主要部分:

Read more

你想了解黑客是如何攻击网站和Web应用的吗,你想知道如何保护他们免受黑客攻击吗?你想知道你写出的代码是安全的吗?

那么让我们一起走进web网站安全测试吧。

这是一套关于网站和web应用渗透测试的综合课,这门课,将带你从一个初学者开始,从一个没有渗透测试的起点开始,走向专业的渗透测试。

本课程专注于渗透测试(penetration testing)的实际操作,包括每次攻击背后的理论。在进入渗透测试之前,您将首先学习如何搭建一套渗透测试环境,把所需的软件都安装上,以便在你自己的机器上实践渗透测试。

你会学到什么是网站,它是如何工作的,它依赖什么,什么是网络服务器,数据库,以及所有这些组件如何协同工作给我们提供的功能。

一旦你了解了网站是如何工作的,我们就开始讨论如何利用这些组件和这种通讯方式来讨论黑客是如何进行攻击的。本课程将带您从一个新手到一个更高级的水平——当你完成这套课以后,你将能够从黑帽黑客那里,对Web站点和Web应用进行安全测试,,不光是这些,你还能够解决这些漏洞并且对网站进行安全保护。在这套课程中所解释的所有攻击都是针对我实验环境中的真实设备进行的。

本课程分为三个主要部分:

一.  信息收集-本节将教你如何收集你的目标网站的信息,你将学习如何发现使用的是哪个DNS服务器,网站服务器,子域名,未发布的目录,敏感文件,用户电子邮件,同一服务器上的网站,甚至是主机提供商。这一信息至关重要,因为它增加了成功访问目标网站的机会。

二.  漏洞的发现和修复在这以部分,您将学习如何发现和修复大量的漏洞,这部分分为若干小节,每小节覆盖一个特定的漏洞,首先你会学到这是什么漏洞,这个漏洞能允许我们做什么,最后我们将看看什么样的代码导致这个漏洞,向你展示如何修复它和对网站进行安全防护,课程中覆盖以下漏洞:

1.  文件上传(File upload):此漏洞允许攻击者在目标web服务器上上传可执行文件,课程将介绍如何防止利用这些漏洞来控制目标网站。

2.  代码执行(Code Execution)——此漏洞允许用户在目标web服务器上运行系统代码,这可以用于执行恶意代码并获得反向shell访问,从而使攻击者完全控制目标web服务器。课程将介绍如何利用这个漏洞来执行恶意代码,获得反向连接来让攻击者完全控制目标web服务器。

3. 本地文件包含——这个漏洞可以用来阅读目标服务器上的任何文件,可以利用这一点阅读敏感文件,你将学习如何防止这种漏洞,防止得到反向连接,来避免让攻击者获得完全控制目标web服务器的权限。

4. 远程文件包含——此漏洞可以在目标web服务器上加载远程文件,你将学习如何防止利用此漏洞完全控制目标web服务器。

5. SQL注入——这是这套课中最大的一部分,因为这是最危险的漏洞,它无处不在,不光这样,可以利用它做上面的漏洞允许我们做的所有的事情,甚至更多,它可以让你在不知道密码的情况下登录管理员账号,如何防止访问数据库并获得存储的所有数据,如用户名、密码、信用卡....等等,防止用SQL注入读取存储在服务器中的文件,防止将文件写入服务器,甚至得到一个反向连接,学习如何防止攻击者控制web服务器.

6. 跨站脚本攻击(XSS)——这个漏洞可以用来让访问有漏洞的页面的用户运行javascript代码,不光这样,您将学习如何从用户那里窃取credentials(比如登录密码),甚至可以访问他们的计算机。您将学习这三种类型(反射、存储和基于dom)。

7. 不安全的会话管理——在这一部分,您将学习如何利用web应用程序中不安全的会话管理,以及在不知道其密码的情况下登录到其他用户帐户,您还将了解如何发现和利用CSRF(Cross-site request forgery跨站请求伪造)。

8. 暴力和字典攻击——在这一部分,您将了解这些攻击是什么,它们之间的区别是什么,以及如何进行攻击,在成功的情况下,您将能够猜到攻击目标的登录的密码。

三. 实施漏洞利用,在本节中,您将学习利用上述漏洞中你获得的权限能做什么,您将学习如何转换反弹shell访问到Weevely访问,反过来也一样,您还会学习如何在目标服务器上运行系统命令,目录之间切换,访问在同一台服务器上的其他网站,上传/下载文件,访问数据库,甚至把整个数据库下载到您的本地机器上,您将学习如何绕过安全性去做所有的操作,即使你没有权限这样做.

 这门课中所有的攻击都是在真实网站上的实际的攻击,在每一个漏洞中,你将学习到基本的漏洞发掘,它会给你更多的特权或允许你绕过安全测量,您将学习如何以及为什么这些漏洞可以被利用,如何修复它们,以及什么是正确的做法,以避免套管。

注意:本课程仅为教学目的而创建,所有的攻击都是在我自己的测试环境中或我允许测试的设备上发起的。

我的目的是通过揭露真正的黑帽黑客所使用的方法来教育人们并提高他们的意识,及展示如何从这些黑客那里保护系统。

Enroll now

What's inside

Learning objectives

  • 建一个测试环境来进行渗透测试
  • 安装kali linux -渗透测试操作系统
  • 在虚拟机中安装windows和易受攻击的操作系统进行测试
  • 学习linux命令以及如何在终端上使用
  • 学习linux基础知识
  • 了解网站和web应用程序是如何工作的
  • 了解浏览器如何与网站进行通讯
  • 收集有关网站的敏感信息
  • 发现目标网站使用的服务器、技术和服务
  • 发现与特定网站相关的电子邮件和敏感数据
  • 查找与网站相关的所有子域
  • 发现目标网站相关的未发布的目录和与文件
  • 查找与目标网站相同的服务器上的所有网站
  • 发现、利用和修复文件上传漏洞
  • 利用文件上传漏洞,获得对目标网站的完全控制
  • 使用代理截取请求
  • 发现、利用和修复代码执行漏洞
  • 利用高级的代码执行漏洞,完全控制目标网站
  • 发现、利用和修复本地文件包含漏洞
  • 利用高级的本地文件包含漏洞,获得对目标网站的完全控制
  • 利用高级的远程文件包含漏洞,获得对目标网站的完全控制
  • 发现和利用sql注入漏洞
  • 绕过登录页面限制并使用sql注入登录admin
  • 写sql查询语句查找数据库、表以及敏感数据,比如使用sql注入用户名、admin密码
  • 绕过过滤,使用sql注入能够不用密码登录
  • 采用sql查询语句在更安全的页面中去发现和利用sql注入
  • 绕过过滤和安全测量
  • 发现和开发盲sql注入(blind sql injections)
  • 使用sql注入向服务器读取/写入文件
  • 使用sql注入获得对目标服务器的完全控制
  • 快速地给sql注入打补丁
  • 学习编写正确sql语句的方法来以防止sql注入
  • 发现基本和高级反射型xss(reflected xss)漏洞
  • 发现基本和高级存储型xss(stored xss)漏洞
  • 发现基于dom的xss(dom-based xss)漏洞
  • 如何使用beef框架(web框架攻击平台)
  • 使用反射型、存储型和基于dom的xss漏洞将受害者与beef挂钩
  • 从上钩的受害者那里盗取证书
  • 在上钩的受害者那里运行javascript代码
  • 创建一个不可检测的木马
  • 黑客入侵已上钩的电脑,并完全控制它们
  • 修复xss漏洞,作为一个用户,从这些漏洞中保护自己
  • 暴力攻击和wordlist攻击是什么意思
  • 创建一个单词列表或字典
  • 进行wordlist攻击来猜测管理员的密码
  • 使用web代理自动发现上述所有漏洞
  • 在目标网络web服务器上运行系统命令
  • 访问文件系统(切换目录、读/写文件)
  • 下载、上传文件
  • 绕过安全测量
  • 访问同一web服务器上的所有网站
  • 连接数据库并执行sql查询或将整个数据库下载到本地机器
  • Show more
  • Show less

Syllabus

课程介绍
课程总介绍(必须看)
前期准备,搭建渗透测试环境
渗透环境总览
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
涵盖了渗透测试的各个阶段,从信息收集到漏洞利用,为安全专业人员提供了全面的实践指导
详细讲解了各种Web漏洞的原理、利用方法和修复方案,帮助开发人员编写更安全的代码
从零开始,讲解渗透测试的基础知识和常用工具,适合没有渗透测试经验的初学者入门
介绍了BeEF框架等高级渗透测试工具的使用,帮助安全专业人员提升渗透测试技能
课程中涉及的某些漏洞利用技术可能具有一定的风险,请务必在授权的测试环境中进行操作
需要学习Linux命令和网络基础知识,以便更好地理解渗透测试的原理和方法

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Web安全渗透测试入门到实战

根据学生们的说法,这门名为“Web网站安全测试(Penetration Testing)- 从初学到精通”的课程是一门非常实用适合初学者的Web安全入门课程。许多学习者特别赞赏课程实践性强的特点,认为实验环境搭建漏洞复现过程讲得非常详细,跟着操作能学到真东西讲师的讲解清晰易懂,能够帮助零基础的学生快速入门掌握核心概念。尽管有少数评论提到部分内容或工具可能需要结合最新资料学习,但总体来看,课程质量很高,为希望进入Web安全领域或提升技能的学习者提供了坚实的基础评价普遍积极
老师讲课思路清晰,通俗易懂。
"老师讲课真的很有条理,能把复杂的漏洞原理用比较通俗的方式讲出来。"
"非常感谢老师,讲得很清楚,让我对Web安全有了更系统的认识。"
"讲师对课程内容很熟悉,解答疑问也很有耐心,点赞!"
内容由浅入深,对零基础友好。
"我是完全的小白,之前对Web安全一无所知,这门课让我顺利入了这个门。"
"老师的讲解很耐心细致,从最基础开始讲起,让新手也能跟上节奏。"
"课程结构设计得很好,从原理到实践,逐步深入,没有基础也能理解。"
课程注重实践操作,动手实验多。
"课程实践性非常强,跟着老师敲代码做实验,学到了很多实用的东西。"
"我喜欢这种干货满满的课程,通过动手操作能更深刻理解漏洞原理和利用。"
"环境搭建很详细,每一个漏洞都有实际的演示和复现,非常棒!"
少数地方工具版本或技术有变化。
"课程总体很好,但录制时间可能有点久了,有些工具的版本和命令跟现在稍有不同,需要自己查一下。"
"少数攻击手法或防御措施有了新的发展,建议补充一些最新的内容就更完美了。"
"在跟着练习的时候遇到了一两个小问题,后来发现是因为软件版本差异导致的。"

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Web网站安全测试(Penetration Testing)- 从初学到精通 with these activities:
阅读《白帽子讲Web安全》
阅读Web安全经典书籍,建立Web安全基础知识体系,为渗透测试打下基础。
Show steps
  • 通读《白帽子讲Web安全》,重点关注XSS、SQL注入等章节。
  • 理解书中漏洞的原理和防御方法。
  • 尝试应用书中防御方法,提高代码安全性。
阅读《Web前端黑客技术揭秘》
阅读Web前端安全书籍,了解前端漏洞的原理和利用方式,扩展渗透测试的知识面。
Show steps
  • 通读《Web前端黑客技术揭秘》,重点关注XSS和CSRF章节。
  • 分析书中案例,理解漏洞的成因和利用方法。
  • 尝试复现书中漏洞,加深理解。
SQL注入练习
通过SQL注入练习,掌握不同类型的SQL注入漏洞的利用方法,提高实战能力。
Show steps
  • 在SQLi-Labs等平台上进行SQL注入练习。
  • 尝试不同的注入技巧,例如联合查询、报错注入、盲注等。
  • 分析练习中的SQL语句,理解注入原理。
Three other activities
Expand to see all activities and additional details
Show all six activities
整理渗透测试工具清单
整理渗透测试工具清单,熟悉常用的渗透测试工具及其功能,提高渗透测试效率。
Show steps
  • 收集常用的渗透测试工具,例如Nmap、Burp Suite、SQLmap等。
  • 整理工具清单,包括工具名称、功能、使用方法等。
  • 定期更新工具清单,保持工具的最新版本。
撰写渗透测试报告
撰写渗透测试报告,总结渗透测试过程和发现的漏洞,提高分析和表达能力。
Show steps
  • 选择一个目标网站进行渗透测试。
  • 记录渗透测试过程中的每一个步骤和发现的漏洞。
  • 撰写渗透测试报告,包括漏洞描述、危害、修复建议等。
参与开源安全项目
参与开源安全项目,学习最新的安全技术和漏洞利用方法,提高安全意识和技能。
Show steps
  • 选择一个感兴趣的开源安全项目,例如OWASP ZAP。
  • 阅读项目文档,了解项目的功能和架构。
  • 参与项目开发,例如修复漏洞、编写测试用例等。

Career center

Learners who complete Web网站安全测试(Penetration Testing)- 从初学到精通 will develop knowledge and skills that may be useful to these careers:
红队队员
红队队员模拟真实攻击,评估组织的安全防御能力。这项工作需要深入了解各种攻击技术和防御绕过方法。本课程通过详细讲解各种Web应用漏洞的原理、发现和利用过程,为红队队员提供了重要的实战技能。学习本课程,你将能够更有效地模拟Web应用攻击,并评估组织的防御能力。课程中实践性的渗透测试训练,将帮助红队队员快速掌握实际的攻击技能。
渗透测试工程师
渗透测试工程师负责评估和提高Web应用程序和网站的安全性。你将模拟黑客攻击,寻找并利用漏洞,然后提供修复建议。本课程通过教授如何搭建渗透测试环境、理解网站工作原理以及各种攻击技术(如SQL注入和XSS),为你的渗透测试职业生涯打下坚实的基础。课程中涵盖的信息收集、漏洞发现和利用等模块,将直接应用于渗透测试的实际工作中。学习本课程,你将能够像专业的渗透测试人员一样思考和行动,从而更好地保护Web应用的安全。
漏洞猎人
漏洞猎人通过参与漏洞赏金计划,寻找并报告软件中的安全漏洞。这项工作需要敏锐的洞察力和深入的技术知识。本课程通过详细讲解各种Web应用漏洞的原理、发现和利用过程,为漏洞猎人提供了重要的知识储备和实战技能。学习本课程,你将能够更有效地发现Web应用中的漏洞,并获得相应的赏金。课程中实践性的渗透测试训练,将帮助漏洞猎人快速掌握漏洞分析和利用的技能。
Web应用安全工程师
Web应用安全工程师专注于Web应用程序的安全开发和维护。他们需要了解各种Web安全漏洞,并采取相应的防护措施。本课程通过深入讲解各种Web应用漏洞(如文件上传、代码执行、SQL注入、XSS等)以及修复方法,为Web应用安全工程师提供了宝贵的知识和技能。学习本课程,你将能够识别和修复Web应用中的安全缺陷,从而构建更安全的Web应用系统。实际操作的渗透测试练习将帮助工程师们在实际开发中避免常见的安全错误。
漏洞分析师
漏洞分析师主要负责寻找和分析软件或系统中的安全漏洞。这项工作需要深入了解各种漏洞类型和利用方法。本课程通过详细讲解各种Web应用漏洞的原理、发现和利用过程,为漏洞分析师提供了重要的知识储备。学习本课程,你将能够更有效地识别和分析Web应用中的漏洞,并为开发人员提供修复建议。本课程中实践性的渗透测试训练,将帮助漏洞分析师快速掌握实际的漏洞分析技能。
网络安全分析师
网络安全分析师负责监测和分析网络流量,以识别潜在的安全威胁和漏洞。本课程的内容可能有助于网络安全分析师更好地理解黑客攻击的手段和方法。通过学习渗透测试技术,分析师可以更有效地识别和响应网络中的恶意活动。课程中讲解的信息收集、漏洞识别和利用,以及安全防护措施,都可以帮助网络安全分析师提高安全监测和事件响应能力,从而提升整体的网络安全态势。
安全工程师
安全工程师负责企业信息系统的安全规划、实施和维护。他们需要具备广泛的安全知识和技能,包括安全架构设计、漏洞管理和安全事件响应。本课程可能为安全工程师提供Web安全方面的专业知识。通过学习本课程,你将能够更好地理解Web应用面临的安全威胁,并采取有效的防护措施。课程中涵盖的渗透测试和漏洞修复技术,可以帮助安全工程师提升整体的安全防护能力。
安全顾问
安全顾问为企业提供安全评估、风险管理和安全解决方案。他们需要具备广泛的安全知识和技能,包括渗透测试、漏洞评估和安全架构设计。本课程可能为安全顾问提供有关Web安全方面的专业知识。通过学习本课程,顾问可以更好地理解Web应用面临的安全威胁,并为客户提供更有效的安全建议和解决方案。课程中涉及的渗透测试和漏洞修复技术,可以帮助安全顾问更好地评估客户的安全状况,并提出针对性的改进方案。
软件开发工程师
软件开发工程师负责设计、开发和测试软件应用程序。为了构建安全的Web应用,开发工程师需要了解常见的Web安全漏洞和防御措施。本课程详细讲解了各种Web应用漏洞的原理和修复方法,为软件开发工程师提供了宝贵的安全知识。学习本课程,你将能够在开发过程中避免常见的安全错误,并编写更安全的代码。课程中强调的渗透测试和漏洞修复,将使你能够从攻击者的角度思考问题,提高代码的安全性。
信息安全审计员
信息安全审计员负责评估企业信息系统的安全合规性。他们需要了解各种安全标准和法规,并对系统进行安全审计。本课程的内容也许可以帮助审计员更好地理解Web应用的安全风险。通过学习渗透测试技术,审计员可以更有效地评估Web应用的安全状况,并识别潜在的安全漏洞。课程中讲解的漏洞类型和修复方法,可以帮助审计员更好地评估企业的安全措施是否充分有效。
安全架构师
安全架构师负责设计和规划企业的信息安全架构。这项工作需要对各种安全技术和风险有深入的理解。本课程有助于安全架构师更好地理解Web应用的安全风险和防御措施。通过学习渗透测试技术,架构师可以更全面地评估Web应用的安全需求,并设计出更有效的安全架构。课程中讲解的各种漏洞类型和修复方法,可以帮助架构师更好地选择和配置安全设备及策略,以提高整体的安全防护能力。通常需要高级学位 (硕士或博士) 。
系统管理员
系统管理员负责维护和管理服务器和网络设备。他们需要确保系统的安全稳定运行,并采取相应的安全措施。本课程可能为系统管理员提供有关Web服务器安全方面的专业知识。通过学习本课程,你将能够更好地理解Web服务器面临的安全威胁,并采取有效的防护措施。课程中涉及的漏洞修复技术,可以帮助系统管理员及时修复服务器上的安全漏洞,防止黑客入侵。
安全产品经理
安全产品经理负责规划和管理安全产品。他们需要了解市场需求和技术趋势,并开发出符合用户需求的安全产品。本课程也许可以帮助产品经理更好地理解Web安全市场的需求。通过学习渗透测试技术,产品经理可以更深入地了解Web应用面临的安全威胁,从而开发出更有效的安全产品。课程中讲解的各种漏洞类型和防御方法,可以帮助产品经理更好地定义产品的特性和功能。
安全培训师
安全培训师负责为企业或个人提供安全培训课程。他们需要具备扎实的安全知识和良好的沟通能力。本课程的内容可以帮助安全培训师更好地理解Web安全领域的知识。通过学习渗透测试技术,培训师可以更有效地讲解Web应用的安全风险,并提供实用的防御建议。课程中讲解的各种漏洞类型和修复方法,可以帮助培训师设计更全面和有效的安全培训课程。
逆向工程师
逆向工程师分析软件以理解其内部工作原理,通常是为了发现漏洞或恶意代码。本课程可能对逆向工程师有帮助,因为它提供了关于Web应用漏洞的详细信息。通过了解黑客如何利用这些漏洞,逆向工程师可以更好地识别和分析恶意软件。课程中讲解的漏洞类型和利用方法,可以帮助逆向工程师更有效地分析Web应用的安全性。

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Web网站安全测试(Penetration Testing)- 从初学到精通.
本书是Web安全领域的经典入门书籍,详细介绍了常见的Web安全漏洞和防御方法。本书内容全面、通俗易懂,适合初学者快速入门Web安全。阅读本书可以帮助学生建立Web安全的基础知识体系,为深入学习渗透测试打下基础。本书既可以作为参考书,也可以作为课外阅读材料。
本书深入剖析了Web前端安全问题,涵盖XSS、CSRF等多种攻击方式。阅读本书可以帮助学生更好地理解Web安全漏洞的原理和利用方法,为渗透测试提供更全面的视角。本书适合作为补充阅读材料,加深对Web安全攻防的理解。

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser