반응형 pwnable15 [Toddler's Bottle] passcode 오랜만에 putty로 진입할 수 있는 문제가 나왔다. 컴파일 에러 어쩌구 하는 거 보니까 컴파일에 관한 문제인듯?#include #include void login(){ int passcode1; int passcode2; printf("enter passcode1 : "); scanf("%d", passcode1); fflush(stdin); // ha! mommy told me that 32bit is vulnerable to bruteforcing :) printf("enter passcode2 : "); scanf("%d", passcode2); printf("che.. 2024. 5. 11. [Toddler's Bottle] random 몬데...?#include int main(){ unsigned int random; random = rand(); // random value! unsigned int key=0; scanf("%d", &key); if( (key ^ random) == 0xdeadbeef ){ printf("Good!\n"); system("/bin/cat flag"); return 0; } printf("Wrong, maybe you should try 2^32 cases.\n"); return 0; }k.. 2024. 5. 11. [Toddler's Bottle] mistake #include #include #define PW_LEN 10 #define XORKEY 1 void xor(char* s, int len){ int i; for(i=0; i s[i] ^= XORKEY; } } int main(int argc, char* argv[]){ int fd; if(fd=open("/home/mistake/password",O_RDONLY,0400) printf("can't open password %d\n", fd); return 0; } printf("do not bruteforce...\.. 2024. 5. 11. [Toddler's Bottle] shellshock mistake와 같이 1점짜리 문제다. 우선 코드를 보자#include int main(){ setresuid(getegid(), getegid(), getegid()); setresgid(getegid(), getegid(), getegid()); system("/home/shellshock/bash -c 'echo shock_me'"); return 0;}모르는 것을 정리해보자setresuid(real uid, effective uid, saved uid) 를 변환하는 함수이다.unprivileged process - 각 UID를 현재 프로세스의 각 UID로 설정(=수정불가)privileged processes(=CAP_SETUID 권한보유) - 각 .. 2024. 5. 11. 이전 1 2 3 4 다음 반응형