2017. 4. 7.

지식정리 체크리스트 - 20170405

1. put. delete 와 같은 http 메소드가 열려있다는 이유만으로 파일을 입력, 삭제 할 수 있는지?

물론 그렇지 않다.
WebDAV 서비스와 함께 원격지 웹 서버에 파일을 생성하거나 삭제하는 FTP 와 유사한 기능을 구현할 수 있다.
기본적으로 웹 게시 폴더(기본설정 - \inetpub\wwwroot)는 인터넷 사용자가 접근하는 폴더이기 때문에 인터넷 게스트 계정(IUSR_XXX)을 가지는 웹 사용자는 쓰기 권한을 가진다.

하지만, 웹 사용자가 웹을 통해 직접 내용을 쓰기 위해서는 HTTP의 확장된 기능인 WebDAV 기능이 지원되어야 한다. 즉, WebDAV 서비스를 제공하는 파일인 httpext.dll에 인터넷 게스트 권한을 포함하는 Everyone 이 모든 권한을 가지도록 할당하는 경우 인증 없이 콘텐츠를 생성, 삭제할 수 있다.

홈페이지 변조가 가능한 최적의 조건
1) 웹 컨텐츠 디렉터리에 쓰기 권한이 할당된 경우
2) 웹 컨텐츠 디렉터리의 Everyone에 모든 권한이 할당된 경우
3) httpext.dll 파일에 Everyone 권한이 할당된 경우

이와 같은 조건이라면 PUT 혹은 Delete 메소드를 이용하여 컨텐츠를 생성하거나 삭제 할 수 있다.

공격자는 우선 WebDAV 운영 여부를 확인하기 위해 'PROPFIND /' 를 전송하고, 응답 코드 207번이 수신되면 WebDAV 서비스 사용을 의미한다. 그 후, 파일 삽입(PUT /echo.htm) 을 요청 할 수 있다.

2. 유닉스 명령창에서 실행했던 명령에 대한 기록은 history 명령으로 확인할 수 있다. 
-> 모의해킹 할 때 써먹으면 유용 할 것 같다.

3. 아파치 웹 서버가 root 권한으로 실행되는 경우 혹은 웹 취약점에 의해 공격자가 root의 권한을 획득하는 경우이다. 
-> 만약 httpd.conf 파일에 user nobody, group nobody 로 설정하고 nobody 계정의 설정을 nologin 설정을 해놓은다면, 웹 쉘과 같은 취약점이 발생하여도, 쉘 권한을 득하여도 /etc/shadow 파일을 획득할 수는 없을 것이다. (피해를 최소화 할 것이다.)

4. meta http-equiv= pragma content= no-cache 의미
-> 웹 개발을 할 때 캐쉬된 페이지 때문에 웹 브라우저가 재시동되거나, 웹서버를 재시동하는 경우 캐쉬에서 불러오는게 아니라 항상 최신의 페이지를 보여주도록 하는 방법

5. /etc/passwd 의 두번째 파일
* 이라고 되어 있는 부분은 그 계정은 막아둔 상태라는 것을 나타난다.
X 라고 되어 있는 부분은 암호가 암호되어 shadow 파일에 저장되었다는 것을 나타낸다.





Popular Posts

Recent Posts

Powered by Blogger.