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

공정위 광고 문구 Ver 3.1
공정위 광고 문구 Ver 3.2(모바일 전용)

■ 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

  • 셸 스크립트: 셸 들여쓰기 및 확장 옵션명[long 옵션명]

    명령어를 길게 사용하다 보면 여러 명령어 줄을 넘겨서 입력하는 경우가 발생합니다. 가독성을 높이기 위해 명령어를 문장 연결 하는 백슬래시(\)를 사용하여 셸 들여쓰기를 할 수 있습니다. 1. 셸 들여쓰기: 백슬래시(\) 백슬래시-라인피드 문자열이며 LF(Line Feed)는 커서를 한칸 아래로 이동하여 새로운 라인을 추가합니다. 2. 확장 옵션명: long 옵션명 보통 명령어 입력 시 축약형을 사용합니다. 셸 스크립트…

  • [Ubuntu] apt 명령어 | apt-get 명령어 사용법과 차이점

    Red Hat 계열 리눅스에서는 패키지 관리를 위해 dnf 명령어를 사용하며, Debian 계열에서는 apt 명령어를 사용합니다. Ubuntu와 같은 Debian 기반 배포판에서는 두 명령어가 모두 사용 가능하지만, 목적과 사용 방식에 따라 약간의 차이가 있습니다. 이 글에서는 apt와 apt-get의 차이를 간단히 비교하고, apt 명령어에서 자주 사용하는 명령어 예제를 함께 정리해보겠습니다. ✅ apt & apt-get 명령어 차이점…

  • VirtualBox 윈도우 2016 서버 설치 | 한국 언어팩 변경

    VirtualBox로 윈도우 2016 서버 설치를 진행해 보겠습니다. 설치를 위해 2016 IOS를 평가센터에 접속하여 무료 체험판 등록 후 다운로드를 진행합니다. ✅ VirtualBox ISO 설정 VirtualBox에서 다운로드 받은 IOS 파일로 가상 머신을 생성합니다. ✅ 윈도우 2016 서버 설치 진행 로딩 화면 이후에 언어 선택 후 다음으로 넘어갑니다. 설치를 진행합니다. ▼ 설치할 버전을 선택합니다. 2번째 Standard/Datacenter…

  • 리눅스 톰캣 설치

    리눅스 톰캣 설치(Ver 9.0.83)를 진행해 보겠습니다. 1. wget 설치 먼저 레드헷 계열에서 사용하는 패키지 매니저인 yum으로 wget 설치를 진행합니다. wget은 웹 서버로부터 컨텐츠를 가져오는 프로그램입니다. 2. 리눅스 톰캣 설치하기: Apach Tomcat ▼ Apach Tomcat 사이트에 접속합니다. 9 버전을 설치하기 위해 ‘링크 주소 복사’ 버튼을 눌러 줍니다. /usr/local/ 폴더에 설치를 진행할 것이며, 폴더는 원하는…

  • [Linux] 우분투 서버 설치 RAID 1 (24.04 ver.)

    Oracle VirtualBox에 우분투 서버 설치를 RAID 1 으로 진행해 보겠습니다. 설치 버전은 24.04 버전입니다. RAID 1은 콘솔이 아니라 설치 과정의 UI 환경에서 설정하겠습니다. ✅ 가상머신 생성 우분투 24.04 버전을 다운로드 받았다면 우측 상단의 [새로 만들기]를 클릭해서 가상 머신을 생성합니다. 무인 설치 건너뛰기를 체크합니다. 추가 설정 사항은 다음과 같습니다. 🔲 추가 디스크 만들기 RAID…

  • 스왑 메모리(Swap Memory) 설정: 파티션&파일 2가지 방식 | swapon, mkswap 명령어

    리눅스 스왑 메모리(Swap Memory)는 실제 디스크 공간을 메모리처럼 사용하는 개념이기 때문에 물리 메모리인 RAM보다 처리 속도가 느리지만 물리 메모리가 가득 찬 경우를 대비해 디스크 공간에서 할당 된 스왑 메모리를 생성해서 관리할 수 있어 한정된 리소스를 효율적으로 사용할 수 있습니다. ✅ Swap 파일 시스템 Swap 파일 시스템은 리눅스의 가상 메모리를 사용하기 위한 파일 시스템이며,…

답글 남기기

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

Prove your humanity: 8   +   4   =