목록CTF (48)
Sechack
요즘에 ctftime에서 열리는 해외 CTF를 오랫동안 안하기도 했고 나의 개인 능력이 궁금하기도 해서 오랜만에 ctftime에서 여는 CTF를 열심히 뛰어봤다. 원래는 C4C에서 뛰지만 휴식기이기도 하고 혼자서 어디까지 가능한가 테스트해보고도 싶어서 혼자서 뛰었다. 주 분야인 포너블도 없는 CTF였는데 솔플로 꽤 많이 푼것 같다. 주분야 문제가 없는 CTF였는데도 혼자서 top40을 뚫었는데 나름 만족스럽다. 이런 메일도 왔다. ㄷㄷ Crypto A Sheep Jumps Over Fence 0x56455a7059574e7459584a685a576c756557646f59565637633364765a57647664474e305a48427965584e4464476c6c62584e6c6257463165574e..
이번 코게는 뭐.. 어차피 1, 2, 3등이 정해져 있어서 딱히 스코어나 순위에 신경쓰지 않고 재밌게 즐겼다. 점수 올리려면 삽질하면 무조건 풀리는 웹을 했어야 했지만 리버싱에 할만해보이는 vm문제가 있길래 삽질하면 충분히 풀 수 있는 웹 2 ~ 3개를 던지고 메이저 대회에서 처음으로 리버싱을 잡아봤다. 덕분에 등수는 10위권에도 못드는 엄청난 나락으로 갔지만 어차피 이번년도에는 수상 못하는 대회라서 미련은 없다. 뭐 즐겜한 대회인 만큼 수상보다는 어떤 재밌는 문제가 나올까에 더 초점을 맞추고 있었어서 전날에도 별로 신경을 안쓴 탓인지 대회장에도 1시간 늦게 가서 사진은 많이 못찍었다. 이번에는 코엑스에서 본선을 진행했는데 대충 본선장 사진이다. 밥도 Wacon이나 CCE랑은 다르게 김밥을 줬는데 내가 ..
올해 CCE에 학생부가 처음 생겼다. 그리고 준우승을 하게 되었다. 숙소를 제공해줘서 맘에 들었고 대회 끝나고는 밤새 숙소에서 노가리 까면서 놀았다. 수련회나 수학여행 느낌 나서 좋았다. 밥은 WACON때와 똑같이 도시락으로 줬는데 WACON때가 훨씬 맛있었다. 상장 밑에 보면 2021년이라고 오타 나있는데 수정해달라고 요청할 생각이다. 숙소앞에 귀여운 고양이가 있길래 얘도 찍어봤다. 큰대회에서 상받는건 처음인데 기분이 매우 좋다. 달달하다. https://www.boannews.com/media/view.asp?idx=111110 국정원 주최 ‘2022 사이버공격방어대회’, The Duck팀 종합우승 국가정보원이 대구광역시, 경상북도와 함께 주최하고 국가보안기술연구소가 주관한 ‘2022 사이버공격방어대..
오랜만에 H4C에서 CTF를 제대로 뛰어봤다. 이번에 팀원 모집 하면서 TeamH4C내부에 있는 CTF팀인 C4C에도 잘하시는 분들 많이 오셔서 좋은 성과를 낼 수 있었다. 레이팅 47.77짜리 CTF라서 어려울줄 알았는데 생각보다 문제가 쉬워서 문제 많이 풀었다. 주 분야인 포너블도 올클 했다. write up은 내가 푼 문제만 작성할 것이다. rev/sequence _BOOL8 __fastcall read_numbers(__int64 a1) { char s[264]; // [rsp+10h] [rbp-110h] BYREF unsigned __int64 v3; // [rsp+118h] [rbp-8h] v3 = __readfsqword(0x28u); printf("input: "); fflush(_bss_..
와콘 본선장인데 웅장했다. 장소는 매우 마음에 들었다. 와콘 후기 요약 1. 반드시 자기 메인 분야 먼저 할 수 있는데까지 다 해두고 다른 분야 건들이자. 귀찮아 보인다고 다른분야 먼저 건들다가 메인 분야 풀 시간이 부족해질 수 있다. 2. 예선은 살살해도 본선때는 풀타임 빡겜 뛸 각오 하자. 한번 틀어진 집중력은 쉽게 돌아오지 않는다. 3. 대회 성과는 실력 외에도 문제 운이나 컨디션, 시간 분배 등 여러가지 외부 요인으로 인해 예상보다 안좋게 나올 수도 있다. 이럴때 멘탈이 매우 크게 흔들리겠지만 실력이 문제인지 다른게 문제인지는 본인이 가장 잘 알고 있다. 다음에 잘하면 되니까 멘탈 깨질 필요는 없다. 4. 물질적으로 얻은건 없지만 실력적으로 얻은건 예선 본선 모두 매우 많은것 같다. 가장 큰 CT..
대회때 하나만 해결하면 바로 rop할 수 있었는데 그걸 해결 못해서 못풀었다. 너무 미련이 남아서 대회 끝나고 막혔던 부분만 다른분 아이디어 참고해서 다시 풀어봤다. 그렇게 어려운 문제도 아니었고 막혔던 부분만 해결했으면 바로 풀 수 있었는데 너무 아쉽고 미련이 많이 남는다. 그래도 턱걸이로 본선 갔으니까... 다행이긴 하다. 대회 당시 https://irrlicht.sourceforge.io/forum/viewtopic.php?f=7&t=52785&sid=82d189da1e8d466aea667d5958334975 [fixed]Stack buffer overflow in MD2 Parser - Irrlicht Engine You discovered a bug in the engine, and you ar..
이번에도 포너블 올클 했다. 레이팅 23.36인데 포너블은 그렇게 어렵진 않았다. 13등 GG 올클 GG 같이 참여했던 분들 수고하셨습니다. access 이건 자고 일어나니까 같은 팀 형이 풀어놓은 문제다. https://www.facebook.com/profile.php?id=100009136532072 로그인 또는 가입하여 보기 Facebook에서 게시물, 사진 등을 확인하세요. www.facebook.com 본인이 페북 링크 올리라해서 올린다. pass.txt읽어서 스택에 저장한다. 아마 저게 플래그 같다. 그리고 fsb터지니까 그냥 스택에 있는 플래그 읽어오면 된다. flag : BtSCTF{@Fin3@cc3$$} shellcode int __cdecl main(int argc, const cha..
이번엔 데프콘에 참여해보았다. 100솔버가 넘는 쉬운 날먹 문제긴 했는데 다른 문제는 접근조차 제대로 되지 않았다. __int64 __fastcall main(int a1, char **a2, char **a3) { unsigned int v3; // er12 void *v4; // rax const void *v5; // r15 unsigned int v6; // er14 unsigned int v7; // esi unsigned int v8; // ebx __int64 v9; // rbp void *v11; // rax void (*v12)(void); // rax char v13; // [rsp+Bh] [rbp-3Dh] BYREF unsigned int v14[15]; // [rsp+Ch] [rbp..
포너블은 커널빼고 다 풀었다. 레이팅 24.19짜리 CTF인데도 이정도 푼거 보면 포너블은 이제 나도 CTF에서 어느정도 경쟁력을 갖춘것 같다. 리버싱이나 웹해킹, 크립토 등 다른 분야도 빨리 공부해놔야 나중에 수상 노리고 대회 뛸때 팀 대회가 아닌 개인전에서도 활약할 수 있을것 같다. Codechainz void __noreturn loop_de_loop() { char s[10]; // [rsp+Eh] [rbp-12h] BYREF int v1; // [rsp+18h] [rbp-8h] BYREF char v2; // [rsp+1Fh] [rbp-1h] v1 = -1; v2 = 0; while ( 1 ) { while ( 1 ) { menu(); fflush(stdout); input_int(&v1); i..
하나의 서비스를 exploit하는 일반적인 포너블과는 다르게 바이너리의 특정 부분이 계속해서 바뀌고 바뀐 부분을 자동으로 읽어내서 여러번 exploit하는 AEG문제이다. 디스어셈블 결과나 opcode에서 필요한 부분을 읽어와서 exploit에 적용해야 하므로 약간의 코딩 능력이 필요하다. 문제에서 주는 nc주소에 접속해보면 hexdump로 출력한듯한 내용을 준다. 그리고 60초 내에 입력을 줘야하고 프로그램의 exit code를 주어진대로 만들어야한다. 저걸 받아와서 IDA로 분석해보자. 프로그램 구조는 간단하다. 그냥 fsb터진다. exit_code를 원하는 값으로 덮으면 된다. 문제는 permute함수인데 안에 들어가보면 이런식으로 함수들을 순서대로 호출한다. permute라는 이름만 봐도 알 수 ..