제가 그누보드 기반의 솔루션을 꽤 많이 관리하는데
웹쉘 때문에 돌아가실것만 같습니다. ㅜㅜ
제가 확인한 웹셀 올리는 패턴
1. 관리자 계정 탈취
2. /data/확장자 없는 파일을 하나 업로드
3. 게시판 환경설정 게시판 상단파일 경로 적는곳에 확장자 없는 파일 경로를 적음.
확장자 없는 파일의 내용은
<form> 태그를 포함한 파일을 업로드 시킬 수 있는 html을 담고 있습니다.
<?
if($_POST[q]) {
fopen($_POST[q]);
fwrite...............
}
?>
<form>
<input type='file'>
<input type='text' name='q'> <-- 파일을 저장할 경로를 넣음
</form>
확장자 없는 파일을 업로드한 상태에서
게시판을 열면 게시판 상단에 파일첨부가 떡하니 뜹니다.
이런 식으로 원하는곳에 웹쉘을 올려 버리고나서
외부에서 소스 다운받고, 디비 받고, 파일 조작하고 다하는거죠....
-----------------------------------------------------------------
아래 내용은 정말 기본적인 검색법입니다.
그런데 이것도 몰라서 계속 당한거 생각하면 화가 치밀어 오르네요 ㅜㅜ
리눅스 서버 기준입니다.
find 명령 실행할 수 있는 권한이 있는 계정으로
find / -name *.php | xargs grep 'passthru'
find / -name *.php | xargs grep 'execfuncdb'
find / -name *.php | xargs grep 'system'
find / -name *.php | xargs grep 'shell'
find / -name *.php | xargs grep 'PH4ckP'
find / -name *.php | xargs grep '1v1'
find / -name *.php | xargs grep 'execfuncdb'
find / -name *.php | xargs grep 'system'
find / -name *.php | xargs grep 'shell'
find / -name *.php | xargs grep 'PH4ckP'
find / -name *.php | xargs grep '1v1'
등으로 찾아보시면
맨끝에 따옴표로 둘러싸여진 단어들이 포함된 파일들의 목록이 나옵니다.
어떤 내용안에 단어가 포함됐는지도 나오고요.
확인 후 정상적인 소스가 아니면 지워주시면 됩니다.
그리고 제가 당해본 결과 어딘가에 또 숨겨놓고 계속 웹쉘을 올리더라고요.
전 root 권한이 있어서 각 계정의 모든 폴더 권한을 root.root로 바꿔 버렸습니다.
일반권한으로두면 계속해서 올라와서요...
좋은 노하우 있으신분 계시면 도움 좀 주시고요.
주로 그누보드에서 사용하는 파일명과 비슷하게 올리고요
웹쉘이 주로 올라오는 /data 폴더는 그누보드 설치완료 후에
755로 권한을 꼭 수정해 주시기 바랍니다.
그리고 /data 폴더안에서 html이나 php 실행못하게 하는 쉘스크립트
관리자님이 올려 두셨으니 꼭 찾아서 적용하시고요.
체크해볼 폴더및 파일명
/bbs/board_write.php
/bbs/tail.php
/bbs/login_proc.php
/extend/memo.lib.php
마지막으로 웹쉘 샘플 4개 올려 놓겠습니다.
혹시라도 악용하지 마시고 보안에 도움되시길 바랍니다. ^^
댓글 6개
게시글 목록
| 번호 | 제목 |
|---|---|
| 28080 | |
| 7612 | |
| 7598 | |
| 7595 | |
| 19842 | |
| 28079 | |
| 19840 | |
| 7593 | |
| 28076 | |
| 7590 | |
| 28072 | |
| 28065 | |
| 19836 |
jQuery
슬라이드 스크립트 도움 부탁드립니다.
3
|
| 7586 | |
| 28058 | |
| 7573 | |
| 31754 |
부트스트랩
data-toggle 체크박스 활용
|
| 7552 | |
| 28057 | |
| 30993 |
반응형
각 해상도별 테스트.
8
|
| 28052 | |
| 7546 | |
| 7544 | |
| 7538 | |
| 7519 | |
| 30992 |
HTML
결제모듈과 구글웹사이트 번역 엘리먼트
|
| 19834 |
웹서버
리눅스 시스템 백업 복구툴
1
|
| 7517 | |
| 7512 | |
| 7511 | |
| 19832 | |
| 19820 | |
| 7509 | |
| 24658 | |
| 7508 | |
| 7507 | |
| 19818 | |
| 30990 |
HTML
팁] 모바일에서 문자보내기
1
|
| 7506 | |
| 7505 | |
| 7498 | |
| 7492 | |
| 28051 | |
| 7481 | |
| 30988 |
반응형
짧고 굵은거
1
|
| 19813 | |
| 19812 | |
| 7477 | |
| 7476 | |
| 7471 | |
| 7467 | |
| 19810 | |
| 7464 | |
| 19809 | |
| 7463 | |
| 7457 | |
| 30980 | |
| 7450 | |
| 28043 | |
| 7447 | |
| 7440 | |
| 28040 | |
| 7438 | |
| 7430 | |
| 7427 | |
| 7423 | |
| 7414 | |
| 7408 | |
| 7405 | |
| 7401 | |
| 7400 | |
| 19808 | |
| 7398 | |
| 7393 | |
| 7389 | |
| 19805 |
JavaScript
Ajax 로 받은 Json 값을 View 형식에 맞춰 표현
2
|
| 7382 | |
| 7379 | |
| 7378 | |
| 7363 | |
| 7361 | |
| 7356 | |
| 19804 | |
| 7355 | |
| 7352 | |
| 19786 | |
| 7342 | |
| 7336 | |
| 7332 | |
| 19783 | |
| 7328 | |
| 7325 | |
| 7324 | |
| 28036 | |
| 19782 | |
| 7321 | |
| 26574 | |
| 7314 | |
| 7312 | |
| 19781 |
MySQL
MYSQL 쿼리순서, 부하여부 질문드려요
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기