소스코드를 보자
genRandomString() 함수는 $string에 characters[0~len(characters) 중 random한 숫자]를 붙여넣는다. 그리고 $string을 리턴한다.
makeRandomPath함수는 random string에 path를 만들어 주는 함수로 path가 있는지 확인하는 함수이다.
makeRandomPathFromFilename함수는 POST방식으로 filename을 받아서, 해당파일의 확장자를 확인하여 path를 만들어 리턴해주는 함수이다.
genRandomString함수를 통해 random한 스트링이 출력이 되고 확장자가 jpg로 바뀌는 것을 알 수 있다.
이 페이지에서는 파일을 업로드 하는것외에는 할수 있는게 없다. 따라서 burp suite를 이용해야 될거 같다.
그전에 먼저 비번의 위치를 확인해야 한다.
여태까지 풀어본 경험을 바탕으로 하였을때 비번은 /etc/natas_webpass/natas13에 있을것이다.
이 경로에 접근하기 위해서 php코드가 적합하다고 생각했다.
따라서 php형태의 파일로 코드를 작성해보자.
natas level 8-> level 9 를 풀었을때 passthru 명령어를 이용하여 비번이 있는 경로에 접근하였다.
따라서 이번에도 passthru를 이용하여 경로에 접근할 것이다.
이후 파일을 올리고 upload를 눌러야 된다. 파일의 형식은 메모장으로 작성해서 txt이다. 어차피 burp suite로 바꿔줄 것이므로 그냥 txt로 했다.
burp suite를 이용하여 확장자를 php로 바꾸자
그리고 forward를 누르면 natas화면이 바뀐다.
링크를 클릭하면 비번을 알수 있다.
비번은 jmLTY0qiPZBbaKc9341cqPQZBJv7MQbY