Level GoalThe password for the next level is stored in a file readme in the homedirectory. Unfortunately, someone has modified .bashrc to log you out when you log in with SSH. 다음 레벨의 암호는 홈디렉토리 readme에 있다고 한다. 근데 누가 .bashrc를 수정해서 로그인하자마자 로그 아웃이 된다. 알아야 할 것은 ssh 원격 명령 실행이다. 현재 bash가 기본쉘이여서 ssh로 접속을 하면 바로 끊긴다. 방법은 간단하다. ssh user@host -p0000 방식으로 ssh에 접속하는데이 뒤에 명령어를 적어주면 원격 실행이 가능하다. ssh user@host -..
Level GoalThere are 2 files in the homedirectory: passwords.old and passwords.new. The password for the next level is in passwords.new and is the only line that has been changed between passwords.old and passwords.newNOTE: if you have solved this level and see ‘Byebye!’ when trying to log into bandit18, this is related to the next level, bandit19 두 개의 파일이 있는데 다음 단계의 암호는 .new에 있고 변경된 유일한 줄이라고 한다...
Level GoalThe credentials for the next level can be retrieved by submitting the password of the current level to a port on localhost in the range 31000 to 32000. First find out which of these ports have a server listening on them. Then find out which of those speak SSL and which don’t. There is only 1 server that will give the next credentials, the others will simply send back to you whatever yo..
Level GoalThe password for the next level can be retrieved by submitting the password of the current level to port 30001 on localhost using SSL encryption.Helpful note: Getting “HEARTBEATING” and “Read R BLOCK”? Use -ign_eof and read the “CONNECTED COMMANDS” section in the manpage. Next to ‘R’ and ‘Q’, the ‘B’ command also works in this version of that command… 이번 레벨의 목표는 localhost 30001을 ssl인증을..
Level GoalThe password for the next level can be retrieved by submitting the password of the current level to port 30000 on localhost. 목표는 아까 제출한 같은 password를 localhost의 30000에 제출하라는 것이다. 설마하고 nc localhost 30000했는데 접속이 되며 입력을 받았고 아까 얻은 키로 인증하면 된다. over the wire를 통해 리눅스 기본 명령이 아닌 다양한 컴퓨터 지식들과 정보 수집을 배우는 것 같다. 좋은 wargame인 것 같다. 물론 지금은 ㅎㅎ
그 전까지는 쉽게 풀다가 개인키와 공개키에 대한 개념을 공부한 뒤 풀었다. Level GoalThe password for the next level is stored in /etc/bandit_pass/bandit14 and can only be read by user bandit14. For this level, you don’t get the next password, but you get a private SSH key that can be used to log into the next level. Note: localhost is a hostname that refers to the machine you are working on 뭔 말이냐면, 다음 레벨의 암호는 / etc / bandit_pa..
본선에 출제되었던 문제였는데 UAF문제이다. 바로 분석해보겠다. elf 32bit이다.canary와 nx가 활성화 되어있다. main 윗부분에 while(1)을 돈다. index 함수는 내가 rename한 그냥 바이너리 실행 처음 화면이다.대충 이런 메뉴들이 있다.다시 메인으로 돌아와서 보면 아까 index()를 기반으로 switch ~ case 구문이 있다. buf를 read로 입력 받기 때문에 case 1,2,3,4 정수형이기에 파이썬으로 \x01이런 식으로 보내줘야 한다. 먼저 case1부터 분석하겠다. case1은 Buy cat 고양이를 사는 case이다. ptr은 0으로 초기화가 되어있다. case1을 두번 불르면 ptr에는 값이 들어가서 You already ~ 문을 puts한다. 처음 cas..
어디선가 많이 들어본 문제였는데 이제서야 푼다. 먼저 바이너리를 분석해보겠다. elf 32bit파일이다 아이다로 분석해보겠다. 메인함수이다. 일단 카나리가 있다. 일단 이름을 전역변수에 입력을 받고 그 이름을 출력해준다. 그리고는 무한로프를 돈다 먼저 switch의 인자값을 보면. 메뉴를 보여주고 입력을 받고 리턴해준다.menu로 rename하겠다. case문을 보면 아마 메뉴에 맞는 각 함수들 일것이다.근데 \xff\xff\xff\xff는 무엇일까. 바로 -1이다. 문제를 푸는데에는 지장없으니 넘어가겠다. 먼저 메뉴 1부터 보자. case 1 같은 경우에는 v1의 주소를 인자로 넘겨준다. v1은 4400 바이트만큼의 크기를 할당 받는다. 다시 case 1의 함수를 보자. add music을 보니 아마 ..
- tcache
- codegate
- hacking
- HackCTF
- exit
- 해킹
- glibc
- ebp change
- srop
- overflow
- shellcoding
- fastbin
- SQLi
- fastbindup
- 본선가고싶다
- fsop
- heap
- TLS
- oob
- pwable
- stack reusing
- pwnable.tw
- rt_sigreturn
- FSB
- pwnable
- Total
- Today
- Yesterday