Python | 7招教你识别一个网站是否是Django后台

news/2024/5/9 15:46:44/文章来源:https://xiaopang.blog.csdn.net/article/details/100511693

640?wx_fmt=jpeg

目录:

1. 利用Debug模式异常页面判断
2. 通过CSRF Token验证
3. Django Admin

4. 通过HTTP头
5. 拼凑细节
6. 通过一些第三方模块的特点判断
7. 分析静态文件

最近事情有点多,一直没有时间写原创,而又一直想写点什么,今天早上正好空下来,我就来写一篇Python的吧,这周末我总结下最近遇到的事情和以后的打算,和大家共勉。

平时开发们用Django写网站,你作为黑盒测试来说可能不需要关心以下的问题,但白盒呢?所以黑盒不想提升一下自己的能力吗?

今天我们就来说下,如何测试一个网站的后端是由Django编写的。

1. 利用Debug模式异常页面判断

最简单的就是,当DEBUG模式开启时,访问不存在的页面或出错的页面会有特殊的异常抛出。像这样的页面,我称之为黄代码(哈哈哈,写Django的自己知道,是不是经常会有),就可以确定是Django了

640?wx_fmt=png


2. 通过CSRF Token验证

访问一个包含表单的页面,表单中会有一个hidden input,用来存储CSRF检测的Token,其名字比较独特,csrfmiddlewaretoken:

640?wx_fmt=png

遇到有这个名字的表单,基本可以确定是Django。


假如开发者将 csrfmiddlewaretoken 这个名字换了,怎么办?

我们可以把刚刚的hidden input 给删了,然后登陆,因为缺少CSRF TOKEN,会返回一个Django的CSRF TOKEN错误页面给你:

640?wx_fmt=png


3. Django Admin

安装Django的时候会自带一个后台,地址是/admin(不过大多数网站会替换后台地址):

640?wx_fmt=png

遇到这个样式的后台界面,可以确定是Django。


4. 通过HTTP头

有的Django站点会返回Server头:

640?wx_fmt=png

虽然通过这种方式不能100%确定是Django后台,但范围就缩的很小了,是个Python,也就那几套Web了。


5. 拼凑细节

比如,Django默认找回密码的链接是 /password_reset/ ,邮件发送成功是 /password_reset/done/ ,找回密码链接是 reset/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/ ,找回密码成功是 /reset/done/ ,正常修改密码是 /password_change/ ,修改成功是 /password_change/done/ 。

不过这些链接都可以改,只能用作参考。

再比如,django文件上传的目录通常叫 media ,注册时密码要求8位以上数字加字母,分页通常是 ?page=2 而不会是 /page/2/ ,表单输入框的id通常是 id_xxxx ,中文的情况下还会有一些特定的翻译语句,如 请上传一张有效的图片。您所上传的文件不是图片或者是已损坏的图片。 、 CSRF验证失败. 相应中断. 等。


6. 通过一些第三方模块的特点判断

Django之所以好用,因为其代码耦合性很低,所以有丰富的第三方模块可以直接使用。通过这些模块的特点也能判断目标网站是否是Django。

常用的第三方模块有django-rest-framework、django-debug-toolbar、django-bootstrap3、django-filter、django-cron、django-allauth、django-simple-captcha等。

比如,django-rest-framework会有一个调试页面:

640?wx_fmt=png

再比如,django-simple-captcha生成的验证码会包含一个名字是 captcha_0 ,值为40位hex的隐藏输入框。

这些第三方库的特点也可以辅助你判断,就是需要收集与细心观察了。


7. 分析静态文件

有的网站可能修改了Django的后台地址,但Django后台所使用的静态文件地址通常没有修改,也较难修改。

访问这些静态文件地址,看看内容是否是Django的这一套,就可以确定目标是否为Django,如 :http://0.0.0.0:8001/static/admin/css/dashboard.css

640?wx_fmt=png

但这个方法有个局限,如果目标网站没有使用Django自带的django-admin(未将其包含在settings.py的INSTALLED_APPS中),就没有这个静态文件了。

推荐阅读:

黑客们会用到哪些Python技术?

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

整理了一周的Python资料,包含各阶段所需网站、项目,收藏了慢慢来

这周应该有不少学校已经开学了&#xff0c;那么同学们都该动起来了&#xff0c;把家里面的那些懒习惯给扔掉了可以。 不知怎么的&#xff0c;最近不少关注我的读者都开始私信我怎么学好python&#xff1f;零基础转行是不是合适&#xff0c;还有希望吗&#xff1f;今年30了&…

【Git】GIT相关网站

GIT CHEAT SHEET 最后可以戳以下链接继续学习&#xff1a; https://git-scm.com/book/zh/v2 Git中文开发手册

要想知道自己在网上裸奔成啥样?这个网站一搜便知

很多网站都需要手机号注册&#xff0c;久而久之自己也不清楚注册了哪些网站。 有的网站可能注册过一次就再没用过&#xff0c;有的明明没有注册过但还是收到很多垃圾信息&#xff0c;可能是因为你手机号之前被别人用的时候&#xff0c;注册了你不知道的网站。 下面&#xff0…

你要的Python资料都在这里,包含各阶段所需学习网站、实战项目,收藏了慢慢来

不知怎么的&#xff0c;最近不少关注我的读者都开始私信我怎么学好python&#xff1f;零基础转行是不是合适&#xff0c;还有希望吗&#xff1f;今年30了&#xff0c;还能不能转IT&#xff1f; 其实关于零基础转型的&#xff0c;我以前写过一篇文章&#xff0c;没有看过的都可…

第 2 部分: SEO 关键词和基础设施策略

从左上角向下的关键词优化策略 只需两步&#xff0c;即可在关键词策略战役中取得成功&#xff1a; 关键词选择&#xff1a;判断页面提供了什么内容。然后判断潜在受众可能使用哪些词来搜索您的页面&#xff0c;并根据这些词创建关键词。 关键词优化&#xff1a;将这些关键词应用…

想做一个显示全国火车运行图的网站(5)误操作

误操作&#xff0c;想把火车站基本信息和wiki信息分到两张表中&#xff0c;在复制坐标列时忘记把数据也导过来就删除了源表的列&#xff0c;丢了所有的地标数据。 找备份&#xff0c;本来有一个作业是三天备份一次数据库的&#xff0c;但是今天一看&#xff0c;忘记在Sql Serve…

让 officelive.com 免费建站 注册支持cn域名

试用了一下微软的 http://www.officelive.com/free-website 免费建站&#xff0c;可以支持邮箱和域名转入&#xff0c;默认不支持 .cn域名 在地址栏输入就可以了 Codejavascript:void((document.getElementById("SG_4:redelTldSelect").getElementsByTagName("O…

jQuery css3仿游戏网站右键环形菜单

效果展示 http://hovertree.com/texiao/jquery/86/PC用户右键弹出环形菜单。手机用户扫描二维码&#xff1a;长安可以弹出环形菜单。 转自&#xff1a;http://hovertree.com/h/bjaf/aht9w1n8.htm web前端特效:http://www.cnblogs.com/jihua/p/webfront.html

美食网站响应式精美模板

本模板为自适应宽度模板&#xff0c;可兼容PC&#xff0c;手机等多种环境&#xff0c;适应不同屏幕大小宽度。预览图片&#xff1a;进入下载页&#xff1a;http://hovertree.com/h/bjaf/bnbpkr9p.htm效果预览http://hovertree.com/texiao/muban/1/ 转自&#xff1a;http://hov…

转:通过避免下列 10 个常见 ASP.NET 缺陷使网站平稳运行

中文页面&#xff1a; http://blog.163.com/chuan_zheng/blog/static/856478720074155351773/英文原文: http://msdn.microsoft.com/msdnmag/issues/06/07/WebAppFollies/default.aspx示例源码页&#xff1a;http://msdn.microsoft.com/msdnmag/issues/06/07/WebAppFollies/def…

上海新东方vs新东方,SEO实战

阿里妈妈提供广告非常郑重地声明一下&#xff08;文章发表约20小时后补充&#xff09; 我不得不承认&#xff0c;这篇文章有点“软”&#xff0c;但是请相信&#xff0c;这篇文章绝对不是为了软而软的。文章的来源是这样的。因为工作需要&#xff0c;所以分析了一下h公司的SEO方…

推荐8款优秀的餐饮网站模板

这篇文章收集了8款优秀的餐饮网站模板&#xff0c;希望这些网站模板能帮助到您。当你想快速制作出一个网站的时候&#xff0c;网站模板就非常有用了。学习网页设计的朋友也可以从网站模板入手&#xff0c;学习模板网站的布局方式和编码风格。 Delicious Restaurant WordPress T…

[导入]你的网站被人订阅了吗?(浅谈Rss2.0)

摘要: RSS作为Web2.0中的一项新技术&#xff0c;被广泛的应用于各类网站中&#xff0c;其实Rss技术很简单&#xff0c;给自己的网站做一个RSS源那就更简单啦。 本文旨在是通过一个非常简单的实例&#xff0c;来介绍一下给自己的网站创建一个RSS源以及如何读取网站的&#xff32…

JSP网站开发基础总结《十一》

继上一篇关于过滤器连总结后&#xff0c;本篇为大家详细介绍一下过滤器中过滤规则的dispatcher属性的使用&#xff0c;在servlet2.5中dispatcher的属性有四种&#xff0c;其中上一篇已经为大家介绍了error属性的使用&#xff0c;本篇将详细介绍一下剩余的三个属性的作用。 1、s…

JSP网站开发基础总结《六》

对于本篇需要总结的内容&#xff0c;量估计有点大&#xff0c;大家好好看哈&#xff0c;绝对全是干货&#xff0c;代码的已经运行测试&#xff0c;不存在问题&#xff0c;大家可以参考学习&#xff0c;下面开始本篇的内容。 1、添加数据到数据库&#xff1a; 如何用户在JSP页面…

JSP网站开发基础总结《一》

经过JAVASE的学习相信大家对JAVA已经不再陌生&#xff0c;那么JAVA都可以干什么呢&#xff1f;做算法、应用程序、网站开发都可以&#xff0c;从今天开始为大家奉上JAVAEE之JSP动态网站开发基础总结。 既然是动态网站开发&#xff0c;那它与传统的静态网站有什么区别呢&#xf…

支付宝网页服务器出错500,YunCart电商网站支付宝接口出现500错误

yuncart 是一套易与集成的php开源商城系统&#xff0c;方便多人同时经行二次开发&#xff0c;Yuncart 可以以非常方便的方式切换到sql server&#xff0c;oracle等数据库,大小1.9MB&#xff0c;感兴趣的朋友&#xff0c;可以去官网下载。最近帮朋友用php做了一个电商网站&#…

使用Express开发个人网站(一)

Express&#xff0c;基于Node.js平台&#xff0c;快速、开放、极简的 web 开发框架。 Node的出现&#xff0c;让js有了运行在服务器端的可能&#xff0c;基于此的Express&#xff0c;可以快速&#xff0c;简单的搭建起一个服务器与个人网站。 安装 首先安装nodejs&#xff0c;…

网站软件开发规范(某门户网站的)

网站软件开发规范(某门户网站的) --------------------------------------------------------------------------------1数据库使用规范1.1服务器上有关数据库的一切操作只能由服务器管理人员进行。1.2程序中访问数据库时使用统一的用户、统一的连接文件访问数据库。1.3原则上每…

超级好用的解析JSON数据的网站

超级好用的解析JSON数据的网站 网址 http://json.parser.online.fr/beta/ 效果图 测试数据 {"city":{"id":1816670,"name":"Beijing","coord":{"lon":116.397232,"lat":39.907501},"country"…