반응형

사이버 424

[Root Me] Javascript - Obfuscation 2 - 웹해킹 / 자바스크립트

두번째 Obfuscation 문제 Obfuscation이란 난독화를 의미한다. 보통 공격자가 악성코드의 분석을 방해하기 위해 사용하거나 개발자가 코드의 동작을 숨기기 위해 사용한다. 이전문제처럼 비밀번호를 알아내면 된다. 가장먼저 f12를 눌러서 개발자도구를 이용해 웹 소스를 확인해본다. pass 라는 변수에 무언가를 unescape한 값을 넣고있다. escape 함수는 인코딩, unescape 함수는 디코딩을 시켜주는 함수이다. 자세히보면 unescape가 두번 들어가 있다. 따라서 두번 디코딩을 해주면 된다. 구글에 url 디코딩 이라고 검색하면 온라인으로 디코딩 할 수 있는 사이트들이 많이 나온다. 아무곳이나 들어가서 두번 디코딩을 해준다. 첫번째 디코딩을 하면 쪼금 알아 볼 수 있는 것들이 생긴다..

워게임/Root Me 2022.03.13

[angstromCTF] Secret Agents - 웹해킹 / SQL Injection

이 문제부터 조금씩 어려워지기 시작했다. Secret Agents 라는 웹 해킹 문제이다. 문제설명을 읽어보면 secret agent portal 에 접속할수 있냐고 물어본다. 그리고 유출된 웹 페이지의 소스코드가 힌트로 제공이 된다. 문제페이지에 접속해보면 Welcome to the Super Secret Agents official site ! 라는 환영문구가 보인다. 비밀요원들만 접속할 수 있는 숨겨진 웹사이트 인가 보다. 아래쪽에 Here's the secret : actual secret agents have their OWN BROWSERS!! 라고 적혀있다. 비밀요원들은 특별한 브라우저를 이용해서 해당 페이지에 접근한다고 한다. 브라우저란 우리가 사용하는 크롬, 인터넷 익스플로러, 파이어폭스..

CTF/웹해킹 2022.03.12

[Root Me] Javascript - Obfuscation 1 - 웹해킹 / 자바스크립트

10점짜리 Javascript - Obfuscation 1 문제 Obfuscation 은 혼미, 난처함 등의 의미를 가지는 영단어인데, 정보보안에서는 주로 코드 난독화를 의미한다. 보통 공격자들이 악성코드의 동작을 숨기거나, 보안장비를 우회할때 쓰기도 하고, 개발자들도 공격자들에게 코드가 노출되는것을 방지하기 위해서 사용하는 방법이다. 문제페이지에 접속하면 알림창이 뜨면서 비밀번호를 입력하라고 한다. 마치 이전에 풀어봤던 Javascript - source 문제와 유사하다. f12를 눌러서 개발자도구를 통해 해당 페이지의 웹 소스를 살펴보면 pass = 으로 pass라는 변수를 선언하고 그 안에는 알수없는 이상한 값들이 들어가 있는것을 볼 수 있다. 이것처럼 %숫자 로 이루어진 문자열들은 url 인코딩이..

워게임/Root Me 2022.03.10

[angstromCTF] clam clam clam - MISC / 리눅스

clam clam clam MISC 문제 MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 해킹이라고 보긴 좀 뭐하고 해킹할때 쓰일수도 있는 잡다한 기술을 쓸수있는지 물어보는 문제이다. 문제 설명 중간에 보면 nc misc.2020.chall.actf.co 20204 라고 적혀있는데 nc는 netcat 의 약자로 tcp 또는 udp를 이용해서 네트워크 연결을 하기 위한 유틸리티 이다. 이런식으로 netcat을 쓰면된다. nc 이경우에는 호스트가 misc.2020.chall.actf.co 이고 포트번호는 20204인것이다. 이렇게 입력하면 문제 서버로 접속이 된다. 문제 접속이 성공하면 clam calm malc malc 이런식으로 똑같은 말만 계속 반복한다. 캡쳐한..

CTF/MISC 2022.03.10

[angstromCTF] WS3 - 포렌식 / Wireshark

대망의 WS 마지막 문제 WS는 패킷 분석 프로그램인 Wireshark 의 줄임말이다. 역시나 record.pcapng 파일이 주어진다. 해당 파일은 와이어샤크로 열어볼 수 있다. 와이어샤크로 열어서 천천히 패킷을 보다보면 76번째 패킷에서 /josh/secret.git/git-receive-pack이라는 수상한 URI를 발견할 수 있다. CTF를 푸는 사람으로써 secret 라는 글자를 그냥 지나치는건 예의가 아니다. 패킷을 더 자세히보면 맨앞에 POST 메소드를 사용한 걸 확인할 수 있다. POST 메소드는 웹 서버에 데이터를 전달할때 쓰는 메소드이다. 예를들자면 로그인, 게시글 작성, 파일업로드 등등의 경우가 된다. 이 경우에는 git 서버에 파일을 업로드한 것 같다. 와이어샤크에는 이렇게 HTTP..

CTF/포렌식 2022.03.08

[angstromCTF] WS2 - 포렌식 / Wireshark

WS2 이전 WS1 과 같이 Wireshark 를 이용해서 푸는 문제이다 확실히 두번째 문제라 그런지 첫번째 문제보다 풀이수가 훨씬 적다. 이번에도 recording.pcapng 파일이 주어진다. pcapng 파일은 패킷 덤프 파일으로 와이어샤크를 이용해서 열어주면 내용을 볼 수 있다. 천천히 패킷을 내리다보면 35번째 패킷에서 수상한 부분이 보인다. Form Boundary Content-Disposition : form-data filename : flag.jpg Content-Type : image/jpeg 이런 문자열들이 보이는 걸로보아 웹페이지에 flag.jpg 파일을 업로드하는 패킷이 캡쳐가 된 듯 하다. 실제로 웹서버에 파일을 업로드할때 요청패킷을 burp suite 같은 프록시 툴로 잡아서..

CTF/포렌식 2022.03.07

[angstromCTF] WS1 - 포렌식 / Wireshark

WS1 236개 팀이나 푼 문제이다. 사실상 빵점방지 퍼주는 문제.. 주어진 파일로부터 자기 비밀번호를 찾아보라고 한다. recording.pcapng 라는 이름의 파일이 주어진다. pcapng 는 패킷 덤프 파일의 확장자 이다. 패킷 덤프 파일이 주어지는걸 보아 문제이름은 WS는 와이어샤크의 줄임말인가보다. 참고로 와이어샤크(Wireshark)는 오픈소스 패킷 분석 프로그램이다. https://www.wireshark.org/download.html Wireshark · Download Download Wireshark The current stable release of Wireshark is 3.6.2. It supersedes all previous releases. www.wireshark.or..

CTF/포렌식 2022.03.07

[SUSEC CTF] little - 포렌식 / Autopsy

txz 확장자를 가진 압축파일이 하나 주어진다. tar 명령어를 이용해 tar -xvf 로 압축을 풀어주면 little.img 파일이 나온다. binwalk 로 해당파일을 자세히 봤더니 ext2 filesystem 이라고 나온다. ctf 폴더를 하나 만들고 거기에 ext2로 마운트를 시켜봤다. 마운트 시키면 ctf 폴더안에 secondf.png 파일 하나만 나온다. 파일이름이 second라 first로 있지 않을까 추측했다. 이것저것 해보다가 별생각없이 정말 우연히 vfat으로 마운트를 시켜봤다. 신기하게도 아까 secondf.png는 없어지고 FIRSTF.KGB 파일 하나만 덩그러니 있다. 이거 찾는데 꽤나 시간이 걸렸었다. 이렇게 하고 다시 위에 binwalk 결과를 보니 1072128 위치에 KGB..

CTF/포렌식 2022.03.06

[zer0ptsCTF] Locked KitKat - 포렌식 / 안드로이드

Locked KitKat 문제 여기서 킷캣은 안드로이드 버전 중 하나이다. 용의자의 안드로이드 장치를 압수해서 디스크를 추출했다고 한다. 추출한 파일들에서 안드로이드 잠금 패턴을 찾아내면 되는 문제이다. img 파일이 주어진다. 이 파일이 용의자의 안드로이드 장치를 이미징한 파일이다. binwalk를 이용해서 해당 이미지 파일을 보니 파일시스템은 ext4를 사용하고 있는것을 볼 수 있다. sudo mount android.4.4.x86.img ctf -t ext4 명령어를 이용해서 ctf 폴더에 마운트 시킨다. 안드로이드 패턴도 분명히 이 파일시스템 안에 저장되어있을 것이다. 구글을 열심히 검색해보니 한가지 힌트를 찾을 수 있었다. https://resources.infosecinstitute.com/t..

CTF/포렌식 2022.03.05

[zer0ptsCTF] easy strcmp - 포너블 / ltrace

chall 이라는 이름의 바이너리 파일이 하나 주어진다. 해당 파일은 리눅스에서 실행 가능한 elf 파일이다. 리눅스 환경으로 옮겨서 chmod 777 등의 방법으로 실행권한을 부여한 뒤 ./chall 이런식으로 실행시키면 된다. 실행시켜봤더니 ./chall 라고 사용법이 나온다. a를 입력해 봤더니 Wrong! 이라고 나오는걸 보아 완전한 플래그를 맞게 입력해야 되는듯 하다. 해당 파일을 IDA로 열어보면 위와같은 부분을 발견할 수 있다. strcmp 함수를 이용해서 "zer0pts{****CENSORED****}" 값과 입력값을 비교한 뒤 모든 글자가 맞으면 Correct! 틀리면 Wrong! 을 출력한다. 이 문제는 ltrace라는 도구를 이용하면 쉽게 풀 수 있다. 위키백과에는 ltrace가 이렇..

CTF/포너블 2022.03.05
반응형