SWUFORCE/워게임 문제풀이 44

써니나타스 19번 라이트업

19번은 0과 1이 나열되어있는데 이건 딱 보니 2진수이다. 영어로 바꿔주기 위해 변환사이트에서 변환해보면 이런 문자가 나온다. 이것도 디코딩을 하면 답이 나올줄 알았는데 아니였다! 인터넷의 힘을 빌려 찾아보니 치환 암호라는 것이였다. 치환 암호 (置換暗號, substitution cipher)는 일정한 법칙에 따라 평문(平文, plaintext)의 문자 단위를 다른 문자 단위로 치환하는 암호화 방식이다. 치환 암호를 번역하는 사이트에서 이 문장을 넣어보았다. 이렇게 25개의 복호화문이 나왔는데 9번을 보면 플래그가 나온걸 볼 수 있다.

써니나타스 18번 라이트업

처음 들어가면 이런 화면이 나오는데 저 숫자들을 보면 아스키코드로 쓰여진 문장같다. 아스키코드를 영어로 바꿔줘야한다. 요즘 좋은 사이트들이 많아서..^^ 쉽게 변환했다. 이 알파벳들을 플래그로 넣어봤는데 이건 답이 아닌 것 같았다.. 그래서 써니나타스 내에 있는 디코더로 디코딩을 해보았다. 플래그 획득! 베리베리통통구리가 답이다..

워게임 문제풀이 - H4CKING GAME [Easy] 라이트업

디지털 포렌식 분야의 문제이다. 파일을 다운받아보면 이런 회색의 아무것도 없는 사진이 보인다. 뭔지 감이 안와서 여러가지 다 해보기로 했다. 아까 했던 스테가노그라피 사이트에 우선 돌려봤다. 그랬더니 예상도 못하게 이런 큐알코드가 나왔다..! 핸드폰으로 들어가보겠다. 이렇게 구글에 검색어가 뜬 상태로 들어가졌다. 이게 플래그인가..? 진짜 맞았다...(쉬운놈같으니라구) 이렇게 성공~!

dreamhack-tools-cyberchef 드림핵 라이트업

이 문제는 저 사이트에 있는 툴을 사용해서 플래그를 획득하는 문제이다. 문제 파일을 받아보면 사이트가 하나 나오는데 암호문과 아래에 암호화 기법들이 나온다. 위 암호문을 아래의 과정으로 암호화를 하는건지 복호화를 하는건지.. 이건 드림핵 툴인데 여기에 rail fence를 치니까 암호화하는 것과 복호화하는 옵션 이렇게 두 개가 나온다.우선 복호화를 해보기로 하고 ROT13 -> Base64 -> Rail Fence 순서로 복호화 작업을 해주겠다. 이렇게 3개를 순서대로 넣고 input에 저 암호문을 넣었더니 output에 플래그가 나왔다!

baby-linux 드림핵 라이트업

이 문제는 리눅스 명령어를 사용하여 파일을 찾아 플래그를 획득하는 문제이다. 사이트로 들어가보면 위와 같이 리눅스 터미널처럼 사용할 수 있는 화면이 나온다. 여기에 파일 목록을 보기 위해 ls를 입력해보았다. 목록들이 이렇게 뜨는데 눈에 띄는 파일을 hint.txt이다. 이 파일을 cat 명령어로 확인해본다. 이 경로에 플래그가 있다는 말일까? 저 경로에 플래그르 붙여 cat으로 다시 한번 보았다. no 라고 뜨는데 이걸 해결하라고 파이썬 파일을 준듯 하다. 코드를 살펴보자. cmd에 flag라는 글자가 들어가면 No!를 출력하게 하는 코드가 있다. 그럼 flag를 다 쓰지 않고 우회해야 하므로 대체 문자인 *를 사용해서 다시 입력해보았다.flag 문자중에 아무 알파벳이나 *로 치환해도 된다. 플래그가 ..

드림핵 라이트업 rev-basic-1

이 문제는 플래그를 알아내어 정답을 알아내는 문제이다. 문제 파일의 프로그램에 들어가보면 다음과 같이 인풋할 수 있는 창이 나온다. 아무거나 입력하면 Wrong이라고 출력된다. 프로그램을 디버거 프로그램에서 살펴봤다. 메인 찾기 귀찮아서 조금 내려보니까 correct가 보인다. 저 위에 콜 함수로 이동해보았다. 처음 부분으로 이동되며 문자들이 쭉 나오는데 이것이 플래그이다.

드림핵 라이트업 Carve Party

이 문제는 사이트에 들어가면 아래와 같이 호박이 나오는데 만번 클릭하면 플래그가 나오는 문제이다. 하지만 진짜 호박을 만번 클릭할 수는 없는 법이니 사이트에서 개발자 모드로 들어가서 코드를 살펴보아야할 듯 하다. 요소에서 10000이 들어간 코드가 어디에 있는지 살펴보다가 위와 같은 코드를 발견했다. 이 코드를 10000에서 작은 수로 바꾸면 되지 않을까 해서 바꿔보려고 한다. 근데 계속 수정되서 이 방법은 아닌듯.. 반복문으로 9999번을 돌려줘야겠다. 콘솔에 저기같이 반복문을 작성하면 다음과 같이 풀린다.

드림핵 라이트업 file-download-1

파일 다운로드 취약점 문제이다. 사이트에 들어가보면 아래와 같이 메모 내용을 적으면 파일로 업로드할 수 있게 되어있다. 문제에서 flag.py를 다운받으면 플래그를 획득할 수 있디고 써있어서 파일을 업로드 해보았다. 흠.. 아무것도 되지 않았다. 그래서 찾아보니 저 파일 그대로 쓰면 안되고 디렉토리를 이동해야한다고 한다. 그래서 ../flag.pt를 다시 입력해보니 이번엔 이렇게 나오면서 뭔가 막힌것 같았다. 파이썬 코드를 한번 봐야겠다. 파이썬 코드에 어차피 막힌다고 되어있었다.. 그래서 다른 방법을 찾아봤다. 위에 url을 보니 이름에 내 파일이 들어가있는걸 볼 수 있다. 여기서 이름을 고쳐보겠다. 플래그 발견!

드림핵 라이트업 image-storage

파일 업로드 취약점을 이용해 플래그를 획득해야 한다. 파일에는 php 파일이 3개 들어있었고 사이트를 열면 홈 화면이 나온다. List에는 아무것도 없고 Upload에 들어가면 이렇게 파일을 업로드할 수 있는 화면이 나온다. 파일을 여기서 업로드하면 리스트에 그게 뜨는듯 하다. upload.php 파일에서 php부분만 살펴보았다. php 파일은 업로드 파일에 대한 확장자 필터이 필요한데 이 코드에서는 봉지 않는다. 이것을 이용해서 플래그를 얻을 수 있을 것 같다. 리스트 파일도 보면 따로 검수 과정 없이 업로드 된 파일 값을 출력해준다는 것을 알 수 있다. flag.txt 를 출력하기 위해서 system 함수를 이용해서 파일을 저장하고 업로드를 했다. 리스트에 들어가서 보면 플래그가 나온다