CTF Intro

簡介和一些酷東東.

 Claire

  • 北資一六社長 x 網管
  • 競程是舊愛 而且我很爛
  • 新歡大概是資安
  • 但我都只打水題
  • 樹枝爆肝仔

Who am I

  • slides.com中文字體很怪所以可能隨機掉落英文
  • 講義
    • 希望HackMD修好了,他凌晨炸了
  • 等等教的東西請不要用在 CTF 以外的地方

Warning

1

CTF Intro

3

Before We Start...

5

Web - Practice

2

 

 

 

Resources

4

 

 

 

Web - Basic Concepts

Index

6

 

 

 

References

What is CTF?

What is CTF?

  • Capture The Flag, CTF
  • 前身:傳統黑客間的比拼遊戲

  • 起源於 1996 年 DEFCON 全球黑客大會

What is CTF?

  • 考驗資安的比賽
  • 目標:獲得flag
    • 一段字串
    • 固定的格式
      • ex. picoCTF{...}
    • 假flag
    • L337

Categories

  • Web 網頁
  • Reverse 逆向工程
  • Pwn(Binary Exploitaion) 二進制漏洞利用
  • Crypto 密碼學(簡稱數學)
  • Forensics 分析各種資訊(通靈之一)
  • Misc 不知道要分哪的(通靈之二)

Competition Types

  • Jeopardy

    • 簡稱:通靈遊戲
    • 根據題目指示或你的第六感找到flag
    • 每題有不同分值
      • ​動態分數
    • 我只打過這個

Competition Types

  • Attack and Defense

    • 每一個隊伍有主機,提供有一堆洞的服務
    • 修好自己的
    • 攻擊別人的
  • King of the Hill

    • 主辦方提供一個服務
    • 佔領並維護他
    • 佔領時長越久越多分

Resources

Resources

Before We Begin...

Before We Begin...

  • kali linux
  • 除了必要的理由以外:
    • 東西比較好整理
    • 玩壞不會心疼
  • mac其實蠻好用的了

Web - Basic Concepts

Front-end & Back-end

Front-end & Back-end

  Front-end & Back-end

  • 點餐出餐
  • 使用者理所當然只能接觸到點餐的部分
  • 後端負責處理各種要求

Front-end & Back-end

  Front-end

  • 所有東⻄都會直接顯⽰給使⽤者
  • HTML、CSS、JS
  • ctf很常可以從js裡面看或通靈出你需要找的東西

Front-end & Back-end

  Back-end

  • 背後運作的伺服器與程式
  • 處理資料與邏輯
  • 處理使用者的請求
  • 連接資料庫存取資料
  • 動態顯示網頁資料

Front-end & Back-end

HTTP/HTTPS

HTTP/HTTPS

  • Hypertext Transfer Protocal
  • 向伺服器請求資料
  • 用戶端-伺服器通訊的協定

HTTP/HTTPS

  HTTP

  • OSI 網路通訊模型中的應用層通訊協定
  • HTTP request:
    • GET:取得資料,例如打開網頁、查資料
    • POST:送出資料,例如表單提交、登入操作
    • HEAD、PUT、DELETE...
GET / HTTP/1.1
Host: www.google.com

HTTP/HTTPS

   HTTP response

  • 資訊回應(100——199)
  • 成功回應(200——299)
  • 重新導向訊息(300——399)
  • 用戶端錯誤回應(400——499)
  • 伺服器錯誤回應(500——599)
    • 今天凌晨兩點的HackMD

HTTP/HTTPS

   HTTPS

  • 從獨立的憑證認證機構取得 SSL/TLS 憑證
    • 數位物件
    • 驗證身分後使用 SSL/TLS 協定
      • 加密連線後 只有用戶端和 Web 伺服器才能看到
    • 中華電信 酷
  • 交換加密或混亂的資料

HTTP/HTTPS

   HTTP vs. HTTPS

  • HTTP
    • 沒有對傳輸資料做加密
  • HTTPS(HTTP secure)
    • 允許對傳輸資料進⾏加密
    • 需要向CA申請憑證

Web - Basic Concepts

Server Configuration Settings

Server Configuration Settings

   robots.txt

  • 指示搜尋引擎爬蟲
  • 網站根目錄/robots.txt
  • 不想被外界看到的隱藏路徑或檔案
  • 來看看IKEA

Server Configuration Settings

   .htaccess

  • Apache目錄級設定檔
  • 控制權限 重寫網址 密碼保護
  • 設定規則若被公開 可能洩露進攻方向或特殊目錄資訊

Server Configuration Settings

   .htpasswd

  • 與.htaccess配合的密碼檔
  • 存放帳號與加密密碼
  • 嘗試破解?

Server Configuration Settings

   .git

  • Git版本控制目錄
  • 版本紀錄、原始碼
  • 下載完整程式碼

Server Configuration Settings

   .DS_Store

  • MacOS資料夾設定檔
  • 目錄結構、隱藏資訊

F12

F12

  • F12
  • 右鍵 Inspect

F12

   Elements

  • 查看、編輯HTML
  • 隱藏文字、註解、元素屬性
  • 修改對當前的頁面渲染生效
  • ctrl(cmd)+f找flag

F12

   Console

  • js錯誤、輸出
  • js指令試驗
  • 控制台日誌:console.log()

F12

   Sources

  • 當前網頁的所有源文件
  • ctrl(cmd)+f

F12

   Network

  • 監控網頁載入請求、回放
  • 查看各個資源內容、回應數據,另存為文件進行分析
  • preserve log:重整不會清除

F12

   Application

  • 管理網站資料
  • Cookie:
    • 儲存網站資料的小型文字檔
    • 記錄狀態、設定
    • 造訪網站 伺服器HTTP回應Set-Cookie
    • 同一網站請求自動附帶Cookie
    • 修改Cookie內容嘗試權限提升
      • 修改後刷新頁面

F12

Others

   base64

  • ctf愛用編碼

  • 二進制數據表示為ASCII字符

  • 二進制數據轉為文本數據在文本協議中傳輸

  • 後面很多時候會有=或==

  • 看久了會有一種感覺他是base64

  • ex. fgisc -> Zmdpc2M=

Web - Practice

Practice

Practice

Thank You!

Made with Slides.com