μ£Όν΅κΈ°λ° - μΉ (WEB)
μ£Όμμ 보ν΅μ κΈ°λ°μμ€ - κΈ°μ μ μ·¨μ½μ λΆμ · νκ° λ°©λ²
μ£Όν΅κΈ°λ° νμΌ λ€μ΄λ‘λ - KISA νκ΅μΈν°λ·μ§ν₯μ
https://www.kisa.or.kr/2060204/form?postSeq=12&lang_type=KO&page=1
KISA νκ΅μΈν°λ·μ§ν₯μ
www.kisa.or.kr
μμ μ£Όν΅κΈ°λ° μΉ μ·¨μ½μ μ€ λͺκ°μ§λ₯Ό 골λΌμ κ°λ¨νκ² μ΄ν΄λ³΄λ €νλ€.
5. SQL μΈμ μ (SI)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΉ νμ΄μ§ λ΄μ SQL μΈμ μ μ·¨μ½μ μ‘΄μ¬ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
λνν μΉ μ¬μ΄νΈμ λΉμ μμ μΈ μ¬μ©μ μ λ ₯ κ° νμ©μ μ°¨λ¨νμ¬ μ μμ μΈ λ°μ΄ν°λ² μ΄μ€ μ κ·Ό λ° μ‘°μμ λ°©μ§νκΈ° μν¨μ΄λ€.
보μμν
ν΄λΉ μ·¨μ½μ μ΄ μ‘΄μ¬νλ κ²½μ°, λΉμ μμ μΈ SQL μΏΌλ¦¬λ‘ DBMS λ° λ°μ΄ν°(Data)λ₯Ό μ΄λνκ±°λ μ‘°μ κ°λ₯νλ―λ‘ μ¬μ©μμ μ λ ₯ κ°μ λν νν°λ§μ ꡬνν΄μΌνλ€.
β» SQL μΈμ μ : μ¬μ©μμ μ λ ₯ κ°μΌλ‘ μΉ μ¬μ΄νΈ SQL μΏΌλ¦¬κ° μμ±λλ μ½μ μ μ΄μ©νλ©°, μ λ ₯ κ°μ λ³μ‘°νμ¬ λΉμ μμ μΈ SQL 쿼리λ₯Ό μ‘°ν©νκ±°λ μ€ννλ 곡격μΌλ‘, κ°λ°μκ° μκ°μ§ λͺ»ν SQLλ¬Έμ μ€νλκ² ν¨μΌλ‘μ¨ λ°μ΄ν°λ² μ΄μ€λ₯Ό λΉμ μμ μΌλ‘ μ‘°μμ΄ κ°λ₯νλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ λ°©νλ²½
νλ¨κΈ°μ€
μμλ‘ μμ±λ SQL 쿼리 μ λ ₯μ λν κ²μ¦μ΄ μ΄λ£¨μ΄μ§μ§ μλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μμ€μ½λμ SQL 쿼리λ₯Ό μ λ ₯κ°μΌλ‘ λ°λ ν¨μλ μ½λλ₯Ό μ¬μ©ν κ²½μ°, μμμ SQL 쿼리 μ λ ₯μ λν κ²μ¦ λ‘μ§μ ꡬννμ¬ μλ²μ κ²μ¦λμ§ μλ SQL 쿼리 μμ²μ μλ¬νμ΄μ§κ° μλ μ μ νμ΄μ§κ° λ°νλλλ‘ νν°λ§ μ²λ¦¬νκ³ μΉ λ°©νλ²½μ SQL μΈμ μ κ΄λ ¨ λ£°μ μ μ μ©νμ¬ SQL μΈμ μ 곡격μ μ°¨λ¨νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μ¬μ©μ μ λ ₯ κ°μ νΉμλ¬Έμλ μμμ SQL 쿼리λ₯Ό μ½μ νμ¬ DB μλ¬ νμ΄μ§κ° λ°νλλμ§ νμΈνλ€.
Step 2) μ¬μ©μ μ λ ₯ κ°μ μμμ SQL μ°Έ, κ±°μ§ μΏΌλ¦¬λ₯Ό μ½μ νμ¬ μ°Έ, κ±°μ§ μΏΌλ¦¬μ λ°λΌ λ°νλλ νμ΄μ§κ° λ€λ₯Έμ§ νμΈνλ€.
Step 3) λ‘κ·ΈμΈ νμ΄μ§μ μ°Έμ΄ λλ SQL 쿼리λ₯Ό μ λ¬νμ¬ λ‘κ·ΈμΈλλμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* SQL 쿼리μ μ¬μ©λλ λ¬Έμμ΄μ μ ν¨μ±μ κ²μ¦νλ λ‘μ§μ ꡬννλ€.
(μ λ ₯ κ°μμ νΉμλ¬Έμλ₯Ό μ κ±°νμ¬ λ°μΈλ©νλ μμ€λ₯Ό ꡬννλ€.)
* λ€μκ³Ό κ°μ νΉμλ¬Έμλ₯Ό μ¬μ©μ μ λ ₯κ°μΌλ‘ λ°μ§ λͺ»νλλ‘νλ€.
λ¬Έμ λ°μ΄ν° ꡬλΆκΈ°νΈ( ' ), 쿼리 κ΅¬λΆ κΈ°νΈ ( ; ), ν΄λΉλΌμΈ μ£Όμ κ΅¬λΆ κΈ°νΈ( -- , # ), ꡬ문 μ£Όμ( /* */)
* Dynamic SQL ꡬ문 μ¬μ©μ μ§μνλ©° νλΌλ―Έν°μ λ¬Έμμ΄ κ²μ¬λ₯Ό νμμ μΌλ‘ μ μ©νλ€.
(PreparedStatement κ°μ²΄λ₯Ό μ¬μ©νλ€. μΈλΆ μ λ ₯ κ°μ΄ μμΉνλ λΆλΆμ "?" λ‘ μ€μ νμ¬ μ€ν μ ν΄λΉ νλΌλ―Έν°κ° μ€νλλλ‘ μμ νλ€. - Static SQL ꡬ문μ μ¬μ©νλ€.)
* μμ€ν μμ μ 곡νλ μλ¬λ©μμ§ λ° DBMSμμ μ 곡νλ μλ¬ μ½λκ° λ ΈμΆλμ§ μλλ‘ μμΈμ²λ¦¬νλ€.
β» λ¬Έμμ΄ μ ν¨μ± κ²μ¦ λ‘μ§ κ΅¬ν μ μΉ μλΉμ€μμ μ¬μ©νκ³ μλ λͺ λ Ήμ΄ λ° νΉμλ¬Έμκ° νν°λ§ λμ΄ μ₯μ κ° λ°μν μ μμΌλ―λ‘ μ¬μ μν₯ λΆμμ΄ νμνλ€.
8. λλ ν°λ¦¬ μΈλ±μ± (DI)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΉ μλ² λ΄ λλ ν°λ¦¬ μΈλ±μ± μ·¨μ½μ μ‘΄μ¬ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
λλ ν°λ¦¬ μΈλ±μ± μ·¨μ½μ μ μ κ±°νμ¬, νΉμ λλ ν°λ¦¬ λ΄μ λΆνμν νμΌ μ 보μ λ ΈμΆμ μ°¨λ¨νλ€.
보μμν
ν΄λΉ μ·¨μ½μ μ΄ μ‘΄μ¬νλ κ²½μ°, λΈλΌμ°μ λ₯Ό ν΅ν΄ νΉμ λλ ν°λ¦¬ λ΄ νμΌ λ¦¬μ€νΈλ₯Ό λ ΈμΆνμ¬ μμ©μμ€ν μ ꡬ쑰λ₯Ό μΈλΆμ νμ©ν μ μκ³ , λ―Όκ°ν μ λ³΄κ° ν¬ν¨λ μ€μ νμΌ λ±μ΄ λ ΈμΆλ κ²½μ° λ³΄μμ μ¬κ°ν μνμ μ΄λν μ μλ€.
β» λλ ν°λ¦¬ μΈλ±μ± μ·¨μ½μ : νΉμ λλ ν°λ¦¬μ μ΄κΈ° νμ΄μ§ νμΌμ΄ μ‘΄μ¬νμ§ μμ λ μλμΌλ‘ λλ ν°λ¦¬ 리μ€νΈλ₯Ό μΆλ ₯νλ μ·¨μ½μ μ΄λ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μλ²
νλ¨κΈ°μ€
λλ ν°λ¦¬ νμΌ λ¦¬μ€νΈκ° λ ΈμΆλλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μΉ μλ² μ€μ μ λ³κ²½νμ¬ λλ ν°λ¦¬ νμΌ λ¦¬μ€νΈκ° λ ΈμΆλμ§ μλλ‘ μ€μ νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) URL κ²½λ‘ μ€ νμΈνκ³ μ νλ λλ ν°λ¦¬κΉμ§λ§ μ£Όμμ°½μ μ λ ₯νμ¬ μΈλ±μ± μ¬λΆλ₯Ό νμΈνλ€.
Step 2) λλ ν°λ¦¬ λμ %3f.jsp λ¬Έμμ΄μ λΆμ¬ λλ ν°λ¦¬ μΈλ±μ±μ΄ λλμ§ νμΈνλ€.
(Apache μλ²μμ μ’ μ’ λλ κ²½μ°κ° μλ ꡬ문μ΄λ€.)
보μμ€μ λ°©λ²
* μΉ μλ² νκ²½μ€μ μμ λλ ν°λ¦¬ μΈλ±μ± κΈ°λ₯μ μ κ±°νλ€.
9. μ 보 λμΆ (IL)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΉ μλΉμ€ μ λΆνμν μ λ³΄κ° λ ΈμΆλλμ§ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μΉ μλΉμ€ μ λΆνμν μ λ³΄κ° λ ΈμΆλλ κ²μ λ°©μ§ν¨μΌλ‘μ¨ 2μ°¨ 곡격μ νμ©λ μ μλ μ 보 λ ΈμΆμ μ°¨λ¨νκΈ° μν¨μ΄λ€.
보μμν
μΉμ¬μ΄νΈμ μ€μμ 보(κ°μΈμ 보, κ³μ μ 보, κΈμ΅μ 보 λ±)κ° λ ΈμΆλκ±°λ μλ¬ λ°μμ κ³Όλν μ 보(μ ν리μΌμ΄μ μ 보, DBμ 보, μΉ μλ² κ΅¬μ± μ 보, κ°λ° κ³Όμ μ μ½λ©νΈ λ±)κ° λ ΈμΆλ κ²½μ° κ³΅κ²©μλ€μ 2μ°¨ 곡격μ μν μ λ³΄λ‘ νμ©λ μ μλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ μλ²
νλ¨κΈ°μ€
μΉ μ¬μ΄νΈμ μ€μμ λ³΄κ° λ ΈμΆλκ±°λ, μλ¬ λ°μ μμ κ³Όλν μ λ³΄κ° λ ΈμΆλλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μΉ μ¬μ΄νΈμ λ ΈμΆλλ μ€μμ 보λ λ§μ€νΉμ μ μ©νμ¬μΌ νλ©°, λ°μ κ°λ₯ν μλ¬μ λν΄ μ΅μνμ μ 보 λλ μ¬μ μ μ€λΉλ λ©μμ§λ§ μΆλ ₯νλλ‘ νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μΉ μ¬μ΄νΈμ μ€μμ λ³΄κ° νλ¬ΈμΌλ‘ λ ΈμΆλκ³ μλμ§ νμΈνλ€.
Step 2) μΉ νμ΄μ§μ λ§μ€νΉ λ μ€μμ λ³΄κ° μΉ νμ΄μ§ μμ€μ νλ¬ΈμΌλ‘ λ ΈμΆλκ³ μλμ§ νμΈνλ€.
Step 3) μλ¬ λ©μμ§ λλ μλ¬ νμ΄μ§μμ κ³Όλν μ λ³΄κ° λ ΈμΆλλμ§ νμΈνλ€.
Step 4) μΈμ½λ©λ μ€μ μ 보λ λμ½λ© κ°λ₯νμ§ νμΈνλ€.
Step 5) μμμ κ³μ μΌλ‘ λ‘κ·ΈμΈμ μλνμ¬ λ°νλλ μλ¬ λ©μμ§λ₯Ό ν΅ν΄ νΉμ IDμ κ°μ μ¬λΆλ₯Ό μλ³ν μ μλμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μ¬μ©μκ° μ£Όλ―Όλ±λ‘λ²νΈ λ·μ리, λΉλ°λ²νΈ μ λ ₯ μ λ³νλ‘ νμνλ λ± λ§μ€νΉ μ²λ¦¬λ₯Ό νμ¬ μ£Όλ³ μ¬λλ€μκ² λ ΈμΆλμ§ μλλ‘ νλ€.
* κ°μΈμ 보μ μ‘°ν, μΆλ ₯ μ λ€μκ³Ό κ°μ μμΉμΌλ‘ μΌλΆ μ 보μ λ§μ€νΉμ μ μ©νμ¬ νμνλ€.
1) μ±λͺ μ€ μ΄λ¦μ κ°μ΄λ° κΈμ(ex : ν*λ)
2) μλ μμΌ (ex : ****λ **μ **μΌ)
3) μ νλ²νΈ (ex : 010-****-5678)
4) μ£Όμμ μ/λ©΄/λ (ex : μμΈμ λ Έμꡬ ***λ)
5) IPv4 μ£Όμμ κ²½μ° : 17~24bit / IPv6 μ£Όμμ κ²½μ° 113~128bit
* μΉ νμ΄μ§λ₯Ό μ΄μ μλ²μ μ΄κ΄ μ μ£Όμ(Comment)λ λͺ¨λ μ κ±°νμ¬ μ΄κ΄νλ€.
* μ€μμ 보(κ°μΈμ 보, κ³μ μ 보, κΈμ΅μ 보 λ±)λ₯Ό HTML μμ€μ ν¬ν¨νμ§ μλλ‘ νλ€.
* λ‘κ·ΈμΈ μ€ν¨ μ λ°νλλ μλ¬ λ©μμ§λ νΉμ IDμ κ°μ μ¬λΆλ₯Ό μλ³ν μ μλλ‘ κ΅¬ννλ€.
* μλ¬ μ½λμ λνμ¬ λ³λμ μλ¬ νμ΄μ§λ‘ Redirect νκ±°λ μ μ ν μλ¬μ²λ¦¬ 루ν΄μ μ€μ νμ¬ μ²λ¦¬νλλ‘νλ€.
10. μ μ± μ½ν μΈ (CS)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
κ²μν λ±μ μ μ± μ½ν μΈ μ½μ λ° μ€ν μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μ¬μ΄νΈ λ΄μ μ μμ μΈ μ½ν μΈ μ½μ λ° μ€νμ λ°©μ§νκΈ° μν¨μ΄λ€.
보μμν
μΉ μ¬μ΄νΈ κ²μν, λκΈ, μλ£μ€ λ±μ μ μμ μΈ μ½ν μΈ λμ μ μ± μ½ν μΈ λ₯Ό μ£Όμ νμ¬ μ€νλ κ²½μ° μ¬μ©μκ° ν΄λΉ μ½ν μΈ μ΄λμ μ μ±μ½λ κ°μΌ λ° μΉ νμ΄μ§ λ³μ‘° λ± λ³΄μμ μ¬κ°ν μνμ λ ΈμΆλ μ μλ€.
β» κΈ°λ°μμ€ νΉμ±μ μμΉμ μΌλ‘ μ λ‘λ κΈ°λ₯μ μ νν΄μΌ νλ κΌ μ¬μ©ν΄μΌ νλ κ²½μ°μλ νΉμ μ¬μ©μλ§ νμ©λ νμ₯μμ μ½ν μΈ νμΌμ μ λ‘λ ν μ μλλ‘ κ΅¬ννλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ λ°©νλ²½
νλ¨κΈ°μ€
μ μμ μΈ μ½ν μΈ κ° μ λ ₯λλ©°, μ€νλλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μ¬μ©μ μ λ ₯ κ°μ λν κ²μ¦ λ‘μ§ μΆκ° λ° μ€ν μ νμ μ€μ νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μ½ν μΈ μ½μ λ° νμΌ μ λ‘λ μ ν νν°λ§μ μ μ© μ¬λΆλ₯Ό μ κ²νλ€.
Step 2) κ²μν λ±μ νμ΄μ§μμ κ°μ μ μΌλ‘ μ΄λ€μ§λ μ μμ μΈ νλ‘κ·Έλ¨ λ€μ΄λ‘λ λ° μ½ν μΈ μλ μ€νμ΄λ μ μμ μΈ μ¬μ΄νΈλ‘μ μ΄λμ΄ λ°μνλμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μ μ± μ½ν μΈ κ° μ½μ λμ΄μλ νμ΄μ§μ λνμ¬ μ¦κ±°μλ£(νλ©΄, μμ€ λ±)λ₯Ό λ¨κΈ°κ³ , μ½μ λ μ μ± μ½ν μΈ λ₯Ό μμ νκ±°λ νμ΄μ§μ μμ λ±μ μ€μνλ€.
(μ·¨λν μ¦κ±°μλ£λ₯Ό κ°μ§κ³ μ μ± μ½ν μΈ μ μ½μ μμΈμ λνμ¬ λΆμνμ¬ μμΈμ μ κ±°ν κ²μ κΆκ³ νλ€.)
* κ²μνμ κΈ λ±λ‘ λ° νμΌ μ λ‘λ κΈ°λ₯μ μ μ±μ½λκ° ν¬ν¨λ μ μλ μ½ν μΈ λ₯Ό μ½μ λλ μ λ‘λ νμ§ λͺ»νκ² νν°λ§μ μ μ©νλ€.
* μ£ΌκΈ°μ μΌλ‘ μ λ‘λλ νμΌμ λμμΌλ‘ λ°μ΄λ¬μ€ κ²μ¬λ₯Ό μ€μνλ€.
11. ν¬λ‘μ€μ¬μ΄νΈ μ€ν¬λ¦½ν (XS)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΉ μ¬μ΄νΈ λ΄ ν¬λ‘μ€μ¬μ΄νΈ μ€ν¬λ¦½ν μ·¨μ½μ μ μ‘΄μ¬ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μΉ μ¬μ΄νΈ λ΄ ν¬λ‘μ€μ¬μ΄νΈ μ€ν¬λ¦½ν μ·¨μ½μ μ μ κ±°νμ¬ μ μ± μ€ν¬λ¦½νΈμ μ€νμ μ°¨λ¨νλ€.
보μμν
μΉ μ ν리μΌμ΄μ μμ μ¬μ©μ μ λ ₯ κ°μ λν νν°λ§μ΄ μ λλ‘ μ΄λ£¨μ΄μ§μ§ μμ κ²½μ°, 곡격μλ μ¬μ©μ μ λ ₯ κ°μ λ°λ κ²μν, URL λ±μ μ μμ μΈ μ€ν¬λ¦½νΈ(Javascript, Active X, Flash λ±)λ₯Ό μ½μ νμ¬ κ²μκΈμ΄λ μ΄λ©μΌμ μ½λ μ¬μ©μμ μΏ ν€(μΈμ )λ₯Ό νμ·¨νμ¬ λμ©νκ±°λ μ μ±μ½λ μ ν¬ μ¬μ΄νΈλ‘ Redirect ν μ μλ€.
β» ν¬λ‘μ€μ¬μ΄νΈ μ€ν¬λ¦½ν : μ μμ μΈ μ¬μ©μκ° κ³΅κ²©νλ €λ μ¬μ΄νΈμ μ€ν¬λ¦½νΈλ₯Ό λ£λ κΈ°λ²μΌλ‘ 곡격 λ°©μμ ν¬κ² Stored 곡격 λ°©μκ³Ό Reflected 곡격 λ°©μμΌλ‘ λλμ΄μ§λ€.
β» OWASP - XSS νν°λ§ κ΄λ ¨ μ°Έκ³ μ¬ν
https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ λ°©νλ²½
νλ¨κΈ°μ€
μ¬μ©μ μ λ ₯ κ°μ λν κ²μ¦ λ° νν°λ§μ΄ μ΄λ£¨μ΄μ§μ§ μμΌλ©°, HTML μ½λκ° μ λ ₯ · μ€νλλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μΉ μ¬μ΄νΈμ κ²μν, 1:1 λ¬Έμ, URL λ±μμ μ¬μ©μ μ λ ₯ κ°μ λν΄ κ²μ¦ λ‘μ§μ μΆκ°νκ±°λ μ λ ₯λλλΌλ μ€νλμ§ μκ² νκ³ , λΆλμ΄νκ² μΉ νμ΄μ§μμ HTMLμ μ¬μ©νλ κ²½μ° HTML μ½λ μ€ νμν μ½λμ λν΄μλ§ μ λ ₯λλλ‘ μ€μ νλ€.
μ κ² λ° μ‘°μΉλ°©μ
β» XSS μ·¨μ½ μ ν
- XSSμ μ·¨μ½ν νμ΄μ§ μ ν
1. HTMLμ μ§μνλ κ²μν
2. Search Page
3. Join Form Page
4. Refererrλ₯Ό μ΄μ©νλ Page
5. κ·Έ μΈ μ¬μ©μλ‘λΆν° μ λ ₯λ°μ νλ©΄μ μΆλ ₯νλ λͺ¨λ νμ΄μ§μμ λ°μμ΄ κ°λ₯νλ€.
- XSSλ₯Ό μ λ°ν μ μλ μ€ν¬λ¦½νΈ
<script> ... </script>
<img src="javascript:......">
<div style="background-image:url(javascript...)"></div>
<embed>...</embed>
<iframe></iframe>
β» Filteringμ μ°ννκΈ° μν λ€μν ννμ΄ κ°λ₯νλ€.
β %3Cscript%3E........%3Cscript%3E
β Javascript;
β Java script
β Java
script
μ κ²λ°©λ²
Step 1) μ¬μ©μ μ λ ₯ κ°μ μ λ¬λ°λ μ ν리μΌμ΄μ (νμμ 보 λ³κ²½, κ²μν, λκΈ, μλ£μ€ λ±)μ μ€ν¬λ¦½νΈ μ λ ₯ ν μ€νλλμ§ νμΈνλ€.
Step 2) μ¬μ©μ μ λ ₯ κ°μ μ λ¬λ°λ μ ν리μΌμ΄μ (κ²μ, URL)μ μ€ν¬λ¦½νΈ μ λ ₯ ν μ€νλλμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μΉ μ¬μ΄νΈμ μ¬μ©μ μ λ ₯ κ°μ΄ μ μ₯λλ νμ΄μ§λ 곡격μκ° μΉ λΈλΌμ°μ λ₯Ό ν΅ν΄ μ€νλλ μ€ν¬λ¦½νΈ μΈμ΄λ₯Ό μ¬μ©νμ¬ κ³΅κ²©νλ―λ‘ ν΄λΉλλ νκ·Έ μ¬μ©μ μ¬μ μ μ ννκ³ , μ¬μ©μ μ λ ₯ κ°μ λν νν°λ§ μμ μ΄ νμνλ€.
* κ²μλ¬Όμ λ³Έλ¬ΈλΏλ§ μλλΌ μ λͺ©, λκΈ, κ²μμ΄ μ λ ₯ μ°½, κ·Έ μΈ μ¬μ©μ μΈ‘μμ λμ΄μ€λ κ°μ μ λ’°νλ formκ³Ό νλΌλ―Έν° κ°μ λνμ¬ νν°λ§μ μννλ€.
* μ λ ₯ κ°μ λν νν°λ§ λ‘μ§ κ΅¬ν μ 곡백 λ¬Έμλ₯Ό μ κ±°νλ trim, replace ν¨μλ₯Ό μ¬μ©νμ¬ λ°λμ μλ² μΈ‘μμ ꡬνλμ΄μΌ νλ€.
* URL Decoder ν΄λμ€μ μ‘΄μ¬νλ decode λ©μλλ₯Ό ν΅ν΄ URL μΈμ½λ©μ΄ μ μ©λ μ¬μ©μ μ λ ₯ κ°μ λμ½λ© ν¨μΌλ‘μ¨ μ°ν 곡격μ μ°¨λ¨νλ€.
* μΉ λ°©νλ²½μ λͺ¨λ μ¬μ©μ μ λ ₯ νΌ(νμμ 보 λ³κ²½, κ²μν, λκΈ, μλ£μ€, κ²μ, URL λ±)μ λμμΌλ‘ νΉμλ¬Έμ, νΉμ ꡬ문μ νν°λ§νλλ‘ λ£°μ μ μ μ©ν΄μΌνλ€.
β» νν°λ§ μ‘°μΉ λμ μ λ ₯ κ°
β μ€ν¬λ¦½νΈ μ μμ΄ : <SCRIPT>, <OBJECT>, <APPLET>, <EMBED>, <FORM>, <IFRAME> λ±
β νΉμλ¬Έμ : <, >, ", ', &, %, %00(null) λ±
β» μ°Έκ³ : νν°λ§ λμ
12. μ½ν λ¬Έμμ΄ κ°λ (BF)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΉ νμ΄μ§ λ΄ λ‘κ·ΈμΈ νΌ λ±μ μ½ν κ°λμ λ¬Έμμ΄ μ¬μ© μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μ μΆ κ°λ₯ν μ·¨μ½ν λ¬Έμμ΄ μ¬μ©μ μ ννμ¬ κ³μ λ° ν¨μ€μλ μΆμΈ‘ 곡격μ λ°©μ§νκΈ° μν¨μ΄λ€.
보μμν
ν΄λΉ μ·¨μ½μ μ΄ μ‘΄μ¬νλ κ²½μ° μ μΆκ° μ©μ΄ν κ³μ λ° ν¨μ€μλμ μ¬μ©μΌλ‘ μΈν μ¬μ©μ κΆν νμ·¨ μνμ΄ μ‘΄μ¬νλ©°, ν΄λΉ μνμ λ°©μ§νκΈ° μν΄ κ°μ μ μ μ± λ° λ³΅μ‘μ±μ κ²μ¦νλ λ‘μ§μ ꡬννμ¬μΌ νλ€.
β» μ½ν λ¬Έμμ΄ κ°λ μ·¨μ½μ : μΉ μ¬μ΄νΈμμ μ·¨μ½ν ν¨μ€μλλ‘ νμκ°μ μ΄ κ°λ₯ν κ²½μ° κ³΅κ²©μλ μΆμΈ‘ λ° μ£Όλ³ μ 보λ₯Ό μμ§νμ¬ μμ±ν μ¬μ νμΌλ‘ λμ μ μλνμ¬ μ¬μ©μ κ³μ μ νμ·¨ν μ μλ μ·¨μ½μ μ΄λ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ
νλ¨κΈ°μ€
κ΄λ¦¬μ κ³μ λ° ν¨μ€μλκ° μ μΆνκΈ° μ¬μ΄ κ°μΌλ‘ μ€μ λμ΄ μμΌλ©°, μΌμ νμ μ΄μ μΈμ¦ μ€ν¨ μ λ‘κ·ΈμΈμ μ ννκ³ μμ§ μμ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
κ³μ λ° λΉλ°λ²νΈμ μ²΄ν¬ λ‘μ§μ μΆκ° ꡬνν΄μΌνλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μΉ μ¬μ΄νΈ λ‘κ·ΈμΈ νμ΄μ§μ λ‘κ·ΈμΈ μ°½μ μΆμΈ‘ κ°λ₯ν κ³μ μ΄λ ν¨μ€μλλ₯Ό μ λ ₯νμ¬ μ μμ μΌλ‘ λ‘κ·ΈμΈλλμ§ νμΈνλ€.
Step 2) μΌμ νμ μ΄μ μΈμ¦ μ€ν¨ μ λ‘κ·ΈμΈμ μ ννλμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μ·¨μ½ν κ³μ λ° ν¨μ€μλλ₯Ό μμ νκ³ , μ¬μ©μκ° μ·¨μ½ν κ³μ μ΄λ ν¨μ€μλλ₯Ό λ±λ‘νμ§ λͺ»νλλ‘ ν¨μ€μλ κ·μ μ΄ λ°μλ μ²΄ν¬ λ‘μ§μ νμκ°μ , μ 보λ³κ²½, ν¨μ€μλ λ³κ²½ λ±μ μ μ©μ΄ νμν νμ΄μ§μ λͺ¨λ ꡬννμ¬μΌ νλ€.
β» κ·μ μμ
1) μλ¬Έ λ · μλ¬Έμ, μ«μ, νΉμλ¬Έμ μ€ 2μ’ λ₯ μ΄μμ μ‘°ν©νμ¬ μ΅μ 10μ리 μ΄μ λλ, 3μ’ λ₯ μ΄μμ μ‘°ν©νμ¬ μ΅μ 8μ리 μ΄μμ κΈΈμ΄λ‘ ꡬμ±νλ€.
2) μ°μμ μΈ μ«μλ μμΌ, μ νλ²νΈ λ± μΆμΈ‘νκΈ° μ¬μ΄ κ°μΈμ 보 λ° μμ΄λμ λΉμ·ν λΉλ°λ²νΈλ μ¬μ©νμ§ μλ κ²μ κΆκ³ νλ€.
3) λΉλ°λ²νΈμ μ ν¨κΈ°κ°μ μ€μ νμ¬ λ°κΈ°λ³ 1ν μ΄μ λ³κ²½μ κΆκ³ νλ€.
4) μ΅κ·Ό μ¬μ©λμλ ν¨μ€μλμ μ¬μ¬μ©μ κΈμ§νλ€.
* λ‘κ·ΈμΈ μ ν¨μ€μλ μ λ ₯ μ€ν¨κ° μΌμ νμ(3~5ν) μ΄μ μ΄κ³Όν κ²½μ° κ΄λ¦¬μμκ² ν΅λ³΄ λ° κ³μ μ μ κΈ μ€μ νλ€.
β» μΈμ¦ μ€ν¨ νμλ₯Ό Client Side Scriptλ₯Ό μ¬μ©νλ©΄ μ¬μ©μκ° μμλ‘ μμ ν μ μμΌλ―λ‘ Server Side Scriptλ₯Ό ν΅νμ¬ κ΅¬ννλ€.
13. λΆμΆ©λΆν μΈμ¦ (IA)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μ€μ νμ΄μ§ μ κ·Ό μμ μΆκ° μΈμ¦ μꡬ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μ€μ νμ΄μ§μ μΆκ° μΈμ¦μΌλ‘ μ κ·Όμ κ°ννμ¬ λΆνμν μ 보μ λ ΈμΆ λ° λ³μ‘°λ₯Ό μ°¨λ¨νκΈ° μν¨μ΄λ€.
보μμν
μ€μμ 보(κ°μΈμ 보 λ³κ²½ λ±) νμ΄μ§μ λν μΈμ¦ μ μ°¨κ° λΆμΆλΆν κ²½μ°, κΆνμ΄ μλ μ¬μ©μκ° μ€μμ 보 νμ΄μ§μ μ κ·Όνμ¬ μ 보λ₯Ό μ μΆνκ±°λ λ³μ‘°ν μ μμΌλ―λ‘ μ€μμ 보 νμ΄μ§μλ μΆκ°μ μΈ μΈμ¦ μ μ°¨λ₯Ό ꡬννμ¬μΌ νλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ
νλ¨κΈ°μ€
μ€μμ 보 νμ΄μ§ μ κ·Όμ λν μΆκ° μΈμ¦μ νμ§ μλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μ€μμ 보 νμ΄μ§μ λν μΆκ° μΈμ¦ λ‘μ§μ μΆκ°μ μΌλ‘ ꡬννλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μ€μμ 보(κ°μΈμ 보 λ³κ²½ λ±) νμ΄μ§ μ κ·Ό μ μ¬μΈμ¦ μ¬λΆλ₯Ό νμΈνλ€.
Step 2) μΈμ¦ ν νμ΄μ§μ μμ΄λλ§μ μΈμ¦ κ°μΌλ‘ νμ¬ λ³μλ‘ κ΄λ¦¬λκ³ μλμ§λ₯Ό νμΈνλ€.
보μμ€μ λ°©λ²
* μ€μμ 보(κ°μΈμ 보 λ³κ²½ λ±)λ₯Ό νμνλ νμ΄μ§μμλ λ³ΈμΈ μΈμ¦μ μ¬νμΈνλ λ‘μ§μ ꡬννκ³ , μ¬μ©μκ° μΈμ¦ ν μ΄μ© κ°λ₯ν νμ΄μ§μ μ κ·Όν λλ§λ€ μΉμΈμ μ»μ μ¬μ©μμΈμ§ νμ΄μ§λ§λ€ κ²μ¦νμ¬μΌ νλ€.
* μ κ·Ό ν΅μ μ μ± μ ꡬννκ³ μλ μ½λλ ꡬ쑰ν, λͺ¨λνκ° λμ΄ μμ΄μΌ νλ€.
* μ κ·Όμ μ΄κ° νμν λͺ¨λ νμ΄μ§μ ν΅μ μλ¨(λ‘κ·ΈμΈ μ²΄ν¬ λ° κΆν 체ν¬)μ ꡬνν΄μΌ νλ©° νΉν, νλμ νλ‘μΈμ€κ° μ¬λ¬ κ°μ νμ΄μ§ λλ λͺ¨λλ‘ μ΄λ£¨μ΄μ Έ μμ λ κΆν 체ν¬κ° λλ½λλ κ²½μ°λ₯Ό λ°©μ§νκΈ° μν΄μ κ³΅ν΅ λͺ¨λμ μ¬μ©νλ κ²μ κΆμ₯νλ€.
* μΈμ¦ κ³Όμ μ μ²λ¦¬νλ λΆλΆμ Client Side Scriptλ₯Ό μ¬μ©νλ©΄ μ¬μ©μκ° μμλ‘ μμ ν μ μμΌλ―λ‘ Server Side Scriptλ₯Ό ν΅νμ¬ μΈμ¦ λ° νν°λ§ κ³Όμ μ μννλλ‘ νλ€.
14. μ·¨μ½ν ν¨μ€μλ 볡ꡬ (PR)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΉ μ¬μ΄νΈ λ΄ ν¨μ€μλ 볡ꡬ μ μ°¨μ μ μ μ±μ μ κ²νλ€.
μ κ²λͺ©μ
ν¨μ€μλ 볡ꡬ λ‘μ§μ μ μΆνκΈ° μ΄λ ΅κ² ꡬννκ³ , μΈμ¦λ μ¬μ©μ λ©μΌμ΄λ SMSμμλ§ λ³΅κ΅¬ ν¨μ€μλλ₯Ό νμΈν μ μλλ‘ νμ¬ λΉμΈκ°μλ₯Ό ν΅ν μ¬μ©μ ν¨μ€μλ νλ λ° λ³κ²½μ λ°©μ§νκΈ° μν¨μ΄λ€.
보μμν
μ·¨μ½ν ν¨μ€μλ 볡ꡬ λ‘μ§(ν¨μ€μλ μ°ΎκΈ° λ±)μΌλ‘ μΈνμ¬ κ³΅κ²©μκ° λΆλ²μ μΌλ‘ λ€λ₯Έ μ¬μ©μμ ν¨μ€μλλ₯Ό νλ, λ³κ²½ν μ μλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ
νλ¨κΈ°μ€
ν¨μ€μλ μ¬μ€μ μ μΌμ ν¨ν΄μΌλ‘ μ¬μ€μ λκ³ μΉ μ¬μ΄νΈ νλ©΄μ λ°λ‘ μΆλ ₯μμ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
ν¨μ€μλ 볡ꡬ λ‘μ§μ λ³κ²½(ν¨μ€μλ μ¬μ€μ μ λμλ₯Ό μ΄μ©νμ¬ μ¬μ€μ )νκ³ μΈμ¦λ μ¬μ©μ λ©μΌμ΄λ SMSλ‘ μ¬μ€μ λ ν¨μ€μλ νΉμ μ¬μ€μ μ μν λ§ν¬λ₯Ό μ μ‘νλλ‘νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μ¬μ€μ (λλ ν¨μ€μλ μ°ΎκΈ°)λλ ν¨μ€μλμ λνμ¬ μ¬μ©μμ μ°λ½μ², μ£Όμ, λ©μΌ μ£Όμ, μΌμ ν¨ν΄ λ±μ ν¨μ€μλλ‘ μ΄μ©νκ³ μλμ§ νμΈνκ³ , μ¬μ€μ λ ν¨μ€μλλ₯Ό μΈμ¦λ μ¬μ©μ λ©μΌμ΄λ SMSλ‘ μ μ‘νλμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μ¬μ©μμ κ°μΈμ 보(μ°λ½μ², μ£Όμ, λ©μΌ μ£Όμ λ±)λ‘ ν¨μ€μλλ₯Ό μμ±νμ§ λ§μμΌ νλ©°, λμλ₯Ό μ΄μ©ν λΆκ·μΉμ μ΄κ³ μ΅μ κΈΈμ΄(6μ μ΄μ κΆκ³ ) μ΄μμ ν¨ν΄μ΄ μλ ν¨μ€μλλ₯Ό λ°κΈνμ¬μΌ νλ€.
* μ¬μ©μ ν¨μ€μλλ₯Ό λ°κΈν΄μ£Όκ±°λ νμΈν΄μ€ λ μΉ μ¬μ΄νΈ νλ©΄μ λ°λ‘ μΆλ ₯ν΄μ£Όλ κ²μ΄ μλλΌ μΈμ¦λ μ¬μ©μ λ©μΌμ΄λ SMSλ‘ μ μ‘ν΄μ£Όμ΄μΌ νλ€.
* ν¨μ€μλ μ¬λ°κΈ κ²μ¦ μ€ν΄μ λν μκ³κ°μ μ€μ νμ¬ μΌμ νμ μ΄μ μ€ν¨ν κ²½μ°, λ€λ₯Έ λ°©μμΌλ‘ ν¨μ€μλ μ°ΎκΈ° κΈ°λ₯μ μ 곡νμ¬μΌ νλ€. κ²μ¦ ν κΈ°μ‘΄μ ν¨μ€μλκ° μλ μμ ν¨μ€μλλ₯Ό λ°κΈνλλ‘ μ€κ³ν΄μΌ νλ©°, μ¬μ©μκ° μμν¨μ€μλλ₯Ό λ°κΈλ°μ μ¦μ μλ‘μ΄ ν¨μ€μλλ‘ μ¬μ€μ νλλ‘ κ΅¬ννμ¬μΌ νλ€.
15. ν¬λ‘μ€μ¬μ΄νΈ 리νμ€νΈ λ³μ‘° (CF)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μ¬μ©μμ μ λ’°(μΈμ¦) μ 보μ λ³μ‘° μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μ¬μ©μ μ λ ₯ κ°μ λν μ μ ν νν°λ§ λ° μΈμ¦μ λν μ ν¨μ±μ κ²μ¦νμ¬ μ λ’°(μΈμ¦) μ 보 λ΄μ μμ²(Request)μ λν λ³μ‘°λ₯Ό λ°©μ§νλ€.
보μμν
μ¬μ©μμ μ λ’°(μΈμ¦) μ 보 λ΄μμ μ¬μ©μμ μμ²(Request)μ λ³μ‘°ν¨μΌλ‘μ¨ ν΄λΉ μ¬μ©μμ κΆνμΌλ‘ μ μμ μΈ κ³΅κ²©μ μνν μ μλ€.
β» CSRF(Cross Site Request Forgery) : μ¬μ©μκ° μμ μ μμ§μλ 무κ΄νκ² κ³΅κ²©μκ° μλν νμ(μμ , μμ , λ±λ‘ λ±)λ₯Ό νΉμ μΉ μ¬μ΄νΈμ μμ²νκ² νλ 곡격 μ νμ΄λ€.
β» OWASP - CSRF κ΄λ ¨ μ°Έκ³ μ¬ν
https://owasp.org/www-community/attacks/csrf
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ λ°©νλ²½
νλ¨κΈ°μ€
μ¬μ©μ μ λ ₯ κ°μ λν νν°λ§μ΄ μ΄λ£¨μ΄μ§μ§ μμΌλ©°, HTML μ½λ(λλ μ€ν¬λ¦½νΈ)λ₯Ό μ λ ₯νμ¬ μ€νλλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μ¬μ©μ μ λ ₯ κ°μ λν΄ κ²μ¦ λ‘μ§ λ° νν°λ§μ μΆκ° μ μ©νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) XSS μ·¨μ½μ μ΄ μ‘΄μ¬νλμ§ νμΈνλ€.
Step 2) λ±λ‘ λ° λ³κ²½ λ±μ λ°μ΄ν° μμ κΈ°λ₯μ νμ΄μ§κ° μλμ§ μ‘°μ¬νλ€.
Step 3) λ°μ΄ν° μμ νμ΄μ§μμ μ μ‘λλ μμ²(Request) μ 보λ₯Ό λΆμνμ¬ μμμ λͺ λ Ήμ μννλ μ€ν¬λ¦½νΈλ₯Ό μ½μ ν ν΄λΉ κ²μκΈμ ν μ¬μ©μκ° μ΄λνμμ κ²½μ° μ€ν¬λ¦½νΈκ° μ€νλλμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μΉ μ¬μ΄νΈμ μ¬μ©μ μ λ ₯ κ°μ΄ μ μ₯λλ νμ΄μ§λ μμ²μ΄ μΌνμ±μ΄ λ μ μλλ‘ μ€κ³νλ€.
* μ¬μ© μ€μΈ νλ μμν¬μ κΈ°λ³Έμ μΌλ‘ μ 곡λλ CSRF λ³΄νΈ κΈ°λ₯μ μ¬μ©νλ€.
* μ¬μ©μκ° μ μμ μΈ νλ‘μΈμ€λ₯Ό ν΅ν΄ μμ²νμλμ§ HTTP ν€λμ Referer κ²μ¦ λ‘μ§μ ꡬννλ€.
* μ μμ μΈ μμ²(Request)μ λΉμ μμ μΈ μμ²μ ꡬλΆν μ μλλ‘ Hidden Formμ μ¬μ©νμ¬ μμμ μνΈνλ ν ν°(μΈμ ID, Timestamp, nonce λ±)μ μΆκ°νκ³ μ΄ ν ν°μ κ²μ¦νλλ‘ μ€κ³νλ€.
* HTMLμ΄λ Javascriptμ ν΄λΉλλ νκ·Έ(Tag) μ¬μ©μ μ¬μ μ μ ννκ³ , μλ² λ¨μμ μ¬μ©μ μ λ ₯ κ°μ λν νν°λ§μ ꡬννλ€.
* HTML Editor μ¬μ©μΌλ‘ μΈν μκΈ°μ¬ν μ‘°μΉ λΆκ° μ, μλ² μ¬μ΄λ(Server Side)/μλΈλ¦Ώ(Servlet)/DAO(Data Access Object) μμμμ μ‘°μΉνλλ‘ μ€κ³νλ€.
* XSS μ‘°μΉ λ°©μμ μ°Έμ‘°
16. μΈμ μμΈ‘ (SE)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
λ¨μν λ°©λ²(μ°μλ μ«μ ν λΉ λ±)μΌλ‘ μμ±λλ μΈμ IDλ₯Ό μμΈ‘νμ¬ μΈμ νμ·¨ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μ¬μ©μμ μΈμ IDλ₯Ό μΆμΈ‘ λΆκ°λ₯νλλ‘ λμλ‘ μμ±νμ¬ κ³΅κ²©μμ λΆλ²μ μΈ μ κ·Όμ μ°¨λ¨νκΈ° μν¨μ΄λ€.
보μμν
μ¬μ©μμκ² μ λ¬νλ μΈμ IDκ° μΌμ ν ν¨ν΄μ κ°μ§κ³ μλ κ²½μ° κ³΅κ²©μκ° μΈμ IDλ₯Ό μΆμΈ‘νμ¬ λΆλ²μ μΈ μ κ·Όμ μλν μ μλ€.
β» μΈμ (Session) : μΌμ μκ° λμ κ°μ μ¬μ©μ(λΈλΌμ°μ )λ‘ λΆν° λ€μ΄μ€λ μΌλ ¨μ μꡬλ₯Ό νλμ μνλ‘ λ³΄κ³ κ·Έ μνλ₯Ό μΌμ νκ² μ μ§μν€λ κΈ°μ μ΄λ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ
νλ¨κΈ°μ€
μΈμ IDκ° μΌμ ν ν¨ν΄μΌλ‘ λ°κΈλλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μΆμΈ‘ λΆκ°λ₯ν μΈμ IDκ° λ°κΈλλλ‘ λ‘μ§μ ꡬννλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) κ°κΈ° λ€λ₯Έ IP μ£Όμμ λ€λ₯Έ μ¬μ©μλͺ , μκ°μ μ°¨μ΄λ‘ μΈμ IDλ₯Ό λ°κΈλ°λλ€.
Step 2) λ°κΈλ°μ μΈμ IDμ μΌμ ν ν¨ν΄μ΄ μλμ§ μ‘°μ¬νλ€.
Step 3) μΌμ ν ν¨ν΄μ΄ νμΈλκ³ , ν¨ν΄μ μν΄ μ¬μ© κ°λ₯ν μΈμ IDμ μμΈ‘μ΄ κ°λ₯νμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μ무리 κΈΈμ΄κ° κΈΈκ³ λ³΅μ‘ν νλͺ©μΌλ‘ μΈμ IDκ° λ§λ€μ΄μ Έλ 곡격μκ° μΆ©λΆν μκ°κ³Ό μμμ΄ μλ€λ©΄ λ«λ κ²μ λΆκ°λ₯νμ§ μμΌλ―λ‘ κ°κ²©ν μΈμ IDλ₯Ό μμ±νμ¬μΌ νλ€.
(μ£Όλ λͺ©μ μ μλ§μ λμν μ²λ¦¬ μμμ κ°μ§κ³ μλ 곡격μκ° νλμ μ ν¨ν μΈμ IDλ₯Ό μΆμΈ‘νλλ° μ΅λν μ€λ μκ°μ΄ κ±Έλ¦¬κ² νμ¬ μ½κ² μΆμΈ‘νμ§ λͺ»νκ² νλ κ²μ μλ€.)
* λ¨μ μ‘°ν©λ³΄λ€λ μμ© μΉ μλ²λ μΉ μ ν리μΌμ΄μ νλ«νΌμμ μ 곡νλ μΈμ IDλ₯Ό μ¬μ©νκ³ , κ°λ₯νλ€λ©΄ λ§μΆ€ν μΈμ κ΄λ¦¬ 체κ³λ₯Ό κΆκ³ νλ€.
* μΈμ IDλ λ‘κ·ΈμΈ μλ§λ€ μΆμΈ‘ν μ μλ μλ‘μ΄ μΈμ IDλ‘ λ°κΈνμ¬μΌ νλ€.
17. λΆμΆ©λΆν μΈκ° (IN)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
λ―Όκ°ν λ°μ΄ν° λλ κΈ°λ₯μ μ κ·Ό λ° μμ μμ ν΅μ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μ κ·Ό κΆνμ λν κ²μ¦ λ‘μ§μ ꡬννμ¬ λΉμΈκ°μμ μ μμ μΈ μ κ·Όμ μ°¨λ¨νκΈ° μν¨μ΄λ€.
보μμν
μ κ·Όμ μ΄κ° νμν μ€μ νμ΄μ§μ ν΅μ μλ¨μ΄ λ―Έν‘ν κ²½μ°, λΉμΈκ°μκ° URL νλΌλ―Έν° κ° λ³κ²½ λ±μ λ°©λ²μΌλ‘ μ€μ νμ΄μ§μ μ κ·Όνμ¬ λ―Όκ°ν μ 보 μ΄λ λ° λ³μ‘°κ° κ°λ₯νλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ
νλ¨κΈ°μ€
μ κ·Όμ μ΄κ° νμν μ€μ νμ΄μ§μ ν΅μ μλ¨μ΄ λ―Έν‘νμ¬ λΉμΈκ°μμ μ κ·Όμ΄ κ°λ₯ν κ²½μ° μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μ κ·Όμ μ΄κ° νμν λͺ¨λ νμ΄μ§μ κΆνκ²μ¦ λ‘μ§μ ꡬννλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) λΉλ° κ²μκΈ(λλ κ°μΈμ 보 λ³κ²½, ν¨μ€μλ λ³κ²½ λ±) νμ΄μ§μμ λ€λ₯Έ μ¬μ©μμμ ꡬλΆμ ID, μΌλ ¨λ²νΈ λ±μ λ¨μν κ°μ μ¬μ©νλμ§ μ‘°μ¬νλ€.
Step 2) κ²μκΈμ ꡬλΆνλ νλΌλ―Έν° κ°μ λ³κ²½νλ κ²λ§μΌλ‘ λ€λ₯Έ μ¬μ©μμ λΉλ° κ²μκΈ(λλ κ°μΈμ 보 λ³κ²½, ν¨μ€μλ λ³κ²½ λ±)μ μ κ·Όμ΄ κ°λ₯νμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μ κ·Όμ μ΄κ° νμν μ€μ νμ΄μ§λ μΈμ μ ν΅ν μΈμ¦ λ± ν΅μ μλ¨μ ꡬννμ¬ μΈκ°λ μ¬μ©μ μ¬λΆλ₯Ό κ²μ¦ ν ν΄λΉ νμ΄μ§μ μ κ·Όν μ μλλ‘ νλ€.
* νμ΄μ§λ³ κΆν 맀νΈλ¦μ€λ₯Ό μμ±νμ¬ μ κ·Όμ μ΄κ° νμν λͺ¨λ νμ΄μ§μμ κΆν 체ν¬κ° μ΄λ€μ§λλ‘ κ΅¬νν΄μΌ νλ€.
18. λΆμΆ©λΆν μΈμ λ§λ£ (SC)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΈμ μ λ§λ£ κΈ°κ° μ€μ μ¬λΆλ₯Ό μ κ²νλ€.
(ν΄λΉ μ·¨μ½μ μ μΈμ λ§λ£μ κΈ°μ€μ΄ λ΄κ·λ³λ‘ λ€λ₯΄κΈ°μ μ‘μ§ μκΈ°λ νλ€.)
μ κ²λͺ©μ
μΈμ νμμμ κΈ°λ₯μ ꡬννμ¬ κ³΅κ²©μκ° λ§λ£λμ§ μμ μΈμ νμ©μ λ°©μ§νκΈ° μν¨μ΄λ€.
보μμν
μΈμ μ λ§λ£ κΈ°κ°μ μ νμ§ μκ±°λ, λ§λ£κΈ°νμ λ무 κΈΈκ² μ€μ λ κ²½μ°, μ μμ μΈ μ¬μ©μκ° λ§λ£λμ§ μμ μΈμ μ νμ©νμ¬ λΆλ²μ μΈ μ κ·Όμ΄ κ°λ₯ν μ μλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ μλ²
νλ¨κΈ°μ€
μΈμ μ’ λ£ μκ°μ΄ μ€μ λμ΄ μμ§ μμ μΈμ μ¬μ¬μ©μ΄ κ°λ₯ν κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μΈμ μ’ λ£ μκ° μ€μ λλ μλ λ‘κ·Έμμ κΈ°λ₯ ꡬννλ€.
(μΈμ μ’ λ£ μκ°μ μ¬μ΄νΈμ νΉμ±μ λ°λΌ λ¬λΌμ§ μ μμΌλ―λ‘ μ¬μ΄νΈμ νΉμ±μ λ§κ² μ μ μκ°μ μ€μ νλ€.)
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μΈμ¦ ν μ μμ μΌλ‘ μΈμ μ΄ λ°νλ νμ΄μ§μ 리νμ€νΈλ₯Ό μ·¨λνμ¬ μΌμ μκ°(μ¬μ΄νΈμ λ°λΌ λ€λ¦)μ΄ μ§λ νμ μ¬μ μ‘ μ μ μ μ²λ¦¬κ° λλμ§ νμΈνλ€.
(λ‘κ·ΈμΈ ν λ°κΈλ μΈμ μ λνμ¬ μΌμ μκ° κ²½κ³Ό ν μΈμ μ μ§ μ¬λΆλ₯Ό νμΈνλ€.)
보μμ€μ λ°©λ²
* μΈμ νμμμμ ꡬννλ€.
19. μΈμ κ³ μ (SF)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μ¬μ©μ λ‘κ·ΈμΈ μ νμ μΌμ νκ² κ³ μ λ μΈμ ID κ°μ λ°ννλμ§ μ¬λΆλ₯Ό νμΈνλ€.
μ κ²λͺ©μ
λ‘κ·ΈμΈν λλ§λ€ μμΈ‘ λΆκ°λ₯ν μλ‘μ΄ μΈμ IDλ₯Ό λ°ννμ¬ μΈμ IDμ κ³ μ μ¬μ©μ λ°©μ§νκΈ° μν¨μ΄λ€.
보μμν
μ¬μ©μ λ‘κ·ΈμΈ μ νμ μΌμ νκ² κ³ μ λ μΈμ IDκ° λ°νλλ κ²½μ° μΈμ IDλ₯Ό λμ©ν λΉμΈκ°μμ μ κ·Ό λ° κΆν μ°νκ° κ°λ₯νλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ
νλ¨κΈ°μ€
λ‘κ·ΈμΈ μΈμ IDκ° κ³ μ μ¬μ©λκ±°λ μλ‘μ΄ μΈμ IDκ° λ°νλκ³ , κΈ°μ‘΄ μΈμ IDλ νκΈ°λ κ²½μ°
μ‘°μΉλ°©λ²
μ¬μ©μκ° λ‘κ·ΈμΈν λλ§λ€ μμΈ‘ λΆκ°λ₯ν μλ‘μ΄ μΈμ ID μμ± λ‘μ§μ ꡬννκ³ κΈ°μ‘΄ μΈμ IDλ νκΈ°νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
보μμ€μ λ°©λ²
Step 1) λ‘κ·ΈμΈμ μΈμ IDκ° λ°νλλμ§ νμΈνκ³ λ‘κ·Έμμ ν λ€μ λ‘κ·ΈμΈν λ μμΈ‘ λΆκ°λ₯ν μλ‘μ΄ μΈμ IDκ° λ°κΈλλμ§ νμΈνλ€.
* λ‘κ·ΈμΈν λλ§λ€ μμΈ‘ λΆκ°λ₯ν μλ‘μ΄ μΈμ IDλ₯Ό λ°κΈλ°λλ‘ ν΄μΌ νκ³ κΈ°μ‘΄ μΈμ IDλ νκΈ°ν΄μΌ νλ€.
20. μλν 곡격 (AU)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΉ μ ν리μΌμ΄μ μ νΉμ νλ‘μΈμ€(λ‘κ·ΈμΈ μλ, κ²μκΈ λ±λ‘, SMS λ°μ‘ λ±)μ λν λ°λ³΅μ μΈ μμ² μ ν΅μ μ¬λΆλ₯Ό νμΈνλ€.
μ κ²λͺ©μ
λ¬΄μ°¨λ³ λμ 곡격 λ° μλν 곡격μΌλ‘ μΉ μ ν리μΌμ΄μ μ μμμ΄ κ³ κ°λλ κ²μ λ°©μ§νκΈ° μν¨μ΄λ€.
보μμν
μΉ μ ν리μΌμ΄μ μ νΉμ νλ‘μΈμ€μ λν λ°λ³΅μ μΈ μμ²μ ν΅μ νμ§ μμ κ²½μ° λ¬΄μ°¨λ³ λμ 곡격μΌλ‘ μΈν΄ μ¬μ©μ κ³μ μ νμ·¨ν μ μκ³ , μλν 곡격μΌλ‘ κ²μκΈ λ±λ‘ λλ SMS λ°μ‘ μμ²μ λ°λ³΅νμ¬ μΉ μ ν리μΌμ΄μ μμμ κ³ κ°μν¬ μ μλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ λ°©νλ²½
νλ¨κΈ°μ€
μΉ μ ν리μΌμ΄μ μ νΉμ νλ‘μΈμ€μ λν λ°λ³΅μ μΈ μμ² μ ν΅μ κ° λ―Έν‘ν κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μΉ μ ν리μΌμ΄μ μ νΉμ νλ‘μΈμ€μ λν λλ μ¬μ© ν΅μ λ‘μ§ κ΅¬ν λ° μΉ λ°©νλ²½ λ£°μ μ€μ μ ν΅ν΄ λλμ λΆνΉμ νλ‘μΈμ€ μμ²μ μ°¨λ¨νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
β» μΊ‘μ°¨(CAPTCHA) : μλνλ μ»΄ν¨ν°μ μ¬λμ νλ³νκΈ° μν κΈ°μ μ μΌμ’ μ΄λ€.
Step 1) λ‘κ·ΈμΈ μλ, κ²μκΈ λ±λ‘, SMS λ°μ‘ λ±μ λν μ μμ μΈ μμ² μ 보λ₯Ό μλ³νμ¬ λ°λ³΅μ μΌλ‘ μμ² μ ν΅μ κ° μ΄λ£¨μ΄μ§λμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* λ‘κ·ΈμΈ μλ, κ²μκΈ λ±λ‘, SMS λ°μ‘ λ±μ λν μ¬μ©μ μμ²μ΄ μΌνμ±μ΄ λ μ μλλ‘, μΊ‘μ°¨(μ΄λ―Έμ§λ₯Ό μ΄μ©νμ¬ νμΈ κ°μ νμνκ³ μ¬μ©μκ° κ°μ λ±λ‘νμ¬ μΈμ¦νλ€.) λ± μΌνμ± νμΈ λ‘μ§μ ꡬνν΄μΌ νλ€.
* μλν 곡격μ μλνλ©΄ 짧μ μκ°μ λ€λμ ν¨ν·(μ)μ΄ μ μ‘λλ―λ‘ μ΄λ₯Ό 곡격μΌλ‘ κ°μ§νκ³ λ°©μ΄ν μ μλ IDS/IPS μμ€ν μ ꡬμΆνμ¬μΌ νλ€.
(μλ²μ μμ²λλ ν¨ν·(μ)μ λͺ¨λν°λ§μ΄ λΆκ°λ₯ν κ²½μ° μ μμ μ μ ν λμμ΄ μ΄λ ΅λ€.)
21. νλ‘μΈμ€ κ²μ¦ λλ½ (PV)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΈμ¦μ΄ νμν μΉ μ¬μ΄νΈμ μ€μ νμ΄μ§(κ΄λ¦¬μ νμ΄μ§, νμλ³κ²½ νμ΄μ§ λ±)μ λν μ κ·Όμ μ΄ μ€μ μ¬λΆλ₯Ό νμΈνλ€.
μ κ²λͺ©μ
μΈμ¦μ΄ νμν λͺ¨λ νμ΄μ§μ λν΄ μ ν¨ μΈμ μμ νμΈνλ νλ‘μΈμ€ λ° μ£Όμ μ 보 νμ΄μ§μ μ κ·Ό μμ²μμ κΆν κ²μ¦ λ‘μ§μ μ μ©νμ¬, λΉμΈκ°μκ° νμ URL μ§μ μ κ·Ό, μ€ν¬λ¦½νΈ μ‘°μ λ±μ λ°©λ²μΌλ‘ μ€μν νμ΄μ§μ μ κ·Όμ μλνλ κ²μ μ°¨λ¨νκΈ° μν¨μ΄λ€.
보μμν
μΈμ¦μ΄ νμν μΉ μ¬μ΄νΈμ μ€μ νμ΄μ§(κ΄λ¦¬μ νμ΄μ§, νμλ³κ²½ νμ΄μ§ λ±)μ λν μ κ·Ό μ μ΄κ° λ―Έν‘ν κ²½μ° νμ URL μ§μ μ κ·Ό, μ€ν¬λ¦½νΈ μ‘°μ λ±μ λ°©λ²μΌλ‘ μ€μν νμ΄μ§μ λν μ κ·Όμ΄ κ°λ₯νλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ
νλ¨κΈ°μ€
μΈμ¦ νμ μ κ·Όν΄μΌνλ μΉ μ¬μ΄νΈμ νμ URLμ λ‘κ·ΈμΈνμ§ μκ³ μ§μ μ κ·Όν λ μ κ·Όμ΄ κ°λ₯ν κ²½μ°μ μ·¨μ½μ μΌλ‘ νλ¨νλ€.
μ‘°μΉλ°©λ²
μΈμ¦μ΄ νμν νμ΄μ§μ κ²½μ° νμ΄μ§λ³ κΆν μ²΄ν¬ λ‘μ§μ ꡬννλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μ 무 νλ‘μΈμ€λ₯Ό νμ νλ€.
Step 2) κΆνμ μ’ λ₯ λ° λ²μλ₯Ό νμ νλ€.
Step 3) νμ΄μ§μ λͺ¨λ κΈ°λ₯μ μμ§νμ¬ νλ‘μΈμ€ μμ ν΅μ λ νμ΄μ§μ μ κ·Όμ΄ κ°λ₯νμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μ°νλ μ μλ νλ‘μ°λ₯Ό μ°¨λ¨νμ¬μΌ νλ©°, νμ΄μ§λ³ κΆν 맀νΈλ¦μ€λ₯Ό μμ±νμ¬ νμ΄μ§μ λΆμ¬λ κΆνμ νλΉμ±μ 체ν¬ν ν κΆν 맀νΈλ¦μ€λ₯Ό κΈ°μ€μΌλ‘ μ νμ΄μ§μμ κΆν 체ν¬κ° μ΄λ€μ§λλ‘ κ΅¬νν΄μΌ νλ€.
* μΈμ¦μ΄ νμν λͺ¨λ νμ΄μ§μ λν΄ μ ν¨ μΈμ μμ νμΈνλ νλ‘μΈμ€ λ° μ£Όμ μ 보 νμ΄μ§μ μ κ·Ό μμ²μμ λν κΆν κ²μ¦ λ‘μ§μ μ μ©νλ€.
* μ ν¨ μΈμ κ²μ¦ λ° νμ΄μ§μ λν μ κ·Ό κΆνμ Client Side Scriptμ μμ‘΄ν κ²½μ° μ¬μ©μκ° μμλ‘ μμ ν μ μμΌλ―λ‘ Server Side Scriptλ‘ κ΅¬νλ νλ‘μΈμ€λ₯Ό μ¬μ©νλ€.
22. νμΌ μ λ‘λ (FU)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΉ μ¬μ΄νΈμ κ²μν, μλ£μ€ λ±μ μ‘°μλ Server Side Script νμΌ μ λ‘λ λ° μ€ν κ°λ₯ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μ λ‘λλλ νμΌμ νμ₯μμ λν μ μ μ± μ¬λΆλ₯Ό κ²μ¦νλ λ‘μ§μ ν΅ν΄ 곡격μκ° μ‘°μλ Server Side Script νμΌ μ λ‘λ λ°©μ§ λ° μλ²μμ μ μ₯λ κ²½λ‘λ₯Ό μ μΆνμ¬ ν΄λΉ Server Side Script νμΌ μ€νμ λΆκ°λ₯νκ² νκΈ° μν¨μ΄λ€.
보μμν
ν΄λΉ μ·¨μ½μ μ΄ μ‘΄μ¬ν κ²½μ° κ³΅κ²©μλ μ‘°μλ Server Side Script νμΌμ μλ²μ μ λ‘λ λ° μ€ννμ¬ μμ€ν κ΄λ¦¬μ κΆν νλ λλ μΈμ μλ²μ λν μΉ¨μ μ μλν μ μλ€.
β» Server Side Script : μΉμμ μ¬μ©λλ μ€ν¬λ¦½νΈ μΈμ΄ μ€ μλ² μΈ‘μμ μ€νλλ μ€ν¬λ¦½νΈμ΄λ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ μλ², μΉ λ°©νλ²½
νλ¨κΈ°μ€
μ λ‘λλλ νμΌμ λν νμ₯μ κ²μ¦μ΄ μ΄λ£¨μ΄μ§μ§ μλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μ λ‘λλλ νμΌμ λν νμ₯μ κ²μ¦ λ° μ€ν κΆνμ μ κ±°νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μΉ μ¬μ΄νΈμ νμΌ μ λ‘λ κΈ°λ₯μ΄ μ‘΄μ¬νλ κ²½μ°, νμ₯μκ° jsp, php, asp, cgi λ±μ Server Side Script νμΌλ€μ΄ μ λ‘λ κ°λ₯νμ§ νμΈνλ€.
(β» ν΄λΌμ΄μΈνΈμμ JavaScript λ±μ μ€ν¬λ¦½νΈλ‘ νμΌ μ²¨λΆλ₯Ό μ°¨λ¨νλ κ²½μ° μ°¨λ¨ κΈ°λ₯μ μμ νμ¬ νμΌ μ²¨λΆνλ€.)
Step 2) μΉ μ¬μ΄νΈμ μλ λλ ν°λ¦¬ μ 보λ₯Ό μ΄μ©νμ¬ μ²¨λΆν Server Side Script νμΌμ μμΉλ₯Ό μ‘°μ¬ν ν λΈλΌμ°μ μ£Όμμ°½μ ν΄λΉ κ²½λ‘λ₯Ό μ λ ₯νμ¬ μ€ν κ°λ₯νμ§ νμΈνλ€.
보μμ€μ λ°©λ²
β» μ¬μ©μκ° νμΌμ μ λ‘λν μ μλ λͺ¨λ λͺ¨λμ μ μ©μ΄ νμνλ€.
* νμ΄νΈ 리μ€νΈ λ°©μμΌλ‘ νμ©λ νμ₯μλ§ μ λ‘λ κ°λ₯νλλ‘ μλ² μΈ‘ ν΅μ λ₯Ό μ μ©νλ€.
* μ λ‘λλλ νμΌμ λλ ν°λ¦¬μ μ μ₯ν λ νμΌλͺ κ³Ό νμ₯μλ₯Ό μΈλΆ μ¬μ©μκ° μΆμΈ‘ν μ μλ λ¬Έμμ΄λ‘ λ³κ²½νμ¬ μ μ₯νλ€.(νμΌ μ΄λ¦μ DBμ μ μ₯νλ€.)
* μ λ‘λ νμΌμ μν μ μ© λλ ν°λ¦¬λ₯Ό λ³λλ‘ μμ±νμ¬ μΉ μλ² λ°λͺ¬ μ€μ νμΌ(httpd.conf λ±)μμ μ€ν μ€μ μ μ κ±°ν¨μΌλ‘μ¨, Server Side Scriptκ° μ λ‘λλλλΌλ μΉ μμ§μ΄ μ€ννμ§ μλ νκ²½μ μ€μ νλ€.
* νμΌ μ λ‘λ νλλ₯Ό λμμΌλ‘ νΉμλ¬Έμλ₯Ό νν°λ§νλλ‘ μΉ λ°©νλ²½ λ£°μ μ μ μ©νλ€.
β» μ ν λ³ μμΈ μ€μ
β μΉ μ ν리μΌμ΄μ
1) μμ© κ°λ₯ν νμΌμ νμ₯μλ§ μ λ‘λλ₯Ό νμ©νλ€.(Positive λ°©μ)
- μ΄λ―Έμ§ νμΌμ κ²½μ° (JPG, GIF, BMP λ±)
- λ¬Έμ νμΌμ κ²½μ° (XLS, PDF, PPT, DOC λ±)
* νμ₯μ κ²μ¦ μ λμλ¬Έμ ꡬλΆμμ΄ λ¬Έμμ΄μ λΉκ΅νλ€.
2) MIME TYPE νμΈμ ν΅ν μ€ν νμΌ μ λ‘λλ₯Ό μ°¨λ¨νλ€.
β μΉ μλ²
- Apache μ€μ νμΌμΈ httpd.confμ ν΄λΉ λλ ν°λ¦¬μ λν λ¬Έμ νμ μ 컨νΈλ‘€ νκΈ° μν΄ Directory μΉμ μ AllowOverride μ§μμμμ FileInfo λλ, "All" μΆκ°
- νμΌ μ λ‘λ λλ ν°λ¦¬μ .htaccess νμΌμ λ§λ€κ³ λ€μκ³Ό κ°μ΄ AddType μ§μμλ₯Ό μ΄μ©νμ¬, νμ¬ μλ²μμ μ΄μλλ Server Side Script νμ₯μλ₯Ό text/htmlλ‘ MIME Typeμ μ¬μ‘°μ νμ¬ μ λ‘λλ Server Side Scriptκ° μ€νλμ§ μλλ‘ μ€μ νλ€. λλ FileMatch μ§μμλ₯Ό μ΄μ©νμ¬ *.ph, *.inc, *lib λ±μ Server Side Script νμΌμ λν΄μ μ§μ URL νΈμΆμ κΈμ§ μν¨λ€.
β» μ£Όμν μ
- Apache μλ²μ κ²½μ° AllowOverride μ§μμ λ³κ²½ μ Apache Restartκ° νμνλ€.
- νμΌ μ λ‘λ λλ λλ ν°λ¦¬μ μ΄μμ νμν Server Side Scriptκ° μ‘΄μ¬νλμ§ νμΈνλ€.
- νμΌ λ€μ΄λ‘λ νλ‘κ·Έλ¨μ΄ μλ μ§μ URL νΈμΆμ ν΅ν΄ νμΌμ λ€μ΄λ°λ κ²½μ° FileMatch μ§μμλ₯Ό μ¬μ©νλ©΄ μ°¨λ¨ μ€μ ν νμ₯μμ νμΌ λ€μ΄λ‘λλ κ±°λΆλλ€.
* μ²¨λΆ νμΌ νμ₯μ νν°λ§ μ²λ¦¬λ‘ μ¬μ©μκ° μ²¨λΆ νμΌμ μ λ‘λ μλ μ, μ λ‘λ νμΌμ νμ₯μλ₯Ό κ²ν νμ¬ μ μ ν νμΌμΈμ§ κ²μ¬νλ 루ν΄μ μ½μ νμ¬, μ ν©ν νμΌμ νμ₯μ μ΄μΈμ νμΌμ λν΄μ μ λ‘λκ° λΆκ°λ₯νλλ‘ νλ©°, μ΄λ° νν°λ§ κ·μΉμ μλ²μμ ꡬννμ¬μΌ νλ€.
* μμ€ν 보μ μ€μ μ μΉ μλ² κ΅¬λμ λ°λμ κ΄λ¦¬μ κΆνμ΄ μλ μΌλ° μ¬μ©μ κΆνμΌλ‘ ꡬλνλλ‘ νλ€.
* μΈλΆ μ¬μ©μκ° μ²¨λΆ νμΌμ μ΄μ©νμ¬ κΆνμ νλν μ§λΌλ μ΅μνμ κΆνλ§μ μ¬μ©ν μ μλλ‘ νλ€.
* μ λ‘λλ λλ ν°λ¦¬μμ μ€ν κΆνμ μ κ±°νλ λ°©λ²μ μμμ μ΄κΈ°λ νμ§λ§ μμ€ μ½λμ μμ μμ΄ κ°λ¨ν μνλ μ μλ€.
β μΉ λ°©νλ²½
* μΉ μμ μ£Όλ‘ μ¬μ©λλ λ¬Έμμ΄, μ€λΈμ νΈ, λ©μλ λ±μ μκ·Έλμ²λ‘ μ§μ νμ¬ νμΌ μ λ‘λ μ νμ§ λ° μ°¨λ¨νλ€.
23. νμΌ λ€μ΄λ‘λ (FD)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΉ μ¬μ΄νΈμμ νμΌ λ€μ΄λ‘λ μ νμ©λ κ²½λ‘ μΈ λ€λ₯Έ κ²½λ‘μ νμΌ μ κ·Όμ΄ κ°λ₯νμ§ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
νμΌ λ€μ΄λ‘λ μ νμ©λ κ²½λ‘ μΈ λ€λ₯Έ κ²½λ‘μ νμΌ μ κ·Όμ λ°©μ§νμ¬ κ³΅κ²©μκ° μμμ μμΉμ μλ νμΌμ μ΄λνκ±°λ λ€μ΄λ°λ κ²μ λΆκ°λ₯νκ² νκΈ° μν¨μ΄λ€.
보μμν
ν΄λΉ μ·¨μ½μ μ΄ μ‘΄μ¬ν κ²½μ° κ³΅κ²©μλ νμΌ λ€μ΄λ‘λ μ μ ν리μΌμ΄μ μ νλΌλ―Έν° κ°μ μ‘°μνμ¬ μΉ μ¬μ΄νΈμ μ£Όμν νμΌ(DB 컀λ₯μ νμΌ, μ ν리μΌμ΄μ νμΌ λ±) λλ μΉ μλ² λ£¨νΈμ μλ μ€μν μ€μ νμΌ(passwd, shadow λ±)μ λ€μ΄λ°μ μ μλ€.
(cgi, jsp, php λ± νμΌ λ€μ΄λ‘λ κΈ°λ₯μ μ 곡ν΄μ£Όλ μ ν리μΌμ΄μ μμ μ λ ₯λλ κ²½λ‘λ₯Ό κ²μ¦νμ§ μλ κ²½μ° μμμ λ¬Έμ(../.. λ±)λ μ£Όμ νμΌλͺ μ μ λ ₯μ ν΅ν΄ μΉ μλ²μ ν λλ ν°λ¦¬λ₯Ό λ²μ΄λμ μμμ μμΉμ μλ νμΌμ μ΄λνκ±°λ λ€μ΄ λ°λ κ²μ΄ κ°λ₯νλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ μλ², μΉ λ°©νλ²½
νλ¨κΈ°μ€
λ€μ΄λ‘λ νμΌμ΄ μ μ₯λ λλ ν°λ¦¬ μ΄μΈμ μ κ·Όμ΄ κ°λ₯ν κ²½μ° μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
λ€μ΄λ‘λ μ νμ©λ κ²½λ‘ μ΄μΈμ λλ ν°λ¦¬μ νμΌμ μ κ·Όν μ μλλ‘ κ΅¬ννλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μΉ μ¬μ΄νΈμ cgi, jsp, php λ±μ μ ν리μΌμ΄μ μ μ΄μ©νμ¬ νμΌμ λ€μ΄λ°λ νμ΄μ§κ° μλμ§ μ‘°μ¬νλ€.
Step 2) μΉ μ¬μ΄νΈμμ νμΌ λ€μ΄λ‘λμ μμ²(Request) μ 보μ νμΌ κ²½λ‘λ₯Ό μΉ μλ²(μΉ μ¬μ΄νΈ ν¬ν¨) μ€μνμΌ(winnt\win.ini, /etc/passwd λ±)μ μλ κ²½λ‘(../)λ‘ μΉνν ν μ μ‘νμ λ ν΄λΉ κ²½λ‘ νμΌλ€μ λ€μ΄λ‘λ κ°λ₯νμ§ νμΈνλ€.
../../../../../../../../../../../../etc/passwd
../../../../../../../../../../../../winnt/win.ini
../../../../../../../../../../../../boot.ini
Step 3) "Step 2"μμ νμΌ λ€μ΄λ‘λκ° λΆκ°λ₯ν κ²½μ° λ³μ‘°ν νμΌ κ²½λ‘λ₯Ό μλμ μΈμ½λ©(λλ μΉν, μ’ λ¨λ¬ΈμμΆκ°)μ μ μ©νμ¬ μ¬μ μ‘ ν λ€μ΄λ‘λ κ°λ₯νμ§ νμΈνλ€.
β» URL μΈμ½λ©: .(%2e), /(%2f), \(%5c)
β» 16bit μ λμ½λ μΈμ½λ©: .(%u002e), /(%u2215), \(%u2216)
β» λλΈURL μΈμ½λ©: .(%252e), /(%252f), \(%255c)
β» κ²½λ‘ μΉν: …//, ….\\, ….\/, …./\
β» μ’ λ¨ λ¬Έμ μΆκ°: [νμΌλͺ ]%00.jpg, [νμΌλͺ ]%0a.jpg
보μμ€μ λ°©λ²
* νμΌ λ€μ΄λ‘λμ μ·¨μ½μ±μ μ£Όλ‘ νμΌμ μ΄λ¦μ μ‘°μνλ λ°μ λΉλ‘―λλ―λ‘ λ€μ΄λ‘λ νμΌ μ΄λ¦μ λ°μ΄ν°λ² μ΄μ€μ μ μ₯νκ³ λ€μ΄λ‘λ μν μ μμ² νμΌ μ΄λ¦κ³Ό λΉκ΅νμ¬ μ μ νμ§ νμΈνμ¬ μ¬μ©μκ° μ‘°μν μ μλ λ³μλ₯Ό μ κ±°νλ€.
* λ€μ΄λ‘λ μ ν리μΌμ΄μ μμ€ νμΌμ μμ νμ¬ νμΌμ λ€μ΄λ°μ μ μλ λλ ν°λ¦¬λ₯Ό νΉμ λλ ν°λ¦¬λ‘ νμ νκ³ μ΄ μΈμ λ€λ₯Έ λλ ν°λ¦¬μμλ νμΌμ λ€μ΄λ°μ μ μλλ‘ μ€μ ν΄μΌ νλ€.
* PHPλ₯Ό μ¬μ©νλ κ²½μ° php.iniμμ magic_quotes_gpcλ₯Ό OnμΌλ‘ μ€μ νμ¬ .οΏ¦(\)./ μ κ°μ μ μ¬λμ λ¬Έμ μ λ ₯ μ μΉνλλλ‘ μ€μ νλ€.
* νμΌ λ€μ΄λ‘λμ μ λ κ²½λ‘ μ€μ λ° DocBaseμ μμκ²½λ‘ λλ ν λλΌμ΄λΈλ‘ μ€μ μ λ³κ²¬νλ€.
* λ€μ΄λ‘λ κ²½λ‘ μ 보λ₯Ό μλ°μ€ν¬λ¦½νΈλ js μμ€μμ νμΈν μ μκ² μ ννλ©°, μΉ μλ² μλΈλ¦Ώ λ΄λΆ λλ λ³λμ μ€μ νμΌμμ κ΄λ¦¬νλ€.
* λ€μ΄λ‘λλ₯Ό μ 곡νλ νμ΄μ§μ μ ν¨ μΈμ μ²΄ν¬ λ‘μ§μ νμ μ μ©νλ€.
* λ€μ΄λ‘λ μ μ¬μ©λλ νλΌλ―Έν° κ° λμμΌλ‘ λ€μμ νΉμλ¬Έμλ₯Ό νν°λ§νλλ‘ μΉ λ°©νλ²½ λ£°μ μ μ μ©νλ€.
- Path Traversal κ°λ₯μ±μ νμΈ( . )
- νΉμ Pathμ μ κ·Ό κ°λ₯μ±μ νμΈ( / )
- μ΄μνκ²½μ λ°λ₯Έ Path μ κ·Όμ νμΈ( οΏ¦(\) )
- UTF μΈμ½λ© νλΌλ―Έν°( % )
24. κ΄λ¦¬μ νμ΄μ§ λ ΈμΆ (AE)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μ μΆνκΈ° μ¬μ΄ URLλ‘ κ΄λ¦¬μ νμ΄μ§ λ° λ©λ΄ μ κ·Όμ κ°λ₯ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
κ΄λ¦¬μ νμ΄μ§ URLμ΄ μ μΆνκΈ° μ¬μ΄ μ΄λ¦(admin, manager λ±) λ° μΉ μ¬μ΄νΈ μ€κ³ μ€λ₯λ₯Ό μμ νμ¬ λΉμΈκ°μμ κ΄λ¦¬μ λ©λ΄ μ κ·Όμ λ°©μ§νκΈ° μν¨μ΄λ€.
보μμν
μΉ κ΄λ¦¬μμ κΆνμ΄ λ ΈμΆλ κ²½μ° μΉ μ¬μ΄νΈμ λ³μ‘°λΏλ§ μλλΌ μ·¨μ½μ± μ λμ λ°λΌμ μΉ μλ²μ κΆνκΉμ§λ λ ΈμΆλ μ μλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ μλ², μΉ λ°©νλ²½
νλ¨κΈ°μ€
μ μΆνκΈ° μ¬μ΄ URLλ‘ κ΄λ¦¬μ νμ΄μ§ μ κ·Όμ΄ κ°λ₯ν κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μ μΆνκΈ° μ΄λ €μ΄ μ΄λ¦(ν¬νΈ λ²νΈ λ³κ²½ ν¬ν¨)μΌλ‘ κ΄λ¦¬μ νμ΄μ§λ₯Ό λ³κ²½νμ¬ λΉμΈκ°μκ° κ΄λ¦¬μ νμ΄μ§μ μ κ·Όν μ μλλ‘ νκ³ κ·Όλ³Έμ μΈ ν΄κ²°μ μν΄ μ§μ λ IPλ§ κ΄λ¦¬μ νμ΄μ§μ μ κ·Όν μ μλλ‘ μ ννμ¬μΌ νλ€.
(λ¨, λΆλμ΄νκ² κ΄λ¦¬μ νμ΄μ§λ₯Ό μΈλΆμ λ ΈμΆν΄μΌ νλ κ²½μ° κ΄λ¦¬μ νμ΄μ§ λ‘κ·ΈμΈ μ 2μ°¨ μΈμ¦(otp, vpn, μΈμ¦μ λ±)μ μ μ©μ΄ νμνλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μΆμΈ‘νκΈ° μ¬μ΄ κ΄λ¦¬μ νμ΄μ§ κ²½λ‘(/admin, /manager, /master, /system λ±) μ κ·Όμ μλνμ¬ κ΄λ¦¬μ νμ΄μ§κ° λ ΈμΆλλμ§ νμΈνλ€.
Step 2) μΆμΈ‘νκΈ° μ¬μ΄ ν¬νΈ(7001, 8080, 8443, 8888 λ±) μ μμ μλνμ¬ κ΄λ¦¬μ νμ΄μ§κ° λ ΈμΆλλμ§ νμΈνλ€.
Step 3) κ΄λ¦¬μ νμ΄μ§μ λ‘κ·ΈμΈ μ°½μ κΈ°λ³Έ κ΄λ¦¬μ κ³μ (admin, administrator, manager λ±) λ° ν¨μ€μλλ₯Ό μ λ ₯νμ¬ λ‘κ·ΈμΈ κ°λ₯νμ§ νμΈνλ€.
Step 4) κ΄λ¦¬μ νμ΄μ§ λ‘κ·ΈμΈ ν μλ³λ νμ νμ΄μ§(/admin/main.asp, /admin/menu.html λ±) URLμ μ μΈμ μμ μ§μ μ λ ₯νμ¬ μΈμ¦ κ³Όμ μμ΄ μ κ·Ό κ°λ₯νμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μΌλ° μ¬μ©μμ μ κ·Όμ΄ λΆνμν κ΄λ¦¬μ λ‘κ·ΈμΈ νμ΄μ§ μ£Όμλ₯Ό μ μΆνκΈ° μ΄λ €μ΄ μ΄λ¦μΌλ‘ λ³κ²½νκ³ κ΄λ¦¬μ νμ΄μ§ μ κ·Ό ν¬νΈλ λ³κ²½νλ€.
* κ΄λ¦¬μ νμ΄μ§μ νμ νμ΄μ§ URLμ μ§μ μ λ ₯νμ¬ μ κ·Όνμ§ λͺ»νλλ‘ νμ΄μ§λ§λ€ μΈμ κ²μ¦μ΄ νμνλ€.
* κ΄λ¦¬μ νμ΄μ§ μ΄μΈμλ νΉμ μ¬μ©μλ§ μ κ·Ό κ°λ₯ν νμ΄μ§λ€μ μ μμ μΈ νλ‘μΈμ€μ λ°λΌ μ κ·Όν μ μλλ‘ νμ΄μ§λ§λ€ μΈμ κ²μ¦μ΄ νμνλ€.
* μΉ λ°©νλ²½μ μ΄μ©νμ¬ νΉμ IPλ§ μ κ·Ό κ°λ₯νλλ‘ λ£°μ μ μ μ©νλ€.
25. κ²½λ‘ μΆμ (PT)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΉ μλ²μ μΉ μ ν리μΌμ΄μ μ νμΌ λλ λλ ν°λ¦¬μ μ κ·Ό ν΅μ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μΉ μλ² λλ μΉ μ ν리μΌμ΄μ μ μ€μν νμΌκ³Ό λ°μ΄ν°μ μ κ·Ό λ° μ€νμ λ°©μ§νκΈ° μν¨μ΄λ€.
보μμν
μΉ μλ²μ μΉ μ ν리μΌμ΄μ μ νμΌ λλ λλ ν°λ¦¬ μ κ·Όμ΄ ν΅μ λμ§ μμ μΉ μλ² λλ μΉ μ ν리μΌμ΄μ μ μ€μν νμΌκ³Ό λ°μ΄ν°μ μ κ·Όμ νμ©νλ μ·¨μ½μ μΌλ‘ μΉ λ£¨νΈ λλ ν°λ¦¬μμ μΈλΆμ νμΌκΉμ§ μ κ·Όνμ¬ μ΄λ₯Ό μ€νν μ μλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ μλ², μΉ λ°©νλ²½
νλ¨κΈ°μ€
μΉ λ£¨νΈ λλ ν°λ¦¬λ³΄λ€ μμ λλ ν°λ¦¬μ μ κ·Όμ΄ κ°λ₯ν κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€. (ex : /root)
μ‘°μΉλ°©λ²
μ¬μ©μκ° μμλ‘ μ κ·Όν μ μλ μ΅μμ λλ ν°λ¦¬λ₯Ό μΉ λ£¨νΈ λλ ν°λ¦¬λ‘ μ€μ νμ¬ μΉ μλ²μ μμ€ν λ£¨νΈ λλ ν°λ¦¬ λ‘ μ κ·Όνμ§ λͺ»νκ² μ ννλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μΉ λΈλΌμ°μ μ νμν νμ΄μ§λ₯Ό μ§μ νλ νλΌλ―Έν° κ°μ μμμ κ²½λ‘κ° ν¬ν¨λ κ°μΌλ‘ λ³μ‘° ν μ μ‘νμ¬ ν΄λΉκ²½λ‘μ νμΌ λ΄μ©μ΄ μΉ λΈλΌμ°μ μ νμλλμ§ νμΈνλ€.
../../../../../../../../../../../../etc/passwd
../../../../../../../../../../../../winnt/win.ini
../../../../../../../../../../../../boot.ini
Step 2) "Step 1)"μμ λ³μ‘°νμ¬ μ μ‘ν νλΌλ―Έν° κ°μ μλμ μΈμ½λ©(λλ μΉν, μ’ λ¨λ¬Έμ μΆκ°)μ μ μ©νμ¬ μ¬μ μ‘ ν ν΄λΉκ²½λ‘μ νμΌ λ΄μ©μ΄ μΉ λΈλΌμ°μ μ νμλλμ§ νμΈνλ€.
β» URL μΈμ½λ©: .(%2e), /(%2f), \(%5c)
β» 16bit μ λμ½λ μΈμ½λ©: .(%u002e), /(%u2215), \(%u2216)
β» λλΈURL μΈμ½λ©: .(%252e), /(%252f), \(%255c)
β» κ²½λ‘ μΉν: …//, ….\\, ….\/, …./\
β» μ’ λ¨ λ¬Έμ μΆκ°: [νμΌλͺ ]%00.jpg, [νμΌλͺ ]%0a.jpg
보μμ€μ λ°©λ²
* μΉ μ¬μ΄νΈμμ μ κ·Όνλ €λ νμΌμ΄ μλ λλ ν°λ¦¬μ chroot νκ²½ μ μ© μ κ²½λ‘ μΆμ 곡격μ μ΅μνν μ μλ€.
- chroot λλ ν°λ¦¬λ ν΄λΉ λλ ν°λ¦¬κ° 루νΈμ²λΌ λ€λ£¨μ΄μ§λ€. chroot νμΌ μμ€ν μ λλΆλΆμ μ λμ€λ₯Ό κΈ°λ°μΌλ‘ ν νλ«νΌμμ μ§μ κ°λ₯νλ©°, μλμ° νλ«νΌμμλ μ μ ν μμ λλ ν°λ¦¬λ₯Ό μλ‘μ΄ λ Όλ¦¬ λλΌμ΄λΈλ‘ λ§λ€μ΄ μΉ μ¬μ΄νΈμμ ν΄λΉ λλΌμ΄λΈλ₯Ό ν΅νμ¬ μ κ·Όνκ² νλ€.
* μ ν리μΌμ΄μ μμ€ νμΌμ μμ νμ¬ νμΌ λ΄μ©μ μΉ λΈλΌμ°μ μ νμν μ μλ λλ ν°λ¦¬λ₯Ό νΉμ λλ ν°λ¦¬λ‘ νμ νκ³ μ΄ μΈμ λ€λ₯Έ λλ ν°λ¦¬μμλ νμΌ λ΄μ©μ νμν μ μλλ‘ μ€μ ν΄μΌ νλ€.
27. λ°μ΄ν° νλ¬Έ μ μ‘ (SN)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μλ²μ ν΄λΌμ΄μΈνΈ κ° ν΅μ μ λ°μ΄ν°μ μνΈν μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μλ²μ ν΄λΌμ΄μΈνΈ κ° ν΅μ μ λ°μ΄ν°μ μνΈν μ μ‘ λ―Έν‘μΌλ‘ μ 보 μ μΆμ μνμ λ°©μ§νκΈ° μν¨μ΄λ€.
보μμν
μΉμμ λ°μ΄ν° ν΅μ μ λλΆλΆ ν μ€νΈ κΈ°λ°μΌλ‘ μ΄λ£¨μ΄μ§κΈ° λλ¬Έμ μλ²μ ν΄λΌμ΄μΈνΈ κ°μ μνΈν νλ‘μΈμ€λ₯Ό ꡬννμ§ μμΌλ©΄ κ°λ¨ν λμ²(Sniffing)μ ν΅ν΄ μ 보λ₯Ό νμ·¨ λ° λμ©ν μ μλ€.
β» Sniffing : μ€λνΌλ₯Ό μ΄μ©νμ¬ λ€νΈμν¬μμ λ°μ΄ν°λ₯Ό λμ²νλ νμλ₯Ό λ§νλ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ, μΉ μλ²
νλ¨κΈ°μ€
μ€μμ 보 μ μ‘ꡬκ°μ μνΈν ν΅μ μ΄ μ΄λ£¨μ΄μ§μ§ μλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μ¬μ΄νΈμ μ€μμ 보 μ μ‘ꡬκ°(λ‘κ·ΈμΈ, νμκ°μ , νμμ 보κ΄λ¦¬, κ²μν λ±) μνΈν ν΅μ (https, μ ν리μΌμ΄μ λ°©μ)μ μ μ©νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μ€μμ 보(μΈμ¦μ 보, κ°μΈμ 보 λ±)λ₯Ό μ‘μμ νλ νμ΄μ§μ μ‘΄μ¬ μ¬λΆλ₯Ό νμΈνλ€.
Step 2) μ€μμ 보 μ‘μμ νμ΄μ§κ° μνΈν ν΅μ (https, λ°μ΄ν° μνΈν λ±)μ νλμ§ νμΈνλ€.
Step 3) μ·¨μ½ν λ²μ μ μνΈ νλ‘ν μ½ μ¬μ© μ μνΈνλ ν΅μ λ΄μ©μ΄ μ μΆλ μ μμΌλ―λ‘, μ·¨μ½ν λ²μ μ SSL(SSL 2.0, 3.0) μ¬μ© μ¬λΆλ₯Ό μ κ²νλ€.
보μμ€μ λ°©λ²
* μΉμμμμ μ μ‘ μ 보λ₯Ό μ ννμ¬ λΆνμν λΉλ°λ²νΈ, μ£Όλ―Όλ±λ‘λ²νΈ, κ³μ’μ 보μ κ°μ μ€μμ 보μ μ μ‘μ μ΅μννμ¬μΌ νλ©°, μ€μμ 보μ λν΄μλ λ°λμ SSL λ±μ μνΈν ν΅μ μ μ¬μ©νμ¬ λμ²μΌλ‘λΆν°μ μνμ μ κ±°ν΄μΌνλ€.
* μΏ ν€μ κ°μ΄ ν΄λΌμ΄μΈνΈ μΈ‘μμ λ ΈμΆλλ κ³³μ λΉλ°λ²νΈ, μΈμ¦μΈμ κ°, κ°μΈμ 보 λ±μ μ 보λ₯Ό κΈ°λ‘νμ§ μλλ€.
* μνΈν μ μ‘ μ νλ‘ν μ½ μ€κ³μ κ²°ν¨μ΄ μλ SSLv2, SSLv3, TLSv1.0, TLSv1.1μ νμμ μΌλ‘ λΉνμ±ν νκ³ , TLSv1.2 μ΄μ μ¬μ©μ κΆμ₯νλ€.
28. μΏ ν€ λ³μ‘° (CC)
μ·¨μ½μ κ°μ
μ κ²λ΄μ©
μΏ ν€ μ¬μ© μ¬λΆ λ° μ¬μ©νλ κ²½μ° μμ ν μκ³ λ¦¬μ¦μΌλ‘ μνΈν νκ³ μλμ§ μ¬λΆλ₯Ό μ κ²νλ€.
μ κ²λͺ©μ
μΏ ν€λ₯Ό μ¬μ©νλ κ²½μ° μμ ν μκ³ λ¦¬μ¦μΌλ‘ μνΈννμ¬ κ³΅κ²©μκ° μΏ ν€ μΈμ μ λ±κ³Ό κ°μ μΏ ν€ κ° λ³μ‘°λ₯Ό ν΅ν λ€λ₯Έ μ¬μ©μλ‘μ μμ₯ λ° κΆν λ³κ²½μ λ°©μ§νκ³ μ νλ€.
보μμν
ν΄λΌμ΄μΈνΈμ μ λ¬λλ μΏ ν€μ μ¬μ©μ μλ³ κ°μ΄ νλ¬ΈμΌλ‘ λ ΈμΆλ κ²½μ° μΏ ν€ λ³μ‘°λ₯Ό ν΅ν΄ λ€λ₯Έ μ¬μ©μμ μ ν¨ν μΈμ μ μ·¨λν μ μμΌλ©°, κΈ°ν μ€μμ 보μ μ μΆ λ° λ³μ‘°κ° κ°λ₯νλ€.
β» μΏ ν€(Cookie) : μΈν°λ· μ¬μ©μκ° μ΄λ€ν μΉ μ¬μ΄νΈλ₯Ό λ°©λ¬Έν κ²½μ° κ·Έ μ¬μ΄νΈκ° μ¬μ©νκ³ μλ μλ²μμ μΈν°λ· μ¬μ©μμ μ»΄ν¨ν°μ μ€μΉνλ μμ κΈ°λ‘ μ 보 νμΌμ΄λ€.
μ κ²λμ λ° νλ¨κΈ°μ€
λμ : μΉ μ ν리μΌμ΄μ μμ€μ½λ
νλ¨κΈ°μ€
μμ ν μκ³ λ¦¬μ¦μ΄ μ μ©λμ΄μμ§ μμ μΏ ν€(λλ Session)λ₯Ό μ¬μ©νκ±°λ, Client Side Sessionμ μ¬μ©νλ κ²½μ°μ μ·¨μ½νλ€κ³ νλ¨νλ€.
μ‘°μΉλ°©λ²
μΏ ν€ λμ Server Side Session λ°©μμ μ¬μ©νκ±°λ, μΏ ν€λ₯Ό ν΅ν΄ μΈμ¦ λ± μ€μν κΈ°λ₯μ ꡬνν΄μΌ ν κ²½μ°μ μμ ν μκ³ λ¦¬μ¦(SEED, 3DES, AES λ±)μ μ μ©νλ€.
μ κ² λ° μ‘°μΉλ°©μ
μ κ²λ°©λ²
Step 1) μΏ ν€ λ΄μ© λ° λ°νλλ μΏ ν€μ μ€μμ 보(μΈμ¦μ μν ID, κΆνμ μν ꡬλΆμ λ±)μ λ ΈμΆ μ¬λΆλ₯Ό μ‘°μ¬νλ€.
Step 2) μΏ ν€μ μ€μμ 보λ₯Ό λ³κ²½νμ¬ λ€λ₯Έ μ¬μ©μ λ° κΆνμΌλ‘ μ μ μ΄μ©μ΄ κ°λ₯νμ§ νμΈνλ€.
보μμ€μ λ°©λ²
* μΏ ν€ λμ 보μμ±μ΄ κ°ν Server Side Session λ°©μμ μ¬μ©νλ€.
(Client Side Session λ°©μμΈ μΏ ν€λ κ·Έ ꡬ쑰μ λ€μν μ·¨μ½μ μ λ ΈμΆλ μ μλ€.)
* μΏ ν€(λλ μΈμ )λ₯Ό μ¬μ©ν΄μ μ€μμ 보λ μΈμ¦μΌ ꡬνν΄μΌ ν κ²½μ°μ μμ ν μκ³ λ¦¬μ¦μ μ μ©νλ€.
* HTTP ν€λμ λ€μκ³Ό κ°μ΄ μ€μ νμ¬ μΈμ ID κ°μ HTTPSλ₯Ό ν΅ν΄μλ§ μ μ‘λλλ‘ μ€μ νκ³ , μλ°μ€ν¬λ¦½νΈλ₯Ό ν΅ν΄ μΈμ ID κ° λ± μΏ ν€ μ λ³΄κ° μ μΆλμ§ μλλ‘ λ³΄νΈνλ€.
Set-Cookie : secure, HttpOnly
Set-Cookie : domain=app.mysite.com
β» HttpOnly μ€μ κ΄λ ¨ μ°Έκ³ μ¬ν
https://msdn.microsoft.com/en-us/library/system.web.httpcookie.httponly.aspx
https://www.owasp.org/index.php/HttpOnly