μ€λμ μΏ ν€μ μΈμ
μ μ°¨μ΄λ₯Ό μμ보λλ‘ ν κ²μ!
μΏ ν€μ μΈμ
μ μ°¨μ΄λ κ³΅λΆ νμλ λΆλ€λ κ°λ ν·κ°λ¦΄ μ μλ€κ³ νλ
νμ€ν μ§κ³ λμ΄κ°λλ‘ ν©μλ€!
μΏ ν€μ μΈμ
μ http νλ‘ν μ½μ μ½μ μ 컀λ²νκΈ° μν΄μ μ‘΄μ¬νλ€.
http νλ‘ν μ½μ Connectionless νκ³ Stateless νλλ°
Connectionless λ ν΄λΌμ΄μΈνΈκ° request(μμ²)λ₯Ό μλ²μ 보λ΄λ©΄, μλ²λ ν΄λΌμ΄μΈνΈμκ² response(λλ΅,μλ΅)νκ³
μλ‘ μ μμ λλ νΉμ±μ λ§νλ€.
Stateless λ μ μμ λλ μκ° ν΄λΌμ΄μΈνΈμ μλ²μ ν΅μ μ λλλ©°, μνμ 보λ μ μ§λμ§ μλ νΉμ±μ λ§νλ€.
μ΄ λκ°μ§ νΉμ±λλ¬Έμ httpλ ν΅μ μ μ μ§νκ³ μμ λ λλΉλλ 리μμ€λ₯Ό μ€μΌ μ μμ§λ§,
ν΅μ μ μλ ν λλ§λ€ κ³μ μΈμ¦μ ν΄μΌνλ€.
μ΄λ° λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ μΏ ν€μ μΈμ
μ μ¬μ©νλλ°
β» μ¬κΈ°μ μΏ ν€λ?
μΏ ν€(μμ΄: cookie)λ νμ΄νΌ ν
μ€νΈμ κΈ°λ‘μ(HTTP)μ μΌμ’
μΌλ‘μ μΈν°λ· μ¬μ©μκ° μ΄λ ν μΉμ¬μ΄νΈλ₯Ό λ°©λ¬Έν κ²½μ°
κ·Έ μ¬μ΄νΈκ° μ¬μ©νκ³ μλ μλ²λ₯Ό ν΅ν΄ μΈν°λ· μ¬μ©μμ μ»΄ν¨ν°μ μ€μΉλλ μμ κΈ°λ‘ μ 보 νμΌμ μΌμ»«λλ€.
HTTP μΏ ν€, μΉ μΏ ν€, λΈλΌμ°μ μΏ ν€λΌκ³ λ νλ€.
μ΄ κΈ°λ‘ νμΌμ λ΄κΈ΄ μ 보λ μΈν°λ· μ¬μ©μκ° κ°μ μΉμ¬μ΄νΈλ₯Ό λ°©λ¬Έν λλ§λ€ μ½νκ³ μμλ‘ μλ‘μ΄ μ λ³΄λ‘ λ°λλ€.
β» μΏ ν€μ λμλ°©μμ?
μΉ μλ²μ μΉ λΈλΌμ°μ κ°μ μνΈνλ ₯μΌλ‘ μ΄λ£¨μ΄μ§λ€.
μΉμλ²κ° μΉλΈλΌμ°μ μκ² μλ΅μ ν λ HTTP νλ‘ν μ½μ μλ HTTPν€λμ μΏ ν€ μ 보λ₯Ό ν¬ν¨ μμΌ
ν΄λΌμ΄μΈνΈ μͺ½μΌλ‘ 보λΈλ€. κ·Έλ¦¬κ³ μΉλΈλΌμ°μ μκ² μΉμλ²μ μ‘΄μ¬νλ νμ΄μ§λ₯Ό μꡬν λ
κ·Έμ μ μμ μ΄ λ°©λ¬Έ νμλ ν΄λΉ νμ΄μ§μ λν΄μ μΉ μλ²κ° λΈλΌμ°μ μͺ½μΌλ‘ μ¬μ΄λμ μΏ ν€λ₯Ό
μΉ μλ²λ‘ λ€μ 건λ€μ£Όμ΄μ μ΄μ μ μνλ₯Ό μΉ μλ²κ° μ μ μλ€.
- μμ½ - |
β» μΉμλ²μ μΉ λΈλΌμ°μ κ°μ μνΈνλ ₯μΌλ‘ μ΄λ£¨μ΄μ§λ€. 1) ν΄λΌμ΄μΈνΈκ° λΈλΌμ°μ λ‘ μΉ νμ΄μ§μ μ μ 2) ν΄λΌμ΄μΈνΈκ° μμ²ν μΉνμ΄μ§λ₯Ό μ μ‘ λ°μ -> λμμ μΏ ν€(ν΄λΌμ΄μΈνΈμ μνμ 보)λ₯Ό νλμ μ μ₯ 3) ν΄λΌμ΄μΈνΈκ° μ¬ λ°©λ¬Έμ μΉνμ΄μ§ μμ²κ³Ό ν¨κ» μΏ ν€ κ°λ μ μ‘ 4) μ§μμ μΌλ‘ λ‘κ·ΈμΈ μ 보λ₯Ό κ°μ§κ³ μλ κ² μ²λΌ μ¬μ©λ¨. |
β» μΈμ
μ΄λ?
μΈμ
(Session)μ΄λ μΌμ μκ°λμ κ°μ μ¬μ©μ(μ ννκ² λΈλΌμ°μ λ₯Ό λ§νλ€)λ‘ λΆν° λ€μ΄μ€λ μΌλ ¨μ
μꡬλ₯Ό νλμ μνλ‘ λ³΄κ³ κ·Έ μνλ₯Ό μΌμ νκ² μ μ§μν€λ κΈ°μ μ΄λ€. λ°©λ¬Έμμ μμ²μ λ°λ₯Έ μ 보λ₯Ό
λ°©λ¬Έμ λ©λͺ¨λ¦¬μ μ μ₯νλ κ²μ΄ μλ μΉ μλ²κ° μΈμ
μμ΄λ νμΌμ λ§λ€μ΄
μλΉμ€κ° λμκ°κ³ μλ μλ²μ μ μ₯νλ κ²μ΄λ€.
μλ²μ μ μ₯λκΈ° λλ¬Έμ μ¬μ©μ μ λ³΄κ° λ
ΈμΆλμ§ μλλ€.
μ¦ μ¬μ©μκ° λΈλΌμ°μ λ₯Ό μ΄μ΄ μλ²μ μ μν λ€ μ μμ μ’
λ£ν λ μμ κΉμ§λ₯Ό λ§νλ€.
λν HTTP νλ‘ν μ½ λΉμ μν νλ‘ν μ½μ΄λ―λ‘, 맀 μ μμλ§λ€ μλ‘μ΄ λ€νΈμν¬ μ°κ²°μ΄ μ΄λ£¨μ΄μ§λλ°, μΈμ
μ΄
μ°κ²° μ μ§λ₯Ό κ°λ₯νκ² ν΄μ€λ€.
β» μΈμ
μ μ리 ?
1) μΈμ
IDλ₯Ό μλ²μμ ν΄λΌμ΄μΈνΈκ° λ€μ μΉμ¬μ΄νΈμ μ μμ λ°κΈν΄ μ€λ€.
2) μλ²μμ ν΄λΌμ΄μΈνΈλ‘ λ°κΈν΄μ€ μΈμ
IDλ₯Ό μΏ ν€λ₯Ό μ¬μ©ν΄μ μ μ₯νλ€.
3) ν΄λΌμ΄μΈνΈλ λ€μ μ μμ, μ΄ μΏ ν€λ₯Ό μ΄μ©ν΄μ μΈμ
IDκ°μ μλ²μ μ λ¬νλ€.
μΏ ν€μ μΈμ
μ λΉμ·ν μν μ νλ©°, λμμ리 λν λΉμ·νλ€.
κ°μ₯ ν° μ°¨μ΄λΌκ³ νλ©΄ μ μ₯λλ μμΉλ₯Ό λ§ν μ μλλ°
μΏ ν€λ ν΄λΌμ΄μΈνΈμ μ μ₯λμ΄ λ³΄λ΄κ³
μΈμ
μ μλ²μ μ μ₯λμ΄μ ν΄λΌμ΄μΈνΈμκ² μλ €μ€ ν μ¬μ©νλ€λ μ μ΄ λ€λ₯΄λ€.
μΏ ν€λ μλ²μ μμμ μ ν μ¬μ©νμ§ μκ³
μΈμ
μ μλ²μ μμμ μ¬μ©νλ€λ μ μμ μ±λ₯λ©΄μΌλ‘λ μΏ ν€κ° λ«λ€κ³ ν μ μλ€.
μ¦ μλ²μ μμ²μ μΏ ν€κ° λ λΉ λ₯Έ μλλ₯Ό λ΄λ©°, μλ²μ λΆλ΄μ΄ κ°μ§ μλλ€.
νμ§λ§ 보μμΈ‘λ©΄μμλ μΈμ
μ΄ λ μμ νλ€κ³ λ³Ό μ μλ€.
μ΄μ μΏ ν€μ μΈμ
μ μ°¨μ΄λ₯Ό μ’ μμ
¨λμ!?
κ·Έλ λ€λ©΄ λ€μ κΈμ!
μΏ ν€μ μΈμ
μ μ΄μ©ν 곡격기λ²
XSS, CSRFμ λνμ¬ μ€λͺ
λλ¦¬κ³ λκ°μ§ 곡격μ μ°¨μ΄λ₯Ό μ μ΄μ
κΈμ μ¬λ € 보λλ‘ ν κ²μ!!^^
λ€λ€ μ΄κ³΅νμΈμ©~