文章详情
谈谈Django的RCE
日期:2020/11/9 9:54:59
0X00前言
Django 一直以来安全性就非常之高,从2005发行到现在就没有出现过能够无条件直接利用的RCE。本着对Django的学习,来聊聊Django因编程不当而产生的RCE。
0x01 CVE-2014-0472
2014年,Django官方修复一个问题,其描述是因位于django/core/urlresolvers.py文件中的reverse函数过滤不当而导致Django可以任意获取内部的函数,如果攻击者知道代码内部存在恶意的模块,则可以发起任意代码执行。参考https://www.djangoproject.com/weblog/2014/apr/21/security。
来看看官方的补丁https://github.com/django/django/commit/8b93b31487d6d3b0fcbbd0498991ea0db9088054
可以看见修复的地方为urlresolvers.py文件,增加了对传入reverse函数内部功能的检查,检查改方法是否存在于url路由表中。
同时,该文件也在2014年被删除,现在reverse函数位于文件/django/url/resolvers.py
中。同样,来看看漏洞的位置
我们传入redirect函数内的参数会被传到reverse函数去查看是否含有如下的URL的路由,例如
url(r'^index', views.red, name="index_view")
相关推荐
- 05-31XCTF2021-Final-DubboWriteUp:SSRF-
- 08-24cf开学季,领黑钻
- 10-21ctf中常见phprce绕过总结
- 05-24SOCasS(把SOC当作一种服务)的架构部署和技术
- 05-13JavaAgent从入门到内存马
- 10-21记一次某源码审计
- 05-18Xmind2020XSS漏洞导致命令执行复现
- 10-20我靠seo赚到的几百万收入
- 11-04摩拜单车和QQ合作 7天免押金 送免费骑行月卡
- 10-21探索Mimikatz-第2部分-SSP
- 05-12频繁GC导致CPU飙高问题解决方法
- 10-27某nc反序列化回显绕过
- 10-21利用DNS缓存和TLS协议将受限SSRF变为通用SS
- 05-19利用一处xss漏洞制作钓鱼页面