묻고답하기
긴급한 보안문제
2015.06.19 13:28
안녕하세요.
최근에 제 서버에 악성 스미싱앱이 계속 업로드됩니다.
메르스 스미싱 악성앱의 유포지로 활용된적이 있다고 한국인터넷진흥원과 사이버수사대에게 연락을 받아서 뭔가 조치를 취해야됩니다.
악성앱은 XE에서 첨부파일로 업로드되는 것이 아니라 www-data에게 쓰기권한이 부여되있는 폴더에 직접 업로드됩니다.
그 파일을 삭제하고 폴더의 권한을 775에서 755로 변경해서 www-data권한으로 쓰기를 못하게 했는데
삭제하고나면 www-data에게 쓰기권한이 허용되어있는 다른 하위 폴더를 찾아서 계속 업로드를 하는것 같습니다.
다만 부득이하게 www-data가 소유자거나 쓰기권한을 줘야되는 경우도 있어서 전부 쓰기가 안되게 변경하는 것도 불가능합니다..
업로드된 악성앱은 소유자도 www-data로 되어있고 SSH 접속로그에도 이상한 점이 없습니다.
22번 포트는 방화벽으로 제한하고 있는데 아마 웹 취약점을 이용해서 업로드 한 것 같습니다..
XE는 1.7.5, 서버OS는 우분투, 웹서버는 NGINX, PHP는 5.5를 사용하고 있습니다.
이런 경우에는 어떻게 대응 해야되는지 조언 부탁드립니다.
댓글 5
-
GG
2015.06.19 13:49
-
기진곰
2015.06.19 14:15
파일 업로드 기능을 가진 PHP 스크립트가 어딘가에 숨어 있는 모양입니다. 이걸 사용하면 XE의 첨부파일 기능을 통하지 않고도 임의의 위치에 파일을 업로드할 수 있겠죠.
ssh로 접속해서 XE가 설치된 위치로 이동한 후, grep -rnH "\$_FILES" 명령을 내려보세요. (시간이 좀 걸립니다.) 파일 업로드 기능을 사용하는 스크립트의 목록을 모두 볼 수 있습니다. XE 코어의 admin, file, member 모듈 및 Context 클래스 이외의 장소가 눈에 띄면 의심해 보세요.
단, XE 코어를 구성하는 파일들 중 일부가 변조되어서 업로드 스크립트의 역할을 하고 있다면 코어를 덮어쓰는 것 외에는 방법이 없습니다.
-
간장게장같은남자
2015.06.19 14:19
Php.ini 에 Disable_function 이 제대로 작동하고 있는지 궁금하네요.
Nginx 에서도 디렉토리를 해당 소유자 아니면 접근할 수 없게 설정해야 할 것 같구요.
어떻게든 해당 소유자에 권한이 있디고 해서 맘대로 업로드를 할 순 없습니다.어딘가 분명히 파일을 업로드되는 스크립트가 들어가 있을 수 있습니다
Xe가 그만한 취약점이 있다고는 보기 힘들긴합니다.
있다면 웹서버나 디렉토리의 권한 취약점 정도겠네요.
제작의뢰에 코멘트를 남길 수가 없어서 쪽지로 연락처 보내드립니다 -
盧無
2015.06.19 16:59
제쪽도 그런일이 있었는데 외부쪽인줄 알고 따로 업체에 의뢰하니 내부소행이라고 하던데 일단 의뢰해보시고 아니라고하면 내부소행을 의심해보세요
-
盧無
2015.06.19 17:01
그리고 돈주고 의뢰해도 잘 모르는거 티나면 세팅 이상하게합니다, 제가 당해서 배우면서 새로세팅했거든요
일단 백업 후 코어 업데이트를 해 봅니다