해킹된 서버(Windows 2008 R2)복구 삽질기
페이지 정보
작성자 상석하대 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 에필로그 댓글 0건 조회 4,397회 작성일 18-06-27 17:47본문
서버장애를 의뢰받고 갔더니 IBM x3650이었다.
Light Path Diagnostics 패널에 경고가 들어와 있었다.
열어보니 메모리이다.
또한 두 개 디스크 중에서 하나가 오류 상태였다.
레이드 1로 보여서 디스크 때문은 아닐거고 DIMM 메모리 중에서 불량 난 것만 찾아서 제거하면 되겠지 했다.
뚜껑을 열어 메모리를 이리저리 바꿔 끼워가며 불량을 찾는데 뭐가 좀 이상했다.
패널에는 계속 경고가 나가지 않았고 바이오스에서는 메모리 크기가 왔다 갔다 하는 것이었다.
1GB짜리 8개가 꽂혀 있는데 2GB로 나왔다 4GB로 나왔다 했다.
바이오스에서 메모리 테스트는 정상이었다.
그 사이에 Light Path Diagnostics에는 BRD에도 불이 들어왔다 나갔다 했다.
딱, 메인보드 불량이다.
오래된 장비라 메인보드를 구하기가 어려우니 대체할 서버를 구해보라고 했다.
같은 기종이면 좋고 아니더라고 어지간하면 이전이 가능하다고 했다.
하여 가져온 게 Hujitsu Primergy rx300 s3였다.
고스트로 떠서 Primergy에 넣었는데 문의했던 것과 같은 현상이다.
복구모드로 들어가서 부팅을 잡아보려고 이리저리 해봤으나 마찮가지였다.
WinPE로 들어가서 해도 안됐다.
일단, 백업본을 사무실로 가져와서 데모 서버에 복원해 놓고 원인을 찾기 시작했다.
유사 사례가 있는지 검색을 뒤지고 얻은 정보대로 했으나 소용이 없었다.
해봤던 것들은 다음이다.
다시 가서 Primergy에 고스트로 복원했더니 이번에는 블루스크린이 뜬다.
I/O가 다르면 그럴 수 있어 SAS드라이버를 밖에서 구해와 넣어도 마찬가지다.
그냥 Primergy에 윈도우를 설치한 뒤 엎으려고 했는데 윈도우가 설치되지 않는다.
결국 이 Primergy는 윈도우를 그냥 설치할 수 있는 게 아니었다.
그냥 유휴 서버를 대여했다.
다른 서버를 수배하면 그 쪽으로 옮겨 주겠다고 했다.
부팅 후 무슨 페이지가 열리지 않아 서비스를 살펴보고 httpd.conf를 좀 수정했는데 마찬가지다.
담당자가 개발업체에 연락을 하여 봐달라고 했다.
곧 조치한 내용은 톰캣 시작과 odbc 수정이었다.
jdbc만 확인했는데 왜 한 끗을 더 생각하지 못했을까 하는 생각이 들었다.
몇일 후 일전에 복구한 서버가 장애 났다고 연락이 왔다.
현상을 물어보니 예전과 같다고 했다.
일단, 오전 중에 방문한다고 했다. 전화를 끊고 잠시 생각해보니 복구 당시에 무수히 많았던 멀웨어들과 수상한 프로그램, vbs 등이 떠올랐다.
그냥 가봐야 소용없다.
복구 작업했던 서버가 있으니 그것을 잡도리해서 교체하겠다고 했다.
복구 서버에서 뭘웨어를 제거하는 작업을 했다.
무진장 나왔다.
mrt, mse, 포터블 백신으로 수십만 개가 나왔다.
웜, 바이러스, 트로잔, 하이재커, 스파이웨어, 백도어 등 종류도 다양했다.
원격 조종툴인 bremotes와 용도가 궁금한hexccp 관련 파일들은 일일이 찾아서 삭제했다.
무슨 뭘웨어를 수집하는 서버도 아니었을 텐데 심각했다.
작업 후 다시 부팅하는데 복구 모드로 떨어진다.
시스템 파일들에 손상을 주지 않으려고 주의를 했는데 난감했다.
시스템 폴더와 파일들을 살펴보니 군데군데 싹둑 잘려있었다.
작업하는 중에 심어져 있던 해킹툴에 당한 것이었다
랜선을 연결한 상태에서 작업한 게 화근이었다.
복구 서버를 원래대로 돌려놓고 랜선을 뺀 상태로 다시 뭘웨어 제거 작업을 했다.
필요한 툴들은 usb로 옮겨서 사용을 했다.
mrt 하나만 전체 돌리는데도 대여섯 시간이 걸리는 긴 작업이었다.
이후 정상으로 재부팅이 됐다.
디스크를 떼서 pc에 붙여 놓고 한번 더 풀 스캔을 했다.
더는 멀웨어가 나오지 않았다.
고스트로 디스크를 떠서 다른 디스크에 복원했다.
서버에서는 기존 디스크를 제거하고 복구한 디스크와 백업용 디스크를 달았다.
랜 드라이버를 설치, ip 설정, httpd-ssl.conf 수정, 톰캣 시작으로 어플리케이션을 실행하고 담당자에게 로그인해서 확인하라고 했다.
정상이라고 했다.
Administrator, 암호, 터미널 포트를 변경하고 만약을 대비해서 Windows Server Backup을 매일 오전, 오후 12시로 걸어 놨다.
다른 계정들에서는 Administrators, Remote Desktop Users에서 빼버리고 암호는 바꿨다.
그러고 보니 원래부터 해킹된 서버였다.
이용되다가 나중에는 시스템 폴더와 파일들의 일부를 삭제 당하고 버려진 것이었다.
여전히 취약점은 있다.
1433포트를 외부에 열어야 할 이유가 없어 보이는데 열린 상태여서 sa 딕셔너리 대입이 들어오고 있는 중이다.
서버나 컴퓨터를 보면 관리자나 사용자가 어떤 사람인지 얼추 보이는 바, sa암호가 풀리는 것은 시간 문제다.
추정하건대 db계정에 평이한 암호가 쓰였지 싶다.
IPSec 방화벽까지 올려서 제대로 보안해야 할 필요성이 있는데 기본적인 것 이외는 별 건으로 놔뒀다.
Light Path Diagnostics 패널에 경고가 들어와 있었다.
열어보니 메모리이다.
또한 두 개 디스크 중에서 하나가 오류 상태였다.
레이드 1로 보여서 디스크 때문은 아닐거고 DIMM 메모리 중에서 불량 난 것만 찾아서 제거하면 되겠지 했다.
뚜껑을 열어 메모리를 이리저리 바꿔 끼워가며 불량을 찾는데 뭐가 좀 이상했다.
패널에는 계속 경고가 나가지 않았고 바이오스에서는 메모리 크기가 왔다 갔다 하는 것이었다.
1GB짜리 8개가 꽂혀 있는데 2GB로 나왔다 4GB로 나왔다 했다.
바이오스에서 메모리 테스트는 정상이었다.
그 사이에 Light Path Diagnostics에는 BRD에도 불이 들어왔다 나갔다 했다.
딱, 메인보드 불량이다.
오래된 장비라 메인보드를 구하기가 어려우니 대체할 서버를 구해보라고 했다.
같은 기종이면 좋고 아니더라고 어지간하면 이전이 가능하다고 했다.
하여 가져온 게 Hujitsu Primergy rx300 s3였다.
고스트로 떠서 Primergy에 넣었는데 문의했던 것과 같은 현상이다.
복구모드로 들어가서 부팅을 잡아보려고 이리저리 해봤으나 마찮가지였다.
WinPE로 들어가서 해도 안됐다.
일단, 백업본을 사무실로 가져와서 데모 서버에 복원해 놓고 원인을 찾기 시작했다.
유사 사례가 있는지 검색을 뒤지고 얻은 정보대로 했으나 소용이 없었다.
해봤던 것들은 다음이다.
bootrec /rebuildbcd, bootrec /fixmbr, bootrec /fixboot, bootsect /nt60 all
tartRep.exe
DISM의 add-driver
레지스트리 하이브로드 편집
SFC.EXE /scannow /offbootdir=c:\ /offwindir=c:\windows
SysPrep.exe
bcdedit, bcdboot
이 과정에서 복원만 열댓 번도 넘게 했던 것 같다.
밤새도록 했었다.
그러던 중 어떻게 해서 부팅 근처까지 갔었는데 acpi.sys라는 파일이 없다는 화면이 살짝 보이고 리부팅됐다.
그 파일이 없어서는 안 되는거다.
그래서 Windows 폴더들을 봤더니 없는 파일들이 상당히 많았다.
윈도우에서 일일이 각 폴더들의 파일을 비교해가며 빠진 것을 찾아 넣는다는 것은 불가능하다.
윈도우만 복구하면 되는데 Windows Server 2008에는 그게 없다.
결국 엎어버리기로 했다.
같은 버전을 설치해놓은 곳에 원래 것을 몽땅 덮어버리는 것이다.
그러려면 윈도우에서 각각의 디스크를 달아서는 오류가 많이 나 곤란하다.
결국 리눅스를 라이브로 부팅해서 원본, 타켓을 각각 마운트하여 복사했다.
밤새도록 했었다.
그러던 중 어떻게 해서 부팅 근처까지 갔었는데 acpi.sys라는 파일이 없다는 화면이 살짝 보이고 리부팅됐다.
그 파일이 없어서는 안 되는거다.
그래서 Windows 폴더들을 봤더니 없는 파일들이 상당히 많았다.
윈도우에서 일일이 각 폴더들의 파일을 비교해가며 빠진 것을 찾아 넣는다는 것은 불가능하다.
윈도우만 복구하면 되는데 Windows Server 2008에는 그게 없다.
결국 엎어버리기로 했다.
같은 버전을 설치해놓은 곳에 원래 것을 몽땅 덮어버리는 것이다.
그러려면 윈도우에서 각각의 디스크를 달아서는 오류가 많이 나 곤란하다.
결국 리눅스를 라이브로 부팅해서 원본, 타켓을 각각 마운트하여 복사했다.
\cp –af를 썼다.
이후 부팅이 제대로 되었다.
일부 서비스도 정상으로 올라 왔다.
일부 서비스도 정상으로 올라 왔다.
Windows에 손상된 시스템 파일들이 많아서가 주요 원인이었다.
부팅하고 보니 뭘웨어가 무지하기 많았는데 영향 받았을 수 있고 무엇보다 메인보드 열화 그리고 레이드1 디스크 오류 방치도 문제였다.
오랫동안 업데이트를 하지 안았기에 수 차례에 걸쳐 윈도우 업데이트를 했다.
백신이 없길래 무료 버전이라고 설치하려 했으나 그냥 놔뒀다.
단도리를 더하고 고스트로 떴다.
부팅하고 보니 뭘웨어가 무지하기 많았는데 영향 받았을 수 있고 무엇보다 메인보드 열화 그리고 레이드1 디스크 오류 방치도 문제였다.
오랫동안 업데이트를 하지 안았기에 수 차례에 걸쳐 윈도우 업데이트를 했다.
백신이 없길래 무료 버전이라고 설치하려 했으나 그냥 놔뒀다.
단도리를 더하고 고스트로 떴다.
다시 가서 Primergy에 고스트로 복원했더니 이번에는 블루스크린이 뜬다.
I/O가 다르면 그럴 수 있어 SAS드라이버를 밖에서 구해와 넣어도 마찬가지다.
그냥 Primergy에 윈도우를 설치한 뒤 엎으려고 했는데 윈도우가 설치되지 않는다.
결국 이 Primergy는 윈도우를 그냥 설치할 수 있는 게 아니었다.
그냥 유휴 서버를 대여했다.
다른 서버를 수배하면 그 쪽으로 옮겨 주겠다고 했다.
부팅 후 무슨 페이지가 열리지 않아 서비스를 살펴보고 httpd.conf를 좀 수정했는데 마찬가지다.
담당자가 개발업체에 연락을 하여 봐달라고 했다.
곧 조치한 내용은 톰캣 시작과 odbc 수정이었다.
jdbc만 확인했는데 왜 한 끗을 더 생각하지 못했을까 하는 생각이 들었다.
몇일 후 일전에 복구한 서버가 장애 났다고 연락이 왔다.
현상을 물어보니 예전과 같다고 했다.
일단, 오전 중에 방문한다고 했다. 전화를 끊고 잠시 생각해보니 복구 당시에 무수히 많았던 멀웨어들과 수상한 프로그램, vbs 등이 떠올랐다.
그냥 가봐야 소용없다.
복구 작업했던 서버가 있으니 그것을 잡도리해서 교체하겠다고 했다.
복구 서버에서 뭘웨어를 제거하는 작업을 했다.
무진장 나왔다.
mrt, mse, 포터블 백신으로 수십만 개가 나왔다.
웜, 바이러스, 트로잔, 하이재커, 스파이웨어, 백도어 등 종류도 다양했다.
원격 조종툴인 bremotes와 용도가 궁금한hexccp 관련 파일들은 일일이 찾아서 삭제했다.
무슨 뭘웨어를 수집하는 서버도 아니었을 텐데 심각했다.
작업 후 다시 부팅하는데 복구 모드로 떨어진다.
시스템 파일들에 손상을 주지 않으려고 주의를 했는데 난감했다.
시스템 폴더와 파일들을 살펴보니 군데군데 싹둑 잘려있었다.
작업하는 중에 심어져 있던 해킹툴에 당한 것이었다
랜선을 연결한 상태에서 작업한 게 화근이었다.
복구 서버를 원래대로 돌려놓고 랜선을 뺀 상태로 다시 뭘웨어 제거 작업을 했다.
필요한 툴들은 usb로 옮겨서 사용을 했다.
mrt 하나만 전체 돌리는데도 대여섯 시간이 걸리는 긴 작업이었다.
이후 정상으로 재부팅이 됐다.
디스크를 떼서 pc에 붙여 놓고 한번 더 풀 스캔을 했다.
더는 멀웨어가 나오지 않았다.
고스트로 디스크를 떠서 다른 디스크에 복원했다.
서버에서는 기존 디스크를 제거하고 복구한 디스크와 백업용 디스크를 달았다.
랜 드라이버를 설치, ip 설정, httpd-ssl.conf 수정, 톰캣 시작으로 어플리케이션을 실행하고 담당자에게 로그인해서 확인하라고 했다.
정상이라고 했다.
Administrator, 암호, 터미널 포트를 변경하고 만약을 대비해서 Windows Server Backup을 매일 오전, 오후 12시로 걸어 놨다.
다른 계정들에서는 Administrators, Remote Desktop Users에서 빼버리고 암호는 바꿨다.
그러고 보니 원래부터 해킹된 서버였다.
이용되다가 나중에는 시스템 폴더와 파일들의 일부를 삭제 당하고 버려진 것이었다.
여전히 취약점은 있다.
1433포트를 외부에 열어야 할 이유가 없어 보이는데 열린 상태여서 sa 딕셔너리 대입이 들어오고 있는 중이다.
서버나 컴퓨터를 보면 관리자나 사용자가 어떤 사람인지 얼추 보이는 바, sa암호가 풀리는 것은 시간 문제다.
추정하건대 db계정에 평이한 암호가 쓰였지 싶다.
IPSec 방화벽까지 올려서 제대로 보안해야 할 필요성이 있는데 기본적인 것 이외는 별 건으로 놔뒀다.
댓글목록
등록된 댓글이 없습니다.