본문 바로가기

스터디122

[SECURITY KOREA 2011] 중고생 해킹방어대회 LEVEL5 문제풀이 이번 문제는 악보를 해석하는 문제이다.(?) 구글에 악보 검색해도 안 나오길래 악보 암호 라고 검색해보니깐 바로 최상단에 떳다. 마타하리의 악보암호.hwp 마타하리의 악보암호 마타하리는 1차 대전 때 악보에 음표를 이용한 암호로 스파일 활동을 하였으나, 큰 성과가 나타나지 않자 음모에 빠져 결국 체포되고 사형을 선고받게 됐다. 악보가 생긴 이후 몇몇 작곡가는 악보에 자기만 아는 문자 암호를 사용하곤 했다. 7음계를 알파벳으로 치환시켜 사랑하는 연인의 이름을 넣거나 한 손의 특정한 손가락이 치는 음만으로 의도를 전달하기도 했다. 마타하리의 경우에는 2개의 원판으로 구성된 암호표를 그린 다음 바깥 원에 알파벳을 위치시키고, 작은 원에 음표를 대응시켜 문장을 작성했던 것이다. 이 암호는 음악에 무지한 사람을 .. 2011. 7. 22.
[SECURITY KOREA 2011] 중고생 해킹방어대회 LEVEL4 문제풀이 3 번 문제는 매우 더러운 문제라고 합니다. 새벽이고, 시간도 많이 없는 관계로 넘어가겠습니다. 드디어 4 번 문제에서 리버싱 문제가 나온것 같네요, 문제파일 인데 압축을 풀려면 먼저 비밀번호를 알아야됩니다. zip 알집 비번 으로 검색하다가 바로 암호를 알아내는 프로그램을 구했다. 비밀번호는 sK2! 이였다. 비밀번호로 압축을 풀고 들어가보면 오류가 난다. 꺼림칙해서 헥스에디터로 열어보았는데 PK 로 시작한다. 검색해보니깐 PK 는 ZIP 파일이라고 한다. 내 넷북은 원래 숨김파일 보이기로 체크되어 있는데 폴더를 다 살펴보니 doc 폴더에 SecureKorea2011.exe 파일이 숨김파일로 존재하고 있었다. (이건 뭐... 해킹대회 맞냐 -_-;) 올리디버거로 열고 스트링으로 한번 확인해보는데 CMP.. 2011. 7. 22.
[SECURITY KOREA 2011] 중고생 해킹방어대회 LEVEL2 문제풀이 이번 문제는 QR 코드 파일이 있었다. 코드게이트 때 사용한 QR 코드 리더기 프로그램이 있었는데 기억이 안 나서 아이팟터치로 스캔 후 네이버 메일에 바로 전송하였다. security 흠.... 두 번째 문제서부터 이상한 트리비알 문제가 나왔다. 이것저것 시도해보다가 생각난게 이진수가 생각났다. 그래서 바로 시도해보았다. 먼저 검정색을 0 으로 하고, 하얀색을 1 로 해봤는데 값이 이상하게 나오길래 검정색을 1 로 하얀색을 0 으로 하고 풀어봤다. 1001000 - 72 1000001 - 65 1001110 - 78 1010011 - 83 1000101 - 69 1001001 - 73 뻔하네, 아스키코드로 바꿔보면 H A N S E I ㅎ..한세? 한세로 검색해보니깐 한세사이버고등학교가 나왔다. 아마도 .. 2011. 7. 22.
[SECURITY KOREA 2011] 중고생 해킹방어대회 LEVEL1 문제풀이 SECURITY KOREA, 2011 중고생 해킹방어대회인 이 대회의 문제풀이를 하려고 합니다. 문제는 전부 구하지 못했지만 일단 LEVEL8 까지 문제를 구한 상태 입니다. 참고로 저도 참가신청 했는데 하필 이 날이 수학여행 보고서 마감일자라 다른 친구들이 다 못하겠다 그래서 어떤 성실한 친구와 함께 도서관에서 자료를 수집하고 집에가서 보고서 만드느라 문제만 보고 나왔습니다. 게다가 그 날 새벽 4시에 취침을.. ( 1등 하면 약간의 보장이 있길래.. 열심히 했는데 ㅠㅠㅠ) 아쉬움을 달래고자 한번 문제를 풀어보고자 합니다. ㅎ 일단 LEVEL1 부터 문제풀이를 시작하겠습니다. 문제 파일이다, 물론 저게 진짜 문제파일일리는 없지만 PRX 확장자에 대해 검색해보았더니 PSP 의 플러그인에 쓰인다고 한다. .. 2011. 7. 22.
SmashTheStack : level3@io.smashthestack 문제풀이 현재 팀에서는 Level4 를 풀고 있다. 미리미리 풀면 좋겠지만 시간이 많지도 않고 과반수가 문제풀이를 작성해야지만 넘어가는 수준이라 여유있게 공부할 수 있다. level3@io:/levels$ ./level03 Segmentation fault level3@io:/levels$ ./level03 aa Address of hmm: 0x804847f 프로그램을 그냥 실행하면 세그먼폴트가 뜨고 인자를 넘겨주면 어드레스가 출력되는데 고정 어드레스인 것 같다. level3@io:/levels$ ./level03 aa bb Address of hmm: 0x804847f level3@io:/levels$ ./level03 cc dd Address of hmm: 0x804847f 소스가 주어져 있으니 소스를 보면서.. 2011. 7. 21.
SmashTheStack : level2@io.smashthestack 문제풀이 지금 할게 매우 많다만 계속 미루고 나면 할게 산을 이룰것같아서 하나하나 빠르게 하고 넘어가려고 한다. level2@io:/levels$ ./level02 source code is available in level02.c 프로그램을 실행하면 level02 소스코드를 확인하라는 메세지가 뜬다. level2@io:/levels$ cat level02.c //a little fun brought to you by bla #include #include #include #include void catcher(int a) // 쉘 획득! { setresuid(geteuid(),geteuid(),geteuid()); printf("WIN!\n"); system("/bin/sh"); exit(0); } int ma.. 2011. 7. 20.
SmashTheStack : level1@io.smashthestack 문제풀이 제 개인사이트에 작성한 문서라 문서 말투가 일기체입니다. 모두 수정할 수 없기에 이해해주시고 봐주시면 감사하겠습니다 ------------------------------------------------------------------------------------------- SmashTheStack 워게임은 제목을 봐서는 Stack 을 공격하는 스택 버퍼 오버플로우와 관련이 많다고 생각하겠지만 여러 분류로 나뉘어져 있는것 같다. 내가 풀고있는 IO 이 서버에서는 FTZ 초기레벨과 같이 기본 해킹 문제를 다루고 있는것 같다. 나의 숙적, 버퍼 오버플로우와 대면할때는 달라져 있겠지. 이미 문제를 풀어 팀에서는 과제로 제출했지만 좀 더 디테일하게 분석을 해 올릴 생각이며, 내가 민망하게끔 기초스러운것이라.. 2011. 7. 20.
[리눅스갤] 공유(동적)라이브러리 와 정적라이브러리 출처 - http://blog.naver.com/ddrkcodz/10069875361 ---------------------------------------------------------------------- 공유(동적)라이브러리와 정적라이브러리 (Dynamic Linked Library and Static Linked Library) 공유 라이브러리(Dynamic Linked Library) 정확히 동적 연동 라이브러리라고 하지만, 라이브러리를 하나의 메모리 공간에 맵핑한 후, 여러 프로그램에서 공유하여 활용하므로 공유라이브러리 라 하기도 한다. 그만큼 메모리, 용량 절약 차원의 장점이 있으며 라이브러리 업데이트 등의 유연성을 가지고 있다. 하지만, 라이브러리 의존성에 따른 관리가 필요하다. [dd.. 2011. 3. 20.
[리눅스갤] 리눅스에서 라이브러리 만들기 출처 - http://blog.daum.net/jjiyong/13407084 ------------------------------------------------------------------------------- 1. 소개 : 프로그램을 제작하는 과정 근래의 프로그램 제작 과정은 오랜 시간동안 고통받으면서 쌓아올려진 프로그래머들과 디자이너들의 노력의 산물이다. 이러한 프로그램 제작 과정은 다음과 같은 순서를 따른다. 우선 텍스트 편집기로 고급 언어를 사용한 소스 코드를 만든다. 매우 큰 프로그램 같은 경우는 하나의 파일에 담기 매우 힘들기 때문에 소스 코드 자체가 기능적 모듈별로 그 기능을 수행하는데 적합한 프로그래밍 언어가 다를 수 있기 때문에 앞에서 나뉘어진 소스 코드들이 다 같은 프로그래밍 .. 2011. 3. 20.