목록Hack/CTF (19)
CIDY
import io import torch import base64 banner = \ ''' 8""8""8 8""""8 8 8 8 eeee eeeeeee eeee 8 " eeeee eeeee eeeee eeeee eeeee e 8e 8 8 8 8 8 8 8 8e 8 88 8 8 8 8 8 8 88 8 88 8 8 8eee 8e 8 8 8eee 88 8 8 8e 8 8e 8eee8e 8 8 8e 88 8 8 88 88 8 8 88 88 e 8 8 88 8 88 88 8 8 8 88 88 8 8 88ee 88 8 8 88ee 88eee8 8eee8 88 8 88 88 8 8eee8 88eee ''' try: print(banner) base64_string = input("Send the base64 enc..
어쩌다가 POX본선까지 가서 어쩌다가 1등까지 해버렸다. 1등할 줄 알았으면 팀 이름 좀 멋있게 지을걸 팀에서 포너블 담당이라 포너블 문제만 봤는데, 예선때는 괜찮은 문제가 별로 없었는데 본선에서는 그래도 나름 배워갈 게 조금 있었다. 그래서 잊기전에 정리해둘 겸 글을 써본다.. 모든 포너블 문제를 정리한 것은 아니고, 좋은 문제만 선별한 것도 아니고, 그냥 개인적으로 배울 부분이 있었던 것만 정리한 것이다. exploitMe // Compile: gcc -o excuseme excuseme.c -lseccomp #include #include #include #include #include #include #include #include void init() { setvbuf(stdin, 0, 2, 0..
int __cdecl main(int argc, const char **argv, const char **envp) { void *v4; // rax char ptr[12]; // [rsp+0h] [rbp-10h] BYREF int v6; // [rsp+Ch] [rbp-4h] BYREF setbuf(stdout, 0LL); do { while ( 1 ) { puts("menu:"); puts("1. leak"); puts("2. do stuff"); if ( (unsigned int)__isoc99_scanf("%d", &v6) != 1 ) { puts("oops"); return 1; } if ( v6 != 1 ) break; v4 = malloc(8uLL); printf("here's your lea..
흠.. 이런 게임 형식 문제는 둘중 하나다. 싸워 이기는건 둘째치고 취약점 찾아서 쉘따기 or 싸워 이기면 알아서 플래그 줌. 얘는 후자인듯. 일단 오픈소스라 맘은 편하다. clear()함수. 도대체 뭘 출력하고 싶은건지.. 저번에 NVODIA풀때도 이런 게 있었는데 오늘 그 의문을 해결했다. https://stackoverflow.com/questions/66927511/what-does-e-do-what-does-e11h-e2j-do What does "\e" do? What does "\e[1;1H\e[2J" do? I was looking for some alternative to system("cls") that works on MacOS and I found this: printf("\e[1;..
from balloon_tracking_lookup import get_status print "Welcome to your balloon order-tracking portal! Enter your tracking number here.\n" tracking_number = input(">>> ") try: print "Getting status for order #" + str(int(tracking_number)) + "..." except: print "Invalid tracking number!" print get_status(int(tracking_number)) 파이썬으로 짜여져 돌아간다. 파이썬으로 돌아가는 프로그램을 익스해본적은 없지만 요즘 ctf에 매번 등장하고 있어 더이상 회피할 수 ..
#include int main(void) { setbuf(stdout, NULL); //system("/bin/sh") puts("What would you like to post?"); char buf[512]; fgets(buf, 512, stdin); printf("Here's your latest post:\n"); printf(buf); printf("\nWhat would you like to post?\n"); fgets(buf, 512, stdin); printf(buf); printf("\nYour free trial has expired. Bye!\n"); //printf -> main return 0; } 코드가 매우 간단하다. 이것도 역시 fsb문제임. 근데 이전 문제보다 살짝 더..
#include int main_called = 0; int main(void) { if (main_called) { puts("nice try"); return 1; } main_called = 1; setbuf(stdout, NULL); printf("Lyrics: "); char buf[256]; fgets(buf, 256, stdin); printf("Never gonna give you up, never gonna let you down\nNever gonna run around and "); printf(buf); printf("Never gonna make you cry, never gonna say goodbye\nNever gonna tell a lie and hurt you\n"); r..
보호되어 있는 글입니다.