E049-论坛漏洞分析及利用-针对bwapp进行web渗透测试的探索

news2025/1/13 3:09:47

课程名称:

E049-论坛漏洞分析及利用-针对bwapp进行web渗透测试的探索

课程分类:

论坛漏洞分析及利用

---------------------------------------------------------------------------------------------------------------------------------

实验等级:

中级

任务场景:

【任务场景】

磐石公司邀请渗透测试人员对该公司的论坛进行渗透测试,由于公司部门的特殊性,该公司要求渗透测试人员小王和公司网站运维协同工作,来识别出潜在的安全风险,我们在知道目标网站源码和其他一些信息的情况下对其进行的测试,通过对代码进行分析挖掘出其中潜在的安全风险

---------------------------------------------------------------------------------------------------------------------------------

任务分析:

【任务分析】

渗透测试最简单直接的解释就是:完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统(Web、业务软件、操作系统)的安全做深入的探测,发现系统最脆弱的环节。它能充分了解企业网络当前存在的安全隐患,渗透测试操作人员在客户知情和授权的情况下,站在黑客的角度以入侵者的思维方式,使用黑客会使用的各种方法对目标信息系统进行全面深入的渗透入侵,尝试发现系统安全的最薄弱环节。渗透测试的过程如同网络真实入侵事件的演练。通过专业的渗透测试平台的模拟实验,使得信息系统的管理人员了解入侵者的思维。

---------------------------------------------------------------------------------------------------------------------------------

预备知识:

【预备知识】

buggy web Application 这是一个集成了各种常见漏洞和最新漏洞的开源Web应用程序,目的是帮助网络安全爱好者、开发人员和学生发现并防止网络漏洞。包含了超过100种漏洞,涵盖了所有主要的已知Web漏洞,包括OWASP Top10安全风险,其中还整合了OpenSSL和ShellShock漏洞

1.Injection vulnerabilities like SQL, SSI, XML/XPath, JSON, LDAP, HTML, iFrame, OS Command and SMTP injection

//注入漏洞,如SQL、SSI、XML/XPath、JSON、LDAP、HTML、iFrame、OS命令和SMTP注入

2.Cross-Site Scripting (XSS), Cross-Site Tracing (XST) and Cross-Site Request Forgery (CSRF)

//跨站脚本、跨站式追踪攻击、跨站请求伪造

3.Unrestricted file uploads and backdoor files

//不受限制的文件上传和后门文件

4.Authentication, authorization and session management issues

//认证、授权和会话管理问题

5.Arbitrary file access and directory traversals

//任意文件访问和目录遍历

6.Local and remote file inclusions (LFI/RFI)

//本地和远程文件包含

7.Server Side Request Forgery (SSRF)

//服务器端请求伪造

8.XML External Entity Attacks (XXE)

//XML外部实体攻击

9.Heartbleed vulnerability (OpenSSL)

//OpenSSL心脏滴血漏洞

10.Shellshock vulnerability (CGI)

//破壳漏洞

11.Drupal SQL injection (Drupageddon)

//Drupal注入漏洞

12.Configuration issues: Man-in-the-Middle, cross-domain policy file, information disclosures,...

//配置问题:中间人,跨域策略文件,信息公开,……

13.HTTP parameter pollution and HTTP response splitting

// HTTP参数污染与HTTP应答拆分攻击 

14.Denial-of-Service (DoS) attacks

//拒绝服务攻击

15.HTML5 ClickJacking, Cross-Origin Resource Sharing (CORS) and web storage issues

//HTML5点击劫持,跨域资源共享,Web存储问题

16.Unvalidated redirects and forwards

//未验证的重定向和转发

17.Parameter tampering

//参数串改

18.PHP-CGI vulnerability

//PHP-CGI漏洞

20.Insecure cryptographic storage

//不安全的加密存储

21.AJAX and Web Services issues (JSON/XML/SOAP)

//AJAX和Web服务问题(JSON/XML/SOAP)

22.Cookie and password reset poisoning

//Cookie和密码重置毒化

23.Insecure FTP, SNMP and WebDAV configurations

//不安全的FTP,SNMP和WebDAV配置

。。。。。。。。。。。。。

---------------------------------------------------------------------------------------------------------------------------------

任务实施:

E049-论坛漏洞分析及利用-针对bwapp进行web渗透测试的探索

任务环境说明:

服务器场景:p9_kali-6(用户名:root;密码:toor)

服务器场景操作系统:Kali Linux

服务器场景:p9_linux-3(用户名:bee;密码:123456)

服务器场景操作系统:linux

---------------------------------------------------------------------------------------------------------------------------------

网络拓扑

---------------------------------------------------------------------------------------------------------------------------------

实战复现:

        打开一个终端,然后在/var/www/html目录中编写一个简单的页面,再然后使用命令service apache2 start启动apache服务器:

使用命令firefox打开火狐浏览器,然后访问靶机地址http://172.16.1.6/bWAPP/login.php

使用默认用户名bee密码bug登录,并设置安全级别为low,然后点login进入网站

选择A1-HTML Injection-Reflected(GET),点击Hack按钮,进行反射性HTML注入:

打开网页后,发现一个form表单,尝试在输入栏中填入以下代码:

<a href=http://172.16.1.12/index.php >Click ME</a>然后点击Go向服务器提交请求

<a href=http://172.16.1.12/index.php >Click ME</a>

在接下来的页面中点击Click ME! 提交后可以看到,提交的信息在页面中直接显示

在地址栏里面看到我们的信息,这是get请求的特征之一:

        尝试伪造存在xss漏洞的恶意url执行,通过提交期望执行的代码,来搜集到客户端的访问信息,在输入栏中的First name处填入以下代码:<script>alert(document.cookie)</script>,在Last name填入任意信息如下所示:

提交请求后,发现成功获取到用户的cookie:

进入靶机场景,切换路径至/var/www/bWAPP,查看目录下的htmli_get.php

        查看源代码发现,当安全防护为low的情况下,没有对用户输入的数据进行处理,echo 输出没有经过任何过滤:

回到渗透机kali中,在登录界面将安全级别设置为medium中级:

        重复上面的步骤,在输入框里填写:<script>alert(document.cookie)</script>,提交后查看返回结果。

<script>alert(document.cookie)</script>

发现再有弹框而是将用户输入的内容直接输出到前端页面中:

        通过查看靶机中的详细防护代码发现,在安全级别为medium的情况下,使用了str_replace()函数过滤"<"和">"这两个特殊字符处理了,最后,用了urldecode()函数进行解码,把URL编码还原字符串。

        依据代码的思路,我们可以先对"<"、">"进行urlencode,绕过str_replace()函数的过滤即可。建议把所有特殊的符号都进行编码,例如"=","/"等。

        回到渗透机kali中,继续对html injection -reflected(GET)页面进行注入,按F12打开火狐页面调试功能,找到Hackbar插件,然后输入注入语句。

将语句中的 <,>,/ 符号转换为ascii码进行注入:

转换后的代码如下

将代码复制到输入框中,进行提交:

提交后查看页面,发现已成功绕过:

直接查看源码,进行一下审计:

发现代码中通过函数htmlspecialchars()对用户输入进行过滤,该函数的作用是将预定义的字符串转换为HTML实体

预定义的字符是:

// & (和号)成为 &

// " (双引号)成为 "

// ' (单引号)成为 '

// < (小于)成为 <

// > (大于)成为>

        该函数的语法为htmlspecialchars(string,flags,character-set,double_encode),其中第二个参数flags需要重要注意,开发者就是因为没有注意到这个参数导致使用htmlspecialchars()函数过滤XSS时被绕过。因为flags参数对于引号的编码如下:
可用的引号类型:

ENT_COMPAT - 默认。仅编码双引号。
ENT_QUOTES - 编码双引号和单引号。
ENT_NOQUOTES - 不编码任何引号。

实验结束,关闭虚拟机。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1105101.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

用一段爬虫代码爬取高音质音频示例

以下是一个使用Reachability库和Objective-C编写的爬虫程序&#xff0c;用于爬取高音质的免费音频。通过https://www.duoip.cn/get_proxy的代码示例完美抓取数据。 #import <Foundation/Foundation.h> #import <Reachability/Reachability.h>interface AudioCrawle…

vue3学习(八)--- 组件相关

文章目录 全局组件批量注册全局组件 局部组件递归组件组件定义名称方式1.增加一个script 通过 export 添加name2.直接使用文件名当组件名3.使用插件 unplugin-vue-define-options 动态组件异步组件 一个 Vue 组件在使用前需要先被“注册”&#xff0c;这样 Vue 才能在渲染模板时…

从实时数据库转战时序数据库,他陪伴 TDengine 从 1.0 走到 3.0

关于采访嘉宾 在关胜亮的学生时代&#xff0c;“神童”这个称号如影随形&#xff0c;很多人初听时会觉得这个称谓略显夸张&#xff0c;有些人还会认为这是不是就是一种调侃&#xff0c;但是如果你听说过他的经历&#xff0c;就会理解这一称号的意义所在了。 受到教师母亲的影…

Mobpush厂商通道回执配置指南

为了帮助客户追踪和分析推送效果&#xff0c;Mobpush为APP开发者提供了用户收到推送后行为特征的数据分析&#xff0c;但由于用户使用的设备存在较大差异&#xff0c;不同厂商通道之间配置存在较大差异&#xff0c;不同的厂商通道对送达、展示和点击数据回执的支持程度各不相同…

汽车智能制造中的RFID技术在供应链生产管理中的应用

行业背景 汽车零部件工业是汽车工业中至关重要的一部分&#xff0c;对于汽车工业的长期稳定发展起着基础性的作用&#xff0c;近年来&#xff0c;汽车配件配套市场规模达到了2000亿元&#xff0c;维修市场达到了600亿元&#xff0c;随着汽车国产化的推进&#xff0c;汽车零部件…

机器学习-ROC曲线:技术解析与实战应用

目录 一、引言ROC曲线简介 二、ROC曲线的历史背景二战雷达信号检测在医学和机器学习中的应用横跨多个领域的普及 三、数学基础True Positive Rate&#xff08;TPR&#xff09;与False Positive Rate&#xff08;FPR&#xff09;True Positive Rate&#xff08;TPR&#xff09;F…

DNS域名解析与Web服务

一、DNS 域名解析 1、概念&#xff1a; (1) DNS&#xff1a; DNS&#xff08;Domain Name System&#xff09;是一种用于将可读的域名&#xff08;如www.baidu.com&#xff09;转换为计算机可理解的IP地址&#xff08;如192.168.1.1&#xff09;的分布式命名系统&#xff0c…

uniapp(uncloud) 使用生态开发接口详情5(云公共模块)

1.uniCloud官网 云对象中云公共模块: 网站: https://uniapp.dcloud.net.cn/uniCloud/cf-common.html // 官网介绍 cloudfunctions├─common // 云函数公用模块目录| └─hello-common // 云函数公用模块| ├─package.json| └─index.js // 公用模块代码&#xff0…

BaiChuan2保姆级微调范例

前方干货预警&#xff1a;这可能是你能够找到的&#xff0c;最容易理解&#xff0c;最容易跑通的&#xff0c;适用于各种开源LLM模型的&#xff0c;同时支持多轮和单轮对话数据集的大模型高效微调范例。 我们构造了一个修改大模型自我认知的3轮对话的玩具数据集&#xff0c;使用…

Scrapy设置代理IP方法(超详细)

Scrapy是一个灵活且功能强大的网络爬虫框架&#xff0c;用于快速、高效地提取数据和爬取网页。在某些情况下&#xff0c;我们可能需要使用代理IP来应对网站的反爬机制、突破地理限制或保护爬虫的隐私。下面将介绍在Scrapy中设置代理IP的方法&#xff0c;以帮助您更好地应对这些…

PAM从入门到精通(六)

接前一篇文章&#xff1a;PAM从入门到精通&#xff08;五&#xff09; 本文参考&#xff1a; 《The Linux-PAM Application Developers Guide》 先再来重温一下PAM系统架构&#xff1a; 更加形象的形式&#xff1a; 五、主要函数详解 4. pam_get_item 概述&#xff1a; 获取…

YUV图片常见格式

YUV图像 1个亮度量Y2个色度量(UV) 兼容黑白电视 可以通过降低色度的采样率而不会对图像质量影响太大的操作&#xff0c;降低视频传输带宽 有很多格式&#xff0c;所以渲染的时候一定要写对&#xff0c;不然会有很多问题&#xff0c;比如花屏、绿屏 打包格式 一个像素点一…

SRE 的黄昏,平台工程的初晨

船停在港湾是最安全的&#xff0c;但这不是造船的目的 完成使命的 SRE 过去 10 年&#xff0c;SRE 完成了体系化保障系统稳定性的使命。但在这个过程中&#xff0c;SRE 也逐渐变成了庞大的组织。而 SRE 本身的定位是保障系统稳定性&#xff0c;许多时候会因为担心稳定性而减缓…

线性代数-Python-01:向量的基本运算 -手写Vector -学习numpy的基本用法

文章目录 代码目录结构Vector.py_globals.pymain_vector.pymain_numpy_vector.py 一、创建属于自己的向量1.1 在控制台测试__repr__和__str__方法1.2 创建实例测试代码 二、向量的基本运算2.1 加法2.2 数量乘法2.3 向量运算的基本性质2.4 零向量2.5 向量的长度2.6 单位向量2.7 …

Linux上Docker的安装以及作为非运维人员应当掌握哪些Docker命令

目录 前言 1、安装步骤 2、理解镜像和容器究竟是什么意思 2.1、为什么我们要知道什么是镜像&#xff0c;什么是容器&#xff1f; 2.2、什么是镜像&#xff1f; 2.3、什么是容器&#xff1f; 2.4、Docker在做什么&#xff1f; 2.5、什么是镜像仓库&#xff1f; 2、Dock…

ArkTS开发实践

声明式UI基本概念 应用界面是由一个个页面组成&#xff0c;ArkTS是由ArkUI框架提供&#xff0c;用于以声明式开发范式开发界面的语言。 声明式UI构建页面的过程&#xff0c;其实是组合组件的过程&#xff0c;声明式UI的思想&#xff0c;主要体现在两个方面&#xff1a; 描述U…

基于PHP的毕业生招聘管理系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序&#xff08;小蔡coding&#xff09; 代码参考数据库参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&am…

吃鸡战队都爱!KOTIN京天华盛定制主机值得拥有

开学季大促正在进行时&#xff0c;少不了来自KOTIN京天的关爱&#xff01;称心满意的初秋&#xff0c;就来京天华盛官方旗舰店挑选一台心仪已久的电脑吧。准备入学的校友们和走过路过的游戏爱好者可千万不能错过了。 作为定制游戏电脑的行业佼佼者&#xff0c;KOTIN京天在各个价…

Android12之DRM架构(一)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

视频太大怎么压缩变小?三分钟学会视频压缩

随着科技的不断发展&#xff0c;视频已经成为了我们日常生活中不可或缺的一部分&#xff0c;然而&#xff0c;大尺寸的视频文件常常会给我们带来诸多困扰&#xff0c;例如发送不便、存储空间不足等等&#xff0c;那么&#xff0c;如何将这些过大的视频文件压缩变小呢&#xff1…