분류 전체보기
Find Key(moon) (100)
moon.png가 주어졌다. 일단 png 파일이 주어졌을 때 예상되는 일이 몇 가지 있다. 사이즈 조정, rgb 디코딩, 이미지 값 조정 등.. 일단 hxd에 넣어 헥스값을 관찰하자. png 파일의 헤더, 푸터는 89 50 4E 47 0D 0A 1A 0A, 49 45 4E 44 AE 42 60 82이다. 헤더는 잘 있다. 그런데 푸터 뒤에 '50 4B 03 04 ~' 이렇게 ZIP 파일 포맷이 보인다. 그 밑에 flag.txt 라는 수상한 이름도 보인다. 아마 zip 파일을 만들어 풀면, 그 안에 플래그가 있지 않을까 싶다. 그래서 PK 부터 딱 떼어서 새로운 파일, moon.zip을 생성했다. moon.zip!!! 역시 flag.txt가 있다. 그리고 암호가 있다~ 암호는 파일 이름인 moon 이었다...
SQLD 필기 정리 PDF 공유, 합격 후기
처음으로 본 자격증 시험 합격했습니다! 코로나 때문에 시험이 계쏙 미뤄지고 미뤄지다가 겨울 방학에 딸 걸 5월 말에 겨우 겨우 시험봤네요. 같이 공부하시는 분들 참고하시라고 공부하면서 PDF도 만들었는데 불합격되면 올리지도 못하니까.. 단답형에서 많이 틀린 것 같아서 긴가민가 하고 있었는데 그래도 붙어서 기분은 좋네요!! 물론 이것만으로 시험 준비를 완벽하게 할 순 없겠지만 노베이스 상태에서 읽으시면 전체 범위 중 80%는 얻어가실 수 있을 것 같아요. 필기 PDF SQLD 소개 데이터자격시험 SQL(Structured Query Language)은 데이터베이스를 직접적으로 액세스할 수 있는 언어로, 데이터를 정의하고(Data Definition), 조작하며(Data Manipulation), 조작한 결..
RACTF 2020: Dimensionless Loading, Disk Forensics Fun
Dimensionless Loading 250점 짜리 문제! flag.png 파일이 주어지고 열면 '이 파일을 열 수 없습니다'라고.. HxD로 까봤다. 일단 시그니처 관련해서는 아무 이상 없었다. 한 가지 이상한 점은, 사진 크기를 결정하는 부분이다. 핑크 부분은 width, 보라색 부분이 height를 결정한다. 조금 더 쉽게 보기 위해 010 에디터로 열어보자. 이 곳은 IHDR 청크에 해당하는 부분이다. (조만간 png 파일 구조에 관한 포스팅 올려야지) IHDR은 Image HeaDeR의 약자로, PNG 파일의 기본 정보를 담는 청크다. width, height 모두 '0'이다. 요 부분이당 그래서 사진 크기를 바꿔야겠다는 생각을 했다. 먼저 width와 height 모두 0x0200으로 변경해..
A회사 보안팀은 내부직원… (100)
내부 문서를 외부로 업로드한 흔적이 있을 것이다. 업로드 시간, 수정 시간, 파일 이름, 파일 사이즈를 구하면 된다. 일단 evidence.001을 풀고 FTK에 넣어보자! Partition 1 -새 볼륨 - [root]에서 위 사진과 같은 파일을 10개 발견했다. 파일들은 이런식으로 .app/Documents/Library/tmp, 4개의 폴더가 있었다. 이 정보를 통해 10개의 폴더가 각각 어떤 어플의 폴더인지 알 수 있었다. 아래 10개이다. Weather.app CGV2.app CNN-iPhone.app Podcasts.app Dropbox.app WebViewService.app HousekeepingLog.app MyPainting.app HarooNotes.app dayalbumlite.ap..
Basic RCE L02, L03
패스워드로 인증 파일이 손상되었다고 한다. 주어진 02.7z 파일을 풀면 02.exe 파일을 얻는다. 아묻따 실행부터.. 오호.. 뭐가 잘못됐을까? 일단 PE 실행 파일인 것은 확실하다. 헥스 값을 더 보자. 더 내려보니 쓰인 함수, dll들이 보인다. 더 내리니까 이런 문자열을 발견했는데.. Yeah, you did it! 뭔가 수상하다 ㅋㅋㅋㅋ 1번에 비해 너무 확 낮아진 난이도랄까 03.exe가 주어진다. 역시 바로 실행.. 이러면 안되는데ㅠ MSVBVM50.DLL이 없어서 실행이 안된다고 한다. 그래서 설치 끝! 이제 다시 실행! 해봤는데 이런게 나오더니 이런게 나왔다. 일단 뭐든 입력해보자. 문자열 비교 함수를 찾으라고 했으니 아마 내가 입력하면 틀렸다고 하겠지ㅜ 이제 디버거로 열 때가 됐다. ..
우리는 이 파일에 플래그를...
말그대로 flag.. 확장자가 없어서 무슨 파일인지 알 수 없다. 010 editor로 열어봤다. pW, 'flag.str'는 보인다. 음.. 그래도 모르겠다 그래서 파일 확장자를 모를 때 이게 어떤 파일인지 알 수 있는 방법이 없을까 찾아보다가 'exiftool'이라는 것을 발견했다. https://exiftool.org/ ExifTool by Phil Harvey 0 (Information Type) AFCP, AIFF, APE, APP0, APP1, APP11, APP12, APP13, APP14, APP15, APP4, APP5, APP6, APP8, ASF, Audible, CanonVRD, Composite, DICOM, DNG, DV, DjVu, Ducky, EXE, EXIF, ExifToo..
사진 속에서 빨간색이… (100)
hidden.png는 아래 사진이다. 개귀욤 일단 HxD 헤더, 푸터 잘 있다. 이미지 속 플래그를 숨겨놓은 스테가노그래피 문제일 각인데 '빨간색'이 힌트니까 색상값을 변조했을거라 생각했다. 일단 플래그는 아래 사이트에서 드랍만 해서 찾을 수 있었다. https://osric.com/chris/steganography/decode.html They Live Steganography - Decode Image Decode an Image Use this page to decode an image hidden inside another image (typically a .png file) using They Live Steganography. A Chrome extension is also available..
저는 플래그를 이 파일에.. (100)
just_open_it.jpg는 이렇게 생겼다. 일단 HxD로 열어보자. 일단 확장자는 시그니처랑 일치한다. 그런데 계속 내리다 보면 이상한 부분이 등장한다. 이런 부분이 코드 내내 간헐적으로 등장한다. 푸터도 잘 있다. 처음엔 카빙 문제인가 했는데 푸터도 하나만 있고.. 중간 중간 등장하는 00 28 A2 8A를 다 없애야 하나.. 도 생각하다가 그냥.. 플래그 포맷이 있을까 해서 찾아봤는데 풀려버렸다
Basic RCE L09
09.exe 파일이 주어진다. 일단 실행해보자. 확인을 누르면 파일을 찾을 수 없다는 메시지가 뜬다. 올리디버거로 열어봤다. 많이 봤던 00401000이 아니라 004071F0이 EP로 잡혔다. 그 곳에는 PUSHAD가 있다. PUSHAD는 레지스터 백업용으로 쓰는 명령어로, 범용 레지스터 값들을 스택에 쌓는다는 의미이다. 왠지 패킹되어 있을 듯한 느낌이 드니 PEiD로 검증해보자. UPX로 패킹되어 있다고 한다. 바로 UPX 언패킹을 진행하고 파일을 다시 실행시켜봤다. 오류가 뜬다.. 문제에서 언급된 'stolenbyte' 때문일 것이다. 언패킹한 09.exe를 우선 올리 디버거로 열어보자. 'NOP NOP NOP ...' 이 부분이 아마 훔쳐진 바이트일 것 같다. 자세히보면 0040100E의 코멘트 ..
제 친구의 개가 바다에서… (100)
아래와 같은 이미지, hidden.jpg가 주어진다. 일단 이미지 파일이니까, HxD로 열어봤다! JPG 파일이니까 FF D8~로 시작하겠거니 했는데 뒤에를 보니 FF D8 FF DB였다. 보통 FF D8 FF E0이나 FF D8 FF E8 정도만 봐왔었는데 DB는 처음 보는 것 같아서 좀 더 찾아봤다. 일단 아래 사이트에서 JPG(JPEG)의 파일 구조를 파악했다. [JPEG] JPEG의 파일구조 1. JPEG 파일의 분석 JPEG은 기본적으로 위 그림처럼 파일의 제일 처음 2byte에 FF D8 이 위치한다. 이를 SOI (Start Of Image) marker 라고 하며 이를 통해 JPEG Format 여부를 판단할 수 있다. JPEG 파일 구조.. cometkorea.tistory.com 출처:..
Music Player (150)
위 파일 3개를 받는다! txt부터 읽어보면.. 어쨌든 지금 1분만 들을 수 있으니 더 들어서 플래그 찾으라는 내용 Music_Player.exe를 실행해보면 위와 같은 화면이 뜬다. 되게 재밌어 보인다ㅋㅋㅋ 여기서 Open 눌러보면, mp3 파일을 넣을 수 있다. 그럼 넣어보자! 내가 좋아하는 노래를 넣었다.. 진짜 노래도 나오는게 왠지 신기했다.. 1분이 딱 되니 노래가 멈추고 위와 같은 창이 떴다. 그럼 이제 분석을 시작해보자. 일단 패킹은 안되어 있다. 올리 디버거로 열어보자! 일단 포함된 문자열을 봤는데.. 뭐가 없었다. 그래서 포함된 함수, 모듈을 슥 봤다. rtcMsgBox, 아까 본 1분 미리듣기라는 메시치를 출력하는 함수에 BP를 걸어주었다. 다시 mp3 넣고 1분동안 듣고.. 00404..
Easy Unpack (100)
Easy_UnpackMe.exe 파일과 ReadMe.txt 파일을 제공받는다. ReadMe.txt에는 문제가 있다. OEP를 찾으라고 한다. 먼저 exe 파일을 PEiD에 넣어 검증해봤다. 어떻게 패킹되어 있는진 알 수 없지만 일단 패킹되어 있는 듯하다. 일단 올리디버거로 열어보자. 코드 마지막 부분을 보면, 아래와 같이 의미없는 삽질 중이다. 이런 부분으로 바뀌는 부분 마지막을 보면 JMP 코드가 있을 것이다. 0040A1FB에서 JMP를 찾았고, 여기에 BP를 걸자. BP를 건 상태로 F9, 실행해서 여기까지 온 후 F7로 바로 다음 단계로 넘어가보자. JMP 명령어대로, 00401150으로 이동했다. 이 위치가 OEP이다. 이 상태에서 Ctrl+A하여 코드 분석을 실행하면 우리가 알기 쉬운 형태로 ..