전체 글
-
-
pwnable.kr cmd1Pwnable/Pwnable.kr 2017. 1. 23. 19:06
코드인젝션 문제이다. ` 이거 $ 이거 환경변수 등 여러개가 안막혀있다. 대표적으로 두가지 방법이 있다. 첫번쨰로는 와일드카드, 두번쨰로는 환경변수 사용이있다. 첫번쨰 줄이 와일드 카드를 쓰는 방법이다. cat f* 란 f로 시작하는 파일을 cat 한다는 뜻이다. 와일드카드는 이런식으로 자신이 적은 패턴과 해당하는것들을 찾을떄 쓰인다. f라는 단어로끝나는 것, ~~로 시작되는 파일 등등 2~3 번쨰줄이 환경변수를 쓰는 방법이다. export 라는 명령어를 사용하여 key라는 환경변수에 /bin/cat flag를 저장한다.그리고 \${환경변수 이름} 이런식으로 환경변수를 실행? 시킬수있다.
-
pwnable.kr lottoPwnable/Pwnable.kr 2017. 1. 23. 18:06
이 문제를 풀기위해서 알아야될것일단 이 문제는 취약점을 찾는다는 것 보다는 확률 ? 문제 C코드를 짤떄 약간의 실수 ?를 찾는 문제이다. 그리고 "/dev/urandom"에서 랜덤 값을 가져오는데 직접 코드를 똑같이짜서 랜덤값을 직접 알아낼려했지만 실패하였다.. 1. lotto와 우리가 입력하는 변수는 char 문자열 형식이기때문에 (lotto[i] % 45) +1 이 1 .. 2.. 3 처럼 정수가아닌 그 정수가 char 형식으로 바뀐 아스키코드 값으로 입력해야한다. 2.이중 for문으로 맞추면 match++; 이 부분에서 이상한 점이 있다. 각각의 rand로 만든 랜덤 값으로 첫 번째 rand 값 == 첫 번쨰 입력 값 .. 두 번쨰 .. 세 번쨰가 아닌 첫 번쨰에 나온값과 == 우리가 입력한 1,2..
-
pwnable.kr shellshockPwnable/Pwnable.kr 2017. 1. 23. 14:03
(소스는 생략)shellshock 란 우리가 흔히 아는 bash쉘의 취약점 이다. 특수문자로 bash 환경변수를 이용하여 자신이 원하는 명령을 내릴 수 있다.아래 사진을보면 윗쪽에는 echo pwnable.kr 이 출력 X 두번쨰는 출력이된다. 윗 부분은 취약하지 않는 BASH 쉘, 아래는 같은 디렉토리에 있는 shellshock 취약점이 있는 bash쉘 이다. /bin 디렉토리는 cat 명령어가 있는 디렉토리이다. 이런식으로 shellshock 취약점이 있는 bash에 우리가 원하는 명령을 내릴수있다.