목록전체 글 (94)
Sechack

CTF때 처음으로 제대로 잡아본 커널 문제이다. 원래였으면 CTF에 v8, kernel나왔으면 던졌을테지만 BoB에서 커널 관련 강의 듣고 LINE CTF 2021에 나왔던 pprofile이라는 커널 문제를 풀어보면서 커널에 나름 자신감이 붙은 상황이었다. 대충 이렇게 모듈을 등록하고 있고 fops구조체에는 write와 ioctl이 선언된 상황이다. ioctl에선 aar이 가능하고 write에서 bof가 터진다. 전형적인 kernel rop인데 kernel base leak과 canary bypass가 관문이었다. kernel base leak은 LINE CTF 2021 pprofile문제와 비슷한 이이디어로 할 수 있다. copy_to_user함수는 복사 실패한 바이트 수를 반환하는데 invaild한 ..

작년에 떨어졌던 BoB 12기에 합격하게 되었다. 트랙은 취약점분석 트랙이다. 작년에 나를 떨궜던 멘토님이 이번에도 면접관으로 계셔서 이번에는 어떻게 될지 확신을 할 수 없었는데 다행히 붙여주셨다. 열심히 해서 top10해야겠다. 서류전형 서류는 작년에 썼던걸 그대로 재탕했다. 원래 조금 수정하려고 했었는데 서류 제출기간 얼마 안남았을때 코로나 비슷한 뭔가에 걸려가지고 침대에만 있다가 그대로 제출하게 되었다. 서류 문항은 총 7개가 있고 각 문항당 1000자 이내이다. 총합 7000자 근접하게 써야한다. 자기소개 자기소개는 그냥 초등학교 6학년때 처음 C언어 접한 이후 해킹에 관심을 가지고 드림핵 알게되고 대회 나가고 이런 인생 스토리를 그대로 적었다. 뭔가 나를 소개한다는 느낌보다는 경험을 썰로 푼다는..

예선 4등했다. 1등이 영국사람인거같은데 너무 압도적으로 웹 0솔짜리를 풀면서 점수를 올렸다. 더 강해져야겠다. cryptGenius #!/usr/bin/python3 from hashlib import md5 from Crypto.Cipher import AES from base64 import * from secret import secret_key,flag BS = 16 KEY = secret_key FLAG = flag pad = lambda s: s + (BS - len(s) % BS) * \ chr(BS - len(s) % BS) unpad = lambda s: s[:-ord(s[len(s) - 1:])] def encrypt(raw): raw = pad(raw) cipher = AES.new..
보호되어 있는 글입니다.

한달전인가 부터 조금씩 만들던 워겜이다. 뭔가 문제 더 채워서 공개하고 싶었는데 그냥 빨리 알리고 싶어서 지금 공개했다. 모든 문제는 순수 자체제작이며 앞으로 아이디어 떠오를때마다 문제를 계속해서 만들 예정이다. 언젠간 HackCTF처럼 지금은 사라졌지만 문제가 많아지고 사람들에게 많이 알려지길 기대하고 있다. 아 그리고 Bit VM이라는 리버싱 문제 퍼블따고 Sechack#1869 여기로 Discord DM주면 원하시는 치킨 한마리 공짜로 드리겠습니다!! :) 나름 야심차게 만든 문제라 풀어달라고 치킨까지 거는 모습... https://ctf.sechack.kr SECGAME Sechack's wargame. Happy hacking~~ ctf.sechack.kr 많이 풀어주세요!!
보호되어 있는 글입니다.

원래 안하려고 하다가 새벽에 잠깐 봤는데 어쩌다보니 빡겜하게 되었다. 한국 7등 GG 글로벌 순위는 50등이다. 한국 top3안에 들어야 아시아 대표로 선발될 가능성이 생기는데 언젠가 한번 해보고싶다. 중간에 참여한거라 24시간 대회인데 15시간 새벽 3시부터 오후 12시까지 빡겜했다. 시간부족으로 웹을 못봤는데 시간 좀 더 있었으면 웹 한두개 더 풀었을것 같긴 하다. Merkle Hellman #!/usr/bin/env python3 import random import binascii def egcd(a, b): if a == 0: return (b, 0, 1) else: g, y, x = egcd(b % a, a) return (g, x - (b // a) * y, y) def modinv(a, m..

일단 이 데스매치의 시작은 잡담에서 시작되었다. 크립토핵 올클 개고수 soon_haari랑 크리스마스 CTF팀 디코서버에서 잡담하던 중에 살빼야된다는 얘기가 나오고 (키도 크고싶다.) 운동을 꾸준히 하려면 무언가 동기가 있어야 한다고 했다. 그러다가 재미난 아이디어가 나왔고 결국엔 한다고 했다. 근데 둘로 만족을 못했는지 주변 사람들까지 꼬셔서 결국에는 6명이 있는 톡방이 파지게 되었다. 결국엔 룰이 이렇게 정해졌고 줄넘기 데스매치가 시작되었다. 하루라도 빠지면 내 소중한 5만원이 날아갈 수 있기 때문에 열심히 운동을 하게 되는 동기부여가 된다. 진짜 아이디어 잘낸거같다. 그리고 오늘은 2월 8일이다. 1000개 하고와서 글쓰는건데 솔직히 4년전 떠올리면서 1000개 안쉬고 그냥 7분컷 낼줄 알았다. 근..
RSA는 공개키 암호화 알고리즘이다. 기존의 고전 암호나 블록 암호는 암호화와 복호화에 같은 키가 사용되는 대칭키 암호이지만 RSA는 공개키로 누구나 암호화 할 수 있지만 복호화하려면 비밀키가 필요한 비대칭키 암호화 알고리즘이다. 대칭키 암호화 알고리즘은 기본적으로 암호를 사용하는 사람과 키를 교환해야 한다. 이 과정에서 키가 외부로 유출될 가능성도 있고 사용하는 사람이 많아질수록 키를 많은 사람과 교환해야 한다. 하지만 비대칭키 암호화 알고리즘은 이러한 키 교환이 필요하지 않다. 상대방에게는 공개키만 주고 상대방이 공개키로 암호화한 데이터를 전송하면 가지고 있는 개인키로 복호화하면 된다. 키를 공유할 필요가 없으므로 대칭키 암호화 알고리즘에 비해서 안전하고 간편하다. RSA는 공개키를 소인수분해해서 비..