# 04. 불필요한 명령어 사용 제한

![image.png](https://www.ochidstudy.com/uploads/images/gallery/2025-08/scaled-1680-/dtVUiX748rLeeccq-image.png)

<p class="callout info">설명</p>

**웹 페이지 중에 명령어를 입력할 수 있는 칸이 있다면 공격자가 악의적인 명령어를 입력할 수 있으므로 비활성화 해주어야 한다.**

**단순한 예제로 Command injection 공격을 시연할 수 있는 CTF 등이 많다.**

<p class="callout info">딴소리</p>

**정말 특이한 케이스가 아닌 이상 서버의 명령어를 그대로 실행하는 입력창을 웹 사이트에 구현하는 일은 없다.**

**그치만 웹 모의해킹을 하다보면 웹 페이지 상에는 보이지 않게 hidden으로 가려져있거나, 파라미터에 실행할 명령어가 들어가 있을 수 있으므로**

**사용하지 않는게 제일 좋겠다.**

**아니면 실행할 명령어를 화이트리스트로 관리하거나..**

<p class="callout info">기본 값</p>

![image.png](https://www.ochidstudy.com/uploads/images/gallery/2025-08/scaled-1680-/mTN0JZLWXSN0CB0F-image.png)

**disable\_functions 설정 값 존재하지 않음 -&gt; 취약**

<p class="callout warning">조치 방법</p>

**01. php config 파일 진입**

![image.png](https://www.ochidstudy.com/uploads/images/gallery/2025-08/scaled-1680-/Tgnl8NvixUDBofzW-image.png)

**아래 비고에 포함된 명령어들을 참고하여 php 파일에 disable\_functions 설정 값 추가**

<span style="white-space: pre-wrap;">\* </span>**외부에서 명령어가 들어오지 못하는 환경이라면 안전하다고 생각할 수 있지만, 보안 조치의 주 목적은 공격표면 줄이기에 있다.**

![image.png](https://www.ochidstudy.com/uploads/images/gallery/2025-08/scaled-1680-/XCvbGuUbdtRunwjj-image.png)

![image.png](https://www.ochidstudy.com/uploads/images/gallery/2025-08/scaled-1680-/CpG08olJfnPj5I4T-image.png)