달력

5

« 2024/5 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2017. 7. 9. 15:15

[문제풀이] pwnable.kr - cmd2 Wargames/pwnable.kr2017. 7. 9. 15:15



※ 사전지식


내장 명령어 

리눅스 쉘에서 내장 명령어라는 것이 존재한다. 

흔히 쉘 스크립트를 짤 때 주로 생성되는 것이다. 

i.e) for, read, etc 


8진수 

본 쉘(Bourne Shell)에서는 에코 명령어를 사용했을 때 아스키코드의 8진수 값을 허용한다. 

다른 쉘에서도 이와 같은 행위가 동작하는 지는 모르겠다. 일단 bash 쉘에서 해봤을 땐 먹히지 않았다. 


위 말이 좀 애매하니 간단히 예를 하나 들어보겠다. 



8진수로 88는 16진수로 2d인데 이 값은 아스키 값을 "-"를 나타낸다. 

따라서 내가 echo "\55krzxy" 라고 입력했을 때 출력은 -krzxy 로 나타나게 된다. 


사전지식 끝!




※ 문제풀이


이건 뭐 사전지식이 곧 문제풀이와 직결되기 때문에 별도의 설명이 필요할까 싶다. 


간단히 문제설명만 하자면 "=, PATH, export, /, `, flag" 문자열을 넣지 않고 system 함수에 인자를 전달하는 방법이다. 

물론 환경변수는 초기화되고 내가 입력한 값으로 플래그를 읽어야되는 조건이다. 


사전지식으로 문제풀이를 대체하겠다. - - 


문제풀이 끝!



워게임 경험이 없어서 그런지, 아님 공부가 덜 됬는지 모르겠지만 리버싱.kr부터 포너블.kr까지 매 문제가 새롭당.

왜 이쪽은 익숙함이라는게 없을까나 ㅠ.ㅠ







'Wargames > pwnable.kr' 카테고리의 다른 글

[문제풀이] pwnable.kr - codemap  (0) 2017.07.09
[문제풀이] pwnable.kr - memcpy  (0) 2017.07.09
[문제풀이] pwnable.kr - asm  (0) 2017.07.09
[문제풀이] pwnable.kr - unlink  (0) 2017.07.09
[문제풀이] pwnable.kr - uaf  (0) 2017.07.09
:
Posted by einai