본문 바로가기

shayete

[Toddler] fd 요즘 플스4 파이널판타지7 리메이크 즐긴다고 문제를 안 풀고 있는데; 뭐라도 써야지 싶어서 쉬운 문제를 풀어봤다. (파이널판타지7 개꿀잼 ㅜㅠㅠㅠ) 너무 쉽다.. 무려 29458명이 푼 문제이다. 와우! 이거 못풀면 해킹은 꿈도 꾸지 말라는 것 같다. 1. 코드흐름 ==================================================== 단순하다. 1. argv 값을 하나라도 넣어주지 않았다면 "pass argv[1] a number"가 출력된후 프로그램이 종료된다. 2. argv[1]에 입력한 값을 정수로 바꾼후 - 0x1234 한 뒤 fd에 넣는다. 3. read 함수를 통해 buf 배열에 우리가 입력한 값을 넣어준다. 4. buf에 들어간 값과 LETMEWIN을 비교한 후, 값.. 더보기
[Grotesque] asg 쓸까말까 고민하다가.. exploit 코드 전체는 공개안하더라도, 일부분 공개하면서 설명하는건 괜찮지 않을까?? 하고 글을 쓴다. Write up 작성 목적은 pwnable.kr 점수 올리라는게 아닌, 순수 방문자의 공부에 도움이 되도록 방향을 잡아주기 위함이다. 이 글을 시작으로 write up 작성 기준, 틀 등을 마련하여 향후 관련 게시글에도 이를 적용할 수 있도록 잘 써야겠다 싶다. ========================================================================================== 글을 시작하기에 앞서 당부 드린다. 이 글은 수많은 힌트, 풀이 방법이 포함되어 있으므로, 본인의 실력 증진을 원한다면 삽질을 충분히 한 뒤에 글을 읽어주길.. 더보기
[Grotesque]asg (2020.08.09 클리어) toddler 문제인 asm에서 "어셈 짤줄 알아? 그럼 asg 한번 도전해보던가." 라는 도전욕구를 불태우는 문구를 보고 나서 곧바로 asg 문제를 풀게 되었다. 저번주엔 내내 출장이라 볼 시간이 없었고.. 어제 광주와서 어디 나가지 않고 방에 콕 박혀서 문제를 봤다. asg.c 코드를 잠깐 보고나서 'asm이랑 비슷하네??? 뭐.. 하루면 풀지 않을까??' 라는 가벼운 생각을 했다가 이 문제를 저녁 11시까지 붙잡게 됐고, 결국 못풀었다. ㅋㅋㅋㅋㅋㅋㅋ 오늘 대전가서 시간되면 문제를 이어서 풀어야지 싶다. 어제 저녁 마지막으로 돌린 파이썬 코드, 쉘스크립트이다. " asm이랑 차이점은 쉘코드 필터링하고.. mmap 주소가 랜덤으로 지정되네? 사용자가 올리는 쉘코드도 랜덤 offset에 따라 다르게 옮.. 더보기
[Toddler] asm 회사간 후로 일적응하고 논문쓰고 웨이트 트레이닝하고 책보고.. 정신없이 보내다가, 요즘 여유가 생겼다. (전부 코로나 덕분) 논문은 최근에 작성 끝났구.. 운동은 반강제로 못하구.. 집컴은 거의 9년된 데스크탑이라 롤이 잘 안돌아간다 ^^ 여러가지 사정으로 주말에 시간이 꽤 많이 생겼는데, 생각날 때마다 wargame 풀면서 놀기로 다짐했다. 먼저 시작은 pwnable.kr. 여기 사이트는 정말 친절하게도 시스템해킹을 배우려는 초보, 중수 해커들에게 다양한 해킹 기술을 습득하도록 길을 알려준다. 무슨 느낌이냐면.. '넌 이걸 풀기 위해 삽질해야해. 겁나게 많이. 답을 꽁꽁 숨겨놨으니 알아서 찾아봐' 가 아니라 '넌 이걸 풀기 위해 삽질해야 해. 근데 어떻게 풀지 모르겠어?? 그런 너를 위해 내가 문제 중.. 더보기
KBS 뉴스9에 잠깐이지만 얼굴이 나왔네요!! '-' 저에게도 이런 날이 올 줄은 몰랐습니다 ㅋㅋㅋㅋ 뉴스에 나오다니.. 뉴스에!! ㅎㅎ. 짧지만 좋았따 http://news.kbs.co.kr/news/view.do?ncd=3472899 동영상은 인터넷 익스플로러에서만 볼 수 있구요, 58초부터 보시면 됩니다 ps. 이 외에도 (저희 교수님 덕분에) 연합뉴스, SBS, XX조선, ... 등등 한 7~8번 인터뷰 더 한 것 같은데 관련 글은 작성 안하도록 하겠습니돠. 더보기
시큐인사이드 2016 행사를 준비하면서. 오늘로써 시큐인사이드 행사 준비가 다 끝났습니다. 현수막 제작한다고 여기 저기 업체에 연락해서 ai 파일 다 끌어모으고, 현수막 타이틀, 해커수첩에 들어갈 것들도 정리하고 (이건 뭐.. 행사업체에서 또 따로 정리하시긴 했지만;;) 점심식사 준비하려고 국제관 식당에 전화해서 예약하고, 차량출입허가증, 상금보드, 등록대, 시큐인사이드 행사를 위한 장소 다 알아보면서 행사장소에 대해 자리 배치를 어떻게 할지도 생각해보고. 공문 작성에 등록, 참가확인서 작성에,, 견적서 확인에.. 이 외에도 여러가지를 어우. 혼자서 이걸 다 하려니 일주일이 정말 순식간에 사라졌네요. 시큐인사이드 준비를 하면서 여러가지 정말 많이 배웠습니다. 행사를 준비하는 모든 분들께 존경을 표합니다. (_ _) 이번주 일요일, 고려대학교 인.. 더보기
[Lv.2] Gremlin Gate에 이어, Gremlin을 풀이합니다. Login : gremlinpass : hello bof world gremlin 환경에 주어진 cobolt.c 코드입니다. 1번과 다른점은, 버퍼(배열)가 작네요. 이게 의미하는 건 기본적으로 redhat에서 동작하는 system("/bin/sh") 쉘코드가 24바이트인데 이걸 다 넣지 못한다는 거에요. 즉, 버퍼에 쉘코드를 삽입하는 방법은 쓰지 못하게 되었습니다. 하지만, 이 redhat 환경에서는 아무런 보호기법이 걸려있지 않기 때문에 스택의 어느곳이든 값을 넣을수만 있다면 쉘코드 실행이 가능합니다. 가령, argv[] 나 환경변수 영역에 값을 넣어도 말이지요. (이 두 군데는 저희들이 임의로 값을 input할 수 있는 곳이고 스택의 주소값이 바뀌지 않.. 더보기
[Lv.1] Gate LOB Redhat은 보호기법이 적용되어 있지 않은, 취약점이 무수히 많이 존재하는 환경입니다. 이 환경에서 Gate 문제는 기본적인 bof 취약점만 가지고 있기 때문에 쉘을 얻어낼 수 있는 방법 또한 다양합니다. 이걸 다 적기에는 제가 너무 힘들기 때문에 문제 풀 때마다 알려드리고 싶은 게 생각나면 다른 방법으로도 접근하는 방법을 보여드리고자 합니다. Login : gatepass : gate Gate 문제입니다. 코드를 보아하니 아주 대놓고 stack corruption을 일으켜주라고 하네요. 심지어 dep, aslr도 없기 때문에 스택에 쉘코드를 올려놓아 쉘을 띄우는 방법과 RTL, 환경변수에 쉘코드를 올려놓는 방법, argv[2]에 쉘코드를 올려놓는 방법, ... 등등 여러 방법이 있습니다. 우선.. 더보기
8. Core Dump Analysis ( gdb ) 강의 중 코어 덤프를 이용해 분석하는 방법을 알고 싶다는 분이 계셔서 저도 한번 공부해볼겸, gdb를 이용한 Core Dump 분석방법을 포스팅합니다. 이 강의는 거의 그림으로 대체될 것 같은 느낌이 물씬 드네요 ㅋㅋㅋ;gdb 외에도 objdump로 분석하는 방법이 있지만, 아직 제가 거기까지는 공부 못했네요. 이 글 마저 포스팅하고 공부한 뒤 추가로 올리겠습니다. 그러합니다. 제가 크기가 작은 바이너리를 분석해서 where이나 backtrace를 했을 때에 저런 결과만 나왔는데, 크기가 큰 바이너리를 분석할 때, 각 frame 별로 (#0, #1, #2 ...) 정보를 확인할 수 있습니다. frame 0, frame 1, frame 2처럼 명령어를 적어주시면 그 프레임에 관련된 정보가 출력됩니다. 이 .. 더보기
7. Use After Free (uaf, uaf.c 바이너리, 코드 요청하셔서 올려드립니다.) 8번째 강의는 Use After Free입니다. 말 그대로 사용한 후 해제했을 때 취약점이 일어날 수 있습니다. 정확히는 heap space에서 alloc된 공간을 free하고 reuse할 때에 일어날 수 있는 취약점입니다. 이 use after free는 browser exploit을 할 때에 자주 쓰이는 기법인데 heap spray와 병행해서 사용합니다. 여튼, use after free에 대해 간단한 원리정도? 설명하도록 하겠습니다. 1. Heap? use and free 스택과 힙은 이런 특성을 가지고 있습니다. 스택은 정적으로 할당되기 때문에 컴파일 시 미리 스택에 공간이 할당되어 있습니다. 그렇기 때문에 스택에 생성될 배열 사이즈.. 더보기