入侵Web应用程序

入侵Web应用程序

我们可以使用各种方法/方法作为执行攻击的参考。

Web应用程序 - PenTesting方法

在开发攻击模型时可以考虑以下标准。

在以下列表中,OWASP是最活跃的,并且有许多贡献者。我们将重点关注OWASP技术,每个开发团队在设计Web应用程序之前都会考虑这些技术。

  • PTES - 渗透测试执行标准
  • OSSTMM - 开源安全测试方法手册
  • OWASP测试技术 - 开放式Web应用程序安全协议

OWASP TOP 10漏洞

Open Web Application Security Protocol团队发布了近年来在Web上更为普遍的十大漏洞。以下是基于Web的应用程序中更常见的安全漏洞列表。

  • 注入攻击
  • 身份验证和会话管理中断.
  • 跨站脚本(XSS).
  • 不安全的直接对象引用。
  • 安全配置错误。
  • 敏感数据暴露。
  • 缺少功能级访问控制。
  • 跨站请求伪造(CSRF).
  • 使用具有已知漏洞的组件。
  • 未经验证的重定向和转发。

动手实践

为了理解每种技术,下面我们将使用一个示例应用程序。我们将对’WebGoat’进行攻击,这是一个明确开发的J2EE应用程序,具有用于学习目的的安全漏洞。

有关webgoat项目的完整详细信息,请访问 https://www.owasp.org/index.php/Category:OWASP_WebGoat_Project 。要下载WebGoat应用程序,请导航到 https://github.com/WebGoat/WebGoat/wiki/Installation -(WebGoat-6.0)并转到下载部分。

要安装下载的应用程序,首先要确保没有在端口8080上运行任何应用程序。只需使用一个命令即可安装它 - java -jar WebGoat-6.0.1-war-exec.jar。有关更多详细信息,请访问WebGoat安装

安装后,应该可以通过导航到http://localhost:8080/WebGoat/attack来访问应用程序,页面将显示如下所示。

webgoat项目

我们可以使用登录页面中显示的guestadmin 凭据。

Web代理

为了拦截客户端(浏览器)和服务器(在我们的案例中托管Webgoat应用程序的系统)之间的流量,我们需要使用Web代理。使用可从 https://portswigger.net/burp/download.html 下载的Burp Proxy

对于本教程中的示例,下载免费版本的burp套件就足够了,如下所示。

Webgoat

配置Burp Suite

Burp Suite是一个Web代理,可以拦截浏览器和Web服务器发送和接收的每个信息包。这有助于我们在客户端将信息发送到Web服务器之前修改内容。

Burp Suite

第1步 - 应用程序安装在端口8080上,Burp安装在端口8181上,如下所示。启动Burp套件并进行以下设置,以便在端口8181中启动它,如下所示。

Burp安装

第2步 - 应该确保Burp正在监听安装了应用程序的端口为:8080,以便Burp套件可以拦截流量。此设置应在Burp Suite的范围选项卡上完成,如下所示。

Burp监听

第3步 - 然后进行浏览器代理设置以收听端口8181(Burp Suite端口)。因此,我们已将Web代理配置为拦截客户端(浏览器)和服务器(Webserver)之间的流量,如下所示 -

Web代理配置

第4步 - 配置如下图所示,简单的工作流程图如下所示 -

工作流程图