일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 정보보안
- 보안
- 밑바닥부터시작하는딥러닝
- 백준
- BOF
- 활성화함수파이썬
- 인공지능
- 머신러닝
- 딥러닝파이썬
- 파이썬신경망
- 알고리즘
- 파이썬
- 스트림암호
- C알고리즘
- 항등함수
- 8086CPU레지스터
- 소프트맥스함수
- C언어알고리즘
- 신경망파이썬
- 신경망구현
- C언어 알고리즘
- c언어
- 달고나bof
- 신경망 학습
- FTZlevel10
- 딥러닝
- BOJ
- 백준알고리즘
- 신경망
- 버퍼오버플로우
- Today
- Total
목록<CTF>/<HackCTF> (13)
HeeJ's

문제 사이트로 들어가면, google 사이트가 나오는데, URL을 보면 알 수 있다. flag.php에 flag가 있는 것 같다. 그러면 command를 사용해서 flag.php를 확인해주면 될 것이다. flag.php가 필터링 되고 있는 것 같다. 그래서 flag가 필터링 되어도, flag.php가 나타날 수 있도록 url을 조작해서 입력해주었다. flag를 획득했다.

문제 화면을 열면 php 코드가 들어있는 것을 확인할 수 있다. 모르는 함수가 있어서 찾아보았다. - trim() : 문자열 맨 앞과 맨 뒤의 공백을 제거한다. - file_get_contents() ex. -> 웹사이트에 있는 전체 파일을 문자열로 읽어들이는 php 함수 - isset() : 들어있는 값이 NULL이 아님을 의미 (변수가 설정되었는지 확인) 코드를 해석해보면, 1. guess 변수에 값이 있으면 filename 변수에서 파일 문자열을 읽어들인 것을 $secretcode 변수에 넣는다. 2. $guess와 $secretcode 값이 같으면 flag.txt를 출력해준다. filename 변수와 guess 변수의 내용을 조작해서 문제를 해결할 수 있다. 어떻게 값을 전달해줄까 하다가, 입력 ..

Page 버튼을 눌러보았다. page 수는 get방식으로 들어가며, 문제화면 아래에 해시함수처럼 보이는 것들이 계속 생성되는 것을 확인할 수 있었다. hask identifier로 확인한 결과, SHA 512인 것을 확인할 수 있었다. 위의 값들을 복호화해서 flag를 얻어낼 수 있을 것이라 예상했지만, 가능할 리 없었다. 페이지 숫자 중 비밀이 있다는 것은 특정 page에 들어가게 된다면 flag를 얻을 수 있겠다는 생각을 했다. 일일이 찾아볼 수 없으니 파이썬 스크립트를 이용해 찾아주려고 한다. 이제 get방식으로 들어가는 1225번째 페이지를 확인해주었다.

아래의 button을 클릭해도 아무 일도 일어나지 않는다. 소스코드를 확인해주었다. 매우 간단한 코드를 확인할 수 있었다. 5번째 줄에서, button을 클릭했을 때 나오는 value를 flag로 바꿔주면 flag를 얻을 수 있지 않을까 해서 개발자 도구를 이용해 코드를 수정해주었다. 그리고 버튼을 다시 클릭해주면 flag를 얻을 수 있다.

문제: 문제에 들어가보면 버튼은 4번까지 있는데 5번 파일에 플래그가 있다는 정보가 나온다. 그래서 버튼을 일단 눌러보았는데 1번을 누르면 ?id=1 2번을 누르면 ?id=2가 나왔다 그래서 아무 버튼을 누른 상태로 숫자를 5로 바꿔줘보았다. flag를 얻을 수 있었다. 성공!

문제: 사이트에 접속해보면 Hidden Flag라는 문자열과 함께 로봇 사진이 있다. 이 로봇 사진이 robots.txt와 관련된 것이라는 힌트를 주는 것 같다. robots.txt를 열어보았다. /robot_flag/ 디렉터리의 접근이 모두에게 차단되어있다. 이 robot_flag에 들어가보면 flag를 찾을 수 있다.

문제: txt파일에 2진수가 여러 개 쓰여있었다. 이 숫자들을 16진수나 10진수로 바꾼 후, ASCII로 바꿔주면 답이 나올 것 같다. 노가다했다.

문제: 바로 전에 풀어주었던 Question? 문제와 동일하게 압축을 풀어주니 jpg 파일이 나왔다. 이 파일을 우선 HxD로 열어준 후, 그 문제와 똑같이 hack이라는 단어를 검색해보았다. flag가 보이길래 이 값을 넣어줬더니 오답이 떴다... 그래서 다시 HxD를 살펴보니 txt파일이 숨겨져있는 것을 확인할 수 있었다. 이 hex 값들을 잘 살펴보면 fake flag 바로 앞에 jpg 파일의 푸터 시그니쳐를 발견할 수 있다. 그래서 이 부분까지가 jpg 파일의 시그니쳐라는 것을 확인하고 그 뒷부분에서 ZIP 파일의 시그니쳐인 PK(50 4B)를 확인할 수 있었다. 이 부분을 가지고 새로 파일을 만들어준 뒤, ZIP파일의 시그니처이기 때문에 확장자 명을 ZIP로 바꾸어주었다. 그리고 이 파일을 열어..