日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

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

發(fā)布時間:2024/9/27 python 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python | 7招教你识别一个网站是否是Django后台 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

戳藍字“CSDN云計算”關(guān)注我們哦!

作者 l 上海小胖? ?

來源 l Python專欄(ID:xpchuiit)

轉(zhuǎn)載請聯(lián)系授權(quán)(微信ID:pythonzhuanlan)



目錄:

1.?利用Debug模式異常頁面判斷
2. 通過CSRF Token驗證
3. Django Admin

4. 通過HTTP頭
5. 拼湊細節(jié)
6. 通過一些第三方模塊的特點判斷
7. 分析靜態(tài)文件


最近事情有點多,一直沒有時間寫原創(chuàng),而又一直想寫點什么,今天早上正好空下來,我就來寫一篇Python的吧,這周末我總結(jié)下最近遇到的事情和以后的打算,和大家共勉。


平時開發(fā)們用Django寫網(wǎng)站,你作為黑盒測試來說可能不需要關(guān)心以下的問題,但白盒呢?所以黑盒不想提升一下自己的能力嗎?

今天我們就來說下,如何測試一個網(wǎng)站的后端是由Django編寫的。


1. 利用Debug模式異常頁面判斷


最簡單的就是,當(dāng)DEBUG模式開啟時,訪問不存在的頁面或出錯的頁面會有特殊的異常拋出。像這樣的頁面,我稱之為黃代碼(哈哈哈,寫Django的自己知道,是不是經(jīng)常會有),就可以確定是Django了


2. 通過CSRF Token驗證


訪問一個包含表單的頁面,表單中會有一個hidden input,用來存儲CSRF檢測的Token,其名字比較獨特,csrfmiddlewaretoken:

遇到有這個名字的表單,基本可以確定是Django。


假如開發(fā)者將?csrfmiddlewaretoken?這個名字換了,怎么辦?

我們可以把剛剛的hidden input 給刪了,然后登陸,因為缺少CSRF TOKEN,會返回一個Django的CSRF TOKEN錯誤頁面給你:


3. Django Admin


安裝Django的時候會自帶一個后臺,地址是/admin(不過大多數(shù)網(wǎng)站會替換后臺地址):

遇到這個樣式的后臺界面,可以確定是Django。


4. 通過HTTP頭


有的Django站點會返回Server頭:

雖然通過這種方式不能100%確定是Django后臺,但范圍就縮的很小了,是個Python,也就那幾套Web了。


5. 拼湊細節(jié)


比如,Django默認找回密碼的鏈接是?/password_reset/?,郵件發(fā)送成功是?/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位以上數(shù)字加字母,分頁通常是??page=2?而不會是?/page/2/?,表單輸入框的id通常是?id_xxxx?,中文的情況下還會有一些特定的翻譯語句,如?請上傳一張有效的圖片。您所上傳的文件不是圖片或者是已損壞的圖片。?、?CSRF驗證失敗. 相應(yīng)中斷.?等。


6. 通過一些第三方模塊的特點判斷


Django之所以好用,因為其代碼耦合性很低,所以有豐富的第三方模塊可以直接使用。通過這些模塊的特點也能判斷目標網(wǎng)站是否是Django。

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

比如,django-rest-framework會有一個調(diào)試頁面:

再比如,django-simple-captcha生成的驗證碼會包含一個名字是?captcha_0?,值為40位hex的隱藏輸入框。

這些第三方庫的特點也可以輔助你判斷,就是需要收集與細心觀察了。


7. 分析靜態(tài)文件


有的網(wǎng)站可能修改了Django的后臺地址,但Django后臺所使用的靜態(tài)文件地址通常沒有修改,也較難修改。

訪問這些靜態(tài)文件地址,看看內(nèi)容是否是Django的這一套,就可以確定目標是否為Django,如 :http://0.0.0.0:8001/static/admin/css/dashboard.css

但這個方法有個局限,如果目標網(wǎng)站沒有使用Django自帶的django-admin(未將其包含在settings.py的INSTALLED_APPS中),就沒有這個靜態(tài)文件了。


文來源:公眾號 @Python專欄,作者上海小胖,四大咨詢TechLead,mongoDB Professional 獲得者。「Python專欄」專注Python領(lǐng)域的各種技術(shù):爬蟲、DevOps、人工智能、Web開發(fā)等。還有「大航海計劃」,各種內(nèi)推活動。


1.微信群:

添加小編微信:color_ld,備注“進群+姓名+公司職位”即可,加入【云計算學(xué)習(xí)交流群】,和志同道合的朋友們共同打卡學(xué)習(xí)!


2.征稿:

投稿郵箱:liudan@csdn.net;微信號:color_ld。請備注投稿+姓名+公司職位。


推薦閱讀

  • 這樣學(xué)算法,包會包懂so easy~

  • 20k~50k,“寒冬季”一線城市技術(shù)人才依舊緊缺,千里馬,趕緊來投!

  • 20張圖表達程序員的心酸

  • Python 爬取愛奇藝騰訊視頻 250,000 條數(shù)據(jù)分析為什么李誕不值得了?

  • 這位 50 歲的海歸程序員,當(dāng)著老板還在天天改 Bug

  • 人工智能涼涼了?中國 AI 人才缺口高達 12113 個!

  • 可替代Android的6大開源移動操作系統(tǒng)

↓點擊“閱讀原文”,打開APP 閱讀更順暢

總結(jié)

以上是生活随笔為你收集整理的Python | 7招教你识别一个网站是否是Django后台的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。