질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

서버에 웹쉘을 올리는데 어떤방법으로 올리는지 궁금합니다.

작성자 정보

  • antihong 작성
  • 작성일

컨텐츠 정보

본문

안녕하십니까? 홍석범입니다.

웰쉘은 다양한 방법으로 업로드 됩니다.

allow_url_fopen = On 환경에 zboard를 사용하고 있다면 wget 등으로 너무나 간단하게 파일을 다운로드 받을 수 있고요..
그렇지 않은 경우 최근 사용되는 방법은 직접 php 파일 업로드가 불가하니 txt등의 확장자도 php로 실행되도록 하는 .htaccess 파일을 업로드 후 이후 웹셀인 .txt 파일을 다시 업로드하여
사용하는 경우등입니다.
 
업로드를 방지하는 방법은 현실적으로 어렵습니다.
게시판에 파일 업로딩 기능 자체를 차단하거나 꼭 사용하여야 한다면 확장자등을 엄격하게 제한하거나 modsecurity를 이용하여 업로드되는 파일을 지속적으로 모니터링하여야 합니다...

감사합니다.

희심금강 님의 글



xxxx.com-access_log:41.233.xx.xxx - - [03/Jan/2008:02:02:04 +0900] "GET /bbs/confiq.php HTTP/1.1" 302 303
xxxx.com-access_log:41.233.xx.xxx - - [03/Jan/2008:02:02:33 +0900] "GET /bbs/confiq.php HTTP/1.1" 401 30
xxxx.com-access_log:41.233.xx.xxx - Gero0o0o [03/Jan/2008:02:02:44 +0900] "GET /bbs/confiq.php HTTP/1.1" 200 6567

confiq.php는 php로 만들어진 웹쉘이구요.

로그를 보면 302코드와 401코드를 낸후에 바로 200코드로 접속 성공이네요

해당 디렉토리는 nobody유저에게 쓰기권한이 되어 있으므로

confiq.php가 올라가는것이야 정상이겠지만 도대체 어떤 방법으로

쉘을 올리는지 모르겠습니다.

해당 게시판은 제로보드 4.1 pl7 입니다.

 

첫번째 질문은 보통 이런 스크립트를 어떤 방법으로 서버로 올리는건가요?

두번째, 퍼미션 변경외에 이런 파일의 업로드를 막는 방법을 무엇인가요? 혹은 아파치 로그에 업로드 흔적을 남기는 옵션은 없나요?그리고 302코드와 401 코드가 의미하는 바는 무엇인가요?

세번째 방법은 제가 테스트로 디렉토리를 하나 만들었습니다.

Gero0o0o [13/Jan/2008:02:40:29 +0900] "GET //bbs/confiq.php?act=mkdir&d=%2Fhome%2xxxx.com%2Fpublic_html%2Fbbs%2F&mkdir=%2Fhome%2Fxxxx.com%2Fpublic_html%2Fbbs%2Ftestaaa HTTP/1.1" 200 6659

잘 만들어 지네요.

mod_security에 다음과 같은 옵션을 주었습니다.

SecFilterSelective THE_REQUEST "mkdir"

안걸러지고 잘만들어 집니다.

제가 만든 mod_security 옵션이 잘못된 것이겠지요?

무엇이 잘못된 것일까요?

 

고수님들 많은 도움 바랍니다.

 

 

 




 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,128 명
  • 현재 강좌수 :  36,153 개
  • 현재 접속자 :  312 명