์ด ์˜์—ญ์„ ๋ˆ„๋ฅด๋ฉด ์ฒซ ํŽ˜์ด์ง€๋กœ ์ด๋™
caputdraconis ๋ธ”๋กœ๊ทธ์˜ ์ฒซ ํŽ˜์ด์ง€๋กœ ์ด๋™

caputdraconis

ํŽ˜์ด์ง€ ๋งจ ์œ„๋กœ ์˜ฌ๋ผ๊ฐ€๊ธฐ

caputdraconis

๋„คํŠธ์›Œํฌ ๊ด€์ ์—์„œ์˜ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์„ ๊ณต๋ถ€ํ•˜๋Š” ์ค‘์ž…๋‹ˆ๋‹ค :)

[Linux] Syn Flooding

  • 2023.07.27 03:52
  • ๊ฒ…๋ถ€๊ฒ…๋ถ€๐Ÿ™ƒ/Computing System
๊ธ€ ์ž‘์„ฑ์ž: caputdraconis
๋ฐ˜์‘ํ˜•

Syn Flooding ์ด๋ž€?

https://www.techopedia.com/definition/10339/three-way-handshake

 TCP ์˜ 3-Way Handshake ๊ณผ์ •์—์„œ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๋Š” ์œ„ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด 3๋ฒˆ์˜ ํŒจํ‚ท ์ „๋‹ฌ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์—ฐ๊ฒฐํ•˜๊ณ ์ž ํ•˜๋Š” ์„œ๋ฒ„์—๊ฒŒ SYN ์„ ๋ณด๋‚ด๋ฉด, ์„œ๋ฒ„๋Š” ๊ทธ์— ๋Œ€ํ•œ ์‘๋‹ต์œผ๋กœ SYN+ACK ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค. ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ SYN+ACK ํŒจํ‚ท์„ ์ˆ˜์‹ ํ•œ ํด๋ผ์ด์–ธํŠธ๋Š” ๋งˆ์ง€๋ง‰์œผ๋กœ ACK ํŒจํ‚ท์„ ๋ณด๋‚ด๋ฉฐ ์—ฐ๊ฒฐ์ด ์„ฑ๋ฆฝ๋ฉ๋‹ˆ๋‹ค. 

 ์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ๋กœ๋ถ€ํ„ฐ SYN ์„ ๋ฐ›๊ธฐ ์ „์— listen() ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๋กœ๋ถ€ํ„ฐ SYN ํŒจํ‚ท์ด ๋“ค์–ด์˜ค๋ฉด, ์„œ๋ฒ„๋Š” SYN Backlog ๋ผ๋Š” "๊ธธ์ด๊ฐ€ ์ œํ•œ๋˜์–ด ์žˆ๋Š” ํ" ์— "Client x๊ฐ€ ๋‚˜์™€ ์—ฐ๊ฒฐ์„ ํ•˜๊ณ  ์‹ถ์–ดํ•œ๋‹ค!" ๋ผ๊ณ  ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ SYN+ACK ํŒจํ‚ท์„ ์ „์†กํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๋กœ๋ถ€ํ„ฐ ACK ํŒจํ‚ท์„ ์ˆ˜์‹ ํ•˜๊ฒŒ ๋˜๋ฉด, SYN Backlog ๋ฅผ ๋’ค์ ธ์„œ ํ•ด๋‹น ํด๋ผ์ด์–ธํŠธ์™€ ๊ด€๋ จ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ๊ณ  "์ด ์นœ๊ตฌ๊ฐ€ ๋‚˜๋ž‘ ์—ฐ๊ฒฐํ•˜๊ณ  ์‹ถ์–ดํ–ˆ์—ˆ๋Š”๋ฐ, ๋งˆ์ง€๋ง‰ ์ ˆ์ฐจ์ธ ACK ํŒจํ‚ท๊นŒ์ง€ ์™”๋„ค? ์—ฐ๊ฒฐ ์„ฑ๋ฆฝํ•ด์•ผ๊ฒ ๋‹ค." ๋ผ๊ณ  ์—ฌ๊ธฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. 

 ์•…์˜์ ์ธ ์ƒํ™ฉ์—์„œ ํด๋ผ์ด์–ธํŠธ(๊ณต๊ฒฉ์ž)๋Š” 3-Way-Handshake ์˜ ๋งˆ์ง€๋ง‰ ์ ˆ์ฐจ์ธ ACK ํŒจํ‚ท์„ ์ „์†กํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ฒŒ ๋˜๋ฉด ์„œ๋ฒ„ ์ธก์˜ SYN Backlog ๊ฐ€ ๊ฝ‰ ์ฐจ๊ฒŒ ๋˜๊ณ , ๋”์ด์ƒ ์ž๋ฆฌ๊ฐ€ ์—†๋Š” ์„œ๋ฒ„ ์ธก์€ ์ƒˆ๋กœ ๋“ค์–ด์˜ค๋Š” SYN ํŒจํ‚ท์„ Drop ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋”์ด์ƒ ์ƒˆ๋กœ์šด ์—ฐ๊ฒฐ ์š”์ฒญ์„ ๋ฐ›์„ ์ˆ˜ ์—†๋Š” ์ƒํƒœ๊ฐ€ ๋˜๋Š”๊ฑฐ์ฃ .

SYN Flooding ์„ ๋ง‰๊ธฐ ์œ„ํ•ด์„œ๋Š”?

 ๋ฆฌ๋ˆ…์Šค ์ปค๋„์—๋Š” ์ด์™€ ๊ฐ™์€ SYN Flooding ๊ณต๊ฒฉ์„ ๋ง‰๊ธฐ ์œ„ํ•ด์„œ SYN Cookie ๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ ์ธก์˜ SYN ํŒจํ‚ท์— ๋Œ€ํ•œ ์‘๋‹ต์œผ๋กœ ๋ณด๋‚ด๋Š” SYN+ACK ์— Cookie ๊ฐ’์„ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ ์ธก์—์„œ ์ˆ˜์‹ ํ•œ Cookie ๊ฐ’์— +1 ์„ ํ•ด์„œ ๋‹ค์‹œ ์„œ๋ฒ„ ์ธก์— ACK ํŒจํ‚ท๊ณผ ํ•จ๊ป˜ ์ „์†กํ•˜๋ฉด, ์„œ๋ฒ„ ์ธก์—์„œ๋Š” Cookie ๊ฐ’ ๊ณ„์‚ฐ์„ ํ†ตํ•ด "์ด ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ด์ „์— ๋‚˜ํ•œํ…Œ ์—ฐ๊ฒฐ ์š”์ฒญ์„ ํ–ˆ๋˜ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋งž๋‹ค!" ๋ผ๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Cookie ๊ฐ’์€ Timestamp ์™€ ๋ฐœ์‹ ์ž IP ์ฃผ์†Œ๋ฅผ ํ˜ผํ•ฉํ•œ ๊ฒƒ๊ณผ ๊ฐ™์ด ๊ณ„์‚ฐ์„ ํ†ตํ•ด ๊ตฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ’์ด๊ธฐ ๋•Œ๋ฌธ์—, ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „์†กํ•œ Cookie ๊ฐ’์„ ๋”ฐ๋กœ ์ €์žฅํ•ด๋‘˜ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋˜๋ฉด ๋ฌธ์ œ๊ฐ€ ๋˜์—ˆ๋˜ SYN Backlog ๋Š” ๋”์ด์ƒ ํ•„์š” ์—†์–ด์ง‘๋‹ˆ๋‹ค.
=> ์ž์› ๊ณ ๊ฐˆ ํ˜„์ƒ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š”๋‹ค.


SYN Flooding ์ด ๋ฐœ์ƒํ–ˆ์Œ์„ ์•Œ๊ธฐ ์œ„ํ•ด์„œ๋Š” dmesg ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•„๋ž˜์™€ ๊ฐ™์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 

dmesg -TL | greop -i "syn flooding"

 

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€

์ด ๊ธ€ ๊ณต์œ ํ•˜๊ธฐ

  • ๊ตฌ๋…ํ•˜๊ธฐ

    ๊ตฌ๋…ํ•˜๊ธฐ

  • ์นด์นด์˜คํ†ก

    ์นด์นด์˜คํ†ก

  • ๋ผ์ธ

    ๋ผ์ธ

  • ํŠธ์œ„ํ„ฐ

    ํŠธ์œ„ํ„ฐ

  • Facebook

    Facebook

  • ์นด์นด์˜ค์Šคํ† ๋ฆฌ

    ์นด์นด์˜ค์Šคํ† ๋ฆฌ

  • ๋ฐด๋“œ

    ๋ฐด๋“œ

  • ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ

    ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ

  • Pocket

    Pocket

  • Evernote

    Evernote

๋‹ค๋ฅธ ๊ธ€

  • [Linux] top

    [Linux] top

    2023.07.30
  • [Linux] free

    [Linux] free

    2023.07.28
  • [Linux] OOME (Out-Of-Memory Error)

    [Linux] OOME (Out-Of-Memory Error)

    2023.07.27
  • [Computing System] ๋ถˆ ๋…ผ๋ฆฌ(Boolean Logic)

    [Computing System] ๋ถˆ ๋…ผ๋ฆฌ(Boolean Logic)

    2023.06.24
๋‹ค๋ฅธ ๊ธ€ ๋” ๋‘˜๋Ÿฌ๋ณด๊ธฐ

์ •๋ณด

caputdraconis ๋ธ”๋กœ๊ทธ์˜ ์ฒซ ํŽ˜์ด์ง€๋กœ ์ด๋™

caputdraconis

  • caputdraconis์˜ ์ฒซ ํŽ˜์ด์ง€๋กœ ์ด๋™

๊ฒ€์ƒ‰

๋ฉ”๋‰ด

    ์นดํ…Œ๊ณ ๋ฆฌ

    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (168)
      • Cloud (3)
      • Computer Network (12)
      • Database (2)
      • Terraform (2)
      • ๐Ÿฅš๊ณ ๋ฆฌ์ฆ˜ (13)
      • ๊ฒ…๋ถ€๊ฒ…๋ถ€๐Ÿ™ƒ (10)
        • Naver CS50 ์ฝ”์นญ์Šคํ„ฐ๋”” (2)
        • Machine Learning (1)
        • Computing System (6)
      • ์–ธ์–ด&ํ”„๋ ˆ์ž„์›Œํฌ (20)
        • Python (4)
        • Django (10)
        • Node JS (1)
        • C++ (2)
        • Java (1)
        • Flutter (2)
      • Security (76)
        • WebHacking Study (11)
        • ์ง€์˜ฅ๋ฐฉ ์Šคํ„ฐ๋”” (22)
        • ์—ฌ๋ฆ„๋ฐฉํ•™ ์Šคํ„ฐ๋”” (2)
        • PWN Study (6)
        • SUA Reversing Study (3)
        • PWN (3)
        • WebHacking (20)
        • Reversing (4)
      • ์•Œ๊ณ  ์žˆ์œผ๋ฉด ๋„์›€๋˜์ง€ ์•Š์„๊นŒ,,? (23)
      • ์ผ์ƒ๋‹ค๋ฐ˜์‚ฌ (1)
      • ๊ทผํ™ฉ ์ •๋ฆฌ (1)
      • 42 Seoul (1)
        • Setting (1)

    ์ตœ๊ทผ ๊ธ€

    ์ธ๊ธฐ ๊ธ€

    ๋Œ“๊ธ€

    ๊ณต์ง€์‚ฌํ•ญ

    ์•„์นด์ด๋ธŒ

    ํƒœ๊ทธ

    • ํŒŒ์ด์ฌํ•จ์ˆ˜
    • ์›นํ•ดํ‚น.kr
    • ๋“œ๋ฆผํ•ต
    • ๋ฆฌ์ŠคํŠธํ•จ์ˆ˜
    • old-16
    • Python
    • ํŒŒ์ด์ฌ๊ธฐ์ดˆ
    • ํŒŒ์ด์ฌ

    ๋‚˜์˜ ์™ธ๋ถ€ ๋งํฌ

    • Github
    • solved.ac
    • caputdraconis@kakao.com

    ์ •๋ณด

    caputdraconis์˜ caputdraconis

    caputdraconis

    caputdraconis

    ๋ธ”๋กœ๊ทธ ๊ตฌ๋…ํ•˜๊ธฐ

    • ๊ตฌ๋…ํ•˜๊ธฐ
    • RSS ํ”ผ๋“œ

    ๋ฐฉ๋ฌธ์ž

    • ์ „์ฒด ๋ฐฉ๋ฌธ์ž
    • ์˜ค๋Š˜
    • ์–ด์ œ

    ํ‹ฐ์Šคํ† ๋ฆฌ

    • ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ
    • ์ด ๋ธ”๋กœ๊ทธ ๊ด€๋ฆฌํ•˜๊ธฐ
    • ๊ธ€์“ฐ๊ธฐ
    Powered by Tistory / Kakao. Copyright © caputdraconis.

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”