shell νλ‘κ·Έλ¨μ μ΄λ€ λ¬Έμμ΄μ μ λ ₯νλ©΄ μμ ls -al λͺ λ Ήκ³Ό κ°μ μλ΅μ μΆλ ₯νλ νλ‘κ·Έλ¨μ΄λ€. ν΄λΉ νμΌμ΄ μλ λλ ν 리μ μλ΅κ³Ό μΌμΉνκΈ° λλ¬Έμ λΆλͺ νλ‘κ·Έλ¨ μμμ ls -al λͺ λ Ήμ μ€ννλ μμ€ν ν¨μλ₯Ό νΈμΆν κ²μμ μ μΆν μ μλ€.
μ΄ νλ‘κ·Έλ¨μμ μ λ ₯μ gets ν¨μλ‘ μ²λ¦¬λλ€.
cμΈμ΄μμ getsλ μ λ ₯λ°κΈ° μν΄ μ¬μ©λλ ν¨μμΈλ°, κ°ν μ λΆλΆκΉμ§ μλΌ char* νμ μΌλ‘ λ§μ§λ§μ NULLμ λΆμ¬ μ μ₯ν΄μ£Όλ ν¨μλΌκ³ νλ€. νλ λ²νΌ μ€λ²νλ‘μ°λ₯Ό λ°μμν¬ μ μλ λ¬Έμ κ° μ‘΄μ¬ν΄ gets_s ν¨μμ μ¬μ©μ κΆμ₯νλ€κ³ νλ€.
+) μ°Έμ‘°
μ΄ νλ‘κ·Έλ¨μμ μ¬μ©λ gets ν¨μλ μ€λ²νλ‘μ°λ₯Ό λ΄μ μ΄λ€ νμμΌλ‘ μ λ ₯λλ λͺ λ Ήμ΄λ₯Ό μμ ν¨μ΄ λͺ©μ μΌ κ²μ΄λ€. λ°λΌμ κΈ°μ‘΄μ μ λ ₯λμ΄μμ ls -al λͺ λ Ήμ΄μ μμΉλ₯Ό λ¨Όμ νμΈν΄λ³΄κΈ°λ‘ κ³ννμλ€.
λ§μΉ¨ μμ€ν ν¨μ μ€ν μ§μ μ μΉμ ν μΈμκ° μ λ¬λλ κ²μ νμΈν μ μλ€. μ λ¬λλ μΈμμ λ¬Έμμ΄μ x/s λͺ λ ΉμΌλ‘ νμΈν΄λ³΄μλ€.
μμΈ‘ν λ°μ λ§μ°¬κ°μ§λ‘ ls -al λͺ λ Ήμ΄ μ λ¬λ¨μ νμΈνλ€. λ°λΌμ 0x555555558090μ£Όμμ λ΄μ©μ λ³κ²½νμ¬ flag νμΌμ μ΄λ©΄ λλ€.
λ¬Έμ μμ flag νμΌμ μμΉλ μ΅μλ¨ λλ ν 리μ 'flag'λΌλ νμΌλͺ μ λ°λ₯Έλ€κ³ νλ€. λ°λΌμ ν΄λΉ νμΌμ μ΄ μ μλ λͺ λ Ήμ΄λ₯Ό μ μ£Όμμ μ λ ₯νλ©΄ λλ€.
gets ν¨μμ μ λ ₯κ°μ΄ μ μ₯λλ μ£Όμλ 0x555555558060μ΄λ€. 48byte μ°¨μ΄κ° gets ν¨μμ μ λ ₯κ° μ μ₯μμΉμ λͺ λ Ήμ΄ μ μ₯μμΉ μ¬μ΄μ μ‘΄μ¬νλ―λ‘, νμμλ λ¬Έμ 48κ°λ₯Ό λͺ λ Ήμ΄ μμ λ¨Όμ μ λ ₯νλ©΄ λλ€λ κ²°λ‘ μ λλ¬ν μ μλ€.
μ΄λ₯Ό ν΅ν΄ python μ½λλ₯Ό μμ±νλ€
print 'a'*48 + 'cat /flag'
μνλ λͺ λ Ήμ΄ μ€νλ¨μ νμΈν μ μμλ€.
μ΄λ₯Ό μ격μλ² νμΌμμ μ€νν΄ flagλ₯Ό νλνλ€.
μλ£!
'π 보μ,μ λ³΄λ³΄νΈ > π [STYDY] 리λ²μ±' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[ DoPwn ] Week2 - "assemlator" Write Up (0) | 2021.11.30 |
---|---|
[ DoPwn ] Week2 - "assembly" Write Up (0) | 2021.11.30 |
[ DoPwn ] Week1 - "Magic Spell" Write Up (0) | 2021.11.22 |
[ DoPwn ] Week1 - "Student ID" Write Up (0) | 2021.11.20 |
[Whois-Internal] "EasyReverseMe" Write-Up (0) | 2021.11.08 |