PHPunit 원격코드: eval-stdin.php 취약점

■ PHPunit 원격코드 – eval-stdin.php 취약점 공격

PHPunit 원격코드


‘PHPunit 원격코드’ 공격으로 리눅스 서버 load average가 기하 급수적으로(10 이상을 넘어 20까지도 올라가 있는 상태를 확인함.) 올라 갔다.

‘PHPunit’  : 프로그래밍 언어를 위한 유닛 테스트 프레임워크 / Sebastian Bergmann에서 개발함.

Sebastian Bergmann 에서 제공하는 펌웨어 설치


 

uknew.co 138.199.14.143 - - [25/Jan/2021:03:18:16 +0900] "GET //vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1" 200 500 "-" "python-requests/2.24.0"

 
1초 마다 2~3 개의 로그가 계속 로드되면서 서버 과부하를 일으킴.

□ PHPunit 원격코드 – eval-stdin.php  취약점 원인

확인된 취약점은 ‘eval-stdin.php’ 의 페이지 요청이 되면서 제대로 된 인증이 존재하지 않아 발생하는 것임.

□ eval-stdin.php 취약점 해결

PHPunit9를 사용하기 위해 다운로드 후 실행 가능하도록 설정. phpunit 지원 페이지에서 서버의 php 버전에 맞는 PHPunit 을 다운로드 받아 설치해야 함.
일부 접속은 막는 것을 확인했지만 전체를 막지는 못함. 이럴 때 서버의 기본 URL을 빈 칸으로 리턴하도록 설정하여 공격 방어가 가능함. 아이피 리턴 또는 메인 도메인 주소 등으로 리턴하는걸 추천함. 개인 서버일 경우. 퍼블릭 IP로 들어온다면 리턴 설정이 가능하지만.. 외부 IP면 방화벽 차단을 하고, 공용서버의 경우 일일이 도메인마다 설정이 어려울 수도 있다. 이렇게 해야 들어오는 공격을 막을 수 있음. 도메인보다는 IP 위주로 ServerName 값을 설정하는 걸 권장함.
이 글에 올린 내용과 서버에서의 해결이 어렵다면 개발자의 영역임.

구글 크롬 노트북(PC) google-chrome-notebook

Similar Posts

  • 리눅스 tmp 디렉토리: /tmp와 /var/tmp 차이

    리눅스 tmp 디렉토리는 임시 파일을 저장하기 위해 주로 /tmp와 /var/tmp 디렉토리를 사용합니다. /tmp는 일시적인 임시 파일을 저장하는 공간으로, 시스템이 재부팅 되면 대부분의 파일이 삭제됩니다. 따라서 빠른 입출력과 임시 작업에 적합하며, 주로 프로세스가 실행 중 생성하는 임시 데이터를 저장합니다. 반면에 /var/tmp는 재부팅 후에도 파일이 유지되는 임시 저장 공간입니다. 장기간 유지가 필요한 임시 파일이나 작업…

  • Nginx SSL 인증서 설치[CentOS 7]

    Nginx SSL 인증서 설치를 진행합니다. 목차■ PHPunit 원격코드 – eval-stdin.php 취약점 공격□ PHPunit 원격코드 – eval-stdin.php  취약점 원인□ eval-stdin.php 취약점 해결1. 인증서 신청하기 SSL 인증서는 30일 무료 SSL을 https://zerossl.com/ 사이트에서 신청했습니다. DCV 인증은 DNS 인증 방식으로 진행했습니다. 네임서버에서 CNAME 레코드를 설정합니다. 설정 후 인증 신청을 한 후 대기 시간이 소요됩니다. 인증이 완료되면 인증서…

  • [Ubuntu] 우분투 방화벽 UFW 설정

    우분투 설치 후 기본 방화벽은 UFW(Uncomplicated Firewall)입니다. iptables의 방화벽 설정보다 간소하게 개발된 ufw는 IPv4 또는 IPv6 호스트 기반 방화벽을 사용자 친화적으로 사용할 수 있는 것이 우분투 방화벽의 사용 목적입니다. 목차■ PHPunit 원격코드 – eval-stdin.php 취약점 공격□ PHPunit 원격코드 – eval-stdin.php  취약점 원인□ eval-stdin.php 취약점 해결 Ⅰ. 기본 구문 ✅ UFW 활성화 / 비활성화 /…

  • 리눅스 file 명령어

    리눅스 file 명령어는 그 파일이 어떤 파일인지 확인하는데 사용되는 명령으로 파일의 파일 타입을 확인할 때 사용합니다. 확인할 수 있는 파일은 텍스트 파일(ASCII 텍스트), 바이너리 파일, 그림 파일 및 동영상 등입니다. 단순하게 파일의 확장자만 확인하는 것이 아닌 파일의 매직파일(usr/local/magic)의 내용을 참조하여 파일 종류를 표시해 줍니다. magic 파일은 특정 파일의 형식을 식별하기 위한 정보를 담고…

  • 윈도우 서버 SSL 인증서 설치[2022 ver]

    LightSail의 윈도우 서버 SSL 인증서 설치를 진행해 보겠습니다. 윈도우 서버의 버전은 2022입니다. 테스트 SSL 인증서는 https://www.cyberssl.com/에서 Free 30일 도메인으로 신청해서 진행했습니. 목차■ PHPunit 원격코드 – eval-stdin.php 취약점 공격□ PHPunit 원격코드 – eval-stdin.php  취약점 원인□ eval-stdin.php 취약점 해결✅ 윈도우 서버 SSL 인증서 설치 🔲 DCV 인증 DCV 인증은 업로드 방식으로 진행합니다. 엑티브로 인증 진행…

  • yum 명령어 | 사용법 | 옵션 | yum-utils | 패키지 관리와 저장소 관리🔝

    레드햇 계열의 리눅스 배포판에서 사용하는 YUM 명령어는 패키지 관리(설치, 업데이트, 제거)를 하는데 사용하는 명령어입니다. yum은 기존 패키지 시스템인 RPM의 의존성 문제를 해결하기 위해 제공되는 도구이며, RPM에서 수행할 수 있는 많은 작업을 수행할 수 있습니다. 목차■ PHPunit 원격코드 – eval-stdin.php 취약점 공격□ PHPunit 원격코드 – eval-stdin.php  취약점 원인□ eval-stdin.php 취약점 해결 ✅ YUM 명령어 yum…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 0   +   1   =