刷题记录:[De1CTF 2019]SSRF Me

大憨熊 提交于 2019-11-29 02:27:58

刷题记录:[De1CTF 2019]SSRF Me

题目复现链接:https://buuoj.cn/challenges
参考链接:De1CTF ssrf_me 的三种解法
浅析De1CTF 2019的两道web SSRF ME && ShellShellShell

一、涉及知识点

1、MD5长度扩展攻击

参考MD5长度拓展攻击简要笔记
浅谈MD5扩展长度攻击

攻击场景:file=filename&hash=md5($secret_key.filename)验证成功下载文件
目的:传入任意filename实现任意文件读取
条件:

  • 已知任意一个md5($secret_key.filename),并且知道filename的明文。
  • 已知secret_key的长度。
  • 用户可以提交md5值。
  • 工具:HashPump/python模块:hashpumpy

2、Python 2.x - 2.7.16 urllib.fopen支持local_file导致LFI(CVE-2019-9948)

https://bugs.python.org/issue35907

  • 当不存在协议的时候,默认使用file协议读取
  • 可以使用local_file:绕过,例如local_file:flag.txt路径就是相对脚本的路径
    local_file://就必须使用绝对路径(协议一般都是这样)
    PS:local-file:///proc/self/cwd/flag.txt也可以读取,因为/proc/self/cwd/代表的是当前路径
  • 如果使用 urllib2.urlopen(param) 去包含文件就必须加上file,否则会报ValueError: unknown url type: /path/to/file的错误

二、解题方法

见参考链接,不做赘述

三、总结

对代码要有敏感性,善于搜索已有的漏洞
cve库:cve database

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!