
얼마 전 복구 요청을 받은 사이트는 서버 사양이 부족해서 멈춘 게 아니었습니다. 관리자 계정으로 들어온 공격자가 웹 파일을 바꾸고, 같은 서버에 있던 백업까지 지웠습니다. CPU와 메모리에는 여유가 있었지만 되살릴 자료가 없었죠. 이런 사고를 겪으면 안티랜섬웨어를 어떤 제품으로 설치할지보다, 침입한 계정이 어디까지 손댈 수 있는지부터 보게 됩니다.
먼저 내 호스팅에서 보호할 범위를 확인한다
공유 웹호스팅은 운영체제에 보안 프로그램을 설치할 권한이 없는 경우가 많습니다. 이때 할 일은 호스팅 업체가 제공하는 악성 파일 검사, 계정 접근 기록, 백업 보관 기간을 확인하는 겁니다. 업체가 매일 백업한다고 해도 고객이 원하는 시점의 파일과 데이터베이스를 직접 복원할 수 있는지는 별개입니다. 관리자 화면에서 복원 가능한 날짜와 비용까지 확인해야 합니다.
VPS나 단독 서버라면 운영체제 보안 기능과 탐지 도구를 직접 관리할 수 있습니다. 다만 웹사이트의 파일만 감시해서는 부족합니다. 데이터베이스, 업로드 파일, 환경 설정, 배포에 쓰는 계정도 보호 범위에 들어갑니다. 예를 들어 하루에 주문 200건이 쌓이는 쇼핑몰이라면 전날 밤의 백업만으로 복구할 때 최대 200건을 다시 확인해야 합니다. 백업 간격은 서버 크기보다 허용할 수 있는 데이터 손실량으로 정하는 편이 맞습니다.
안티랜섬웨어는 권한과 함께 설정한다
안티랜섬웨어는 의심스러운 파일 변경을 탐지하거나 차단하는 한 겹의 방어입니다. 설치만으로 관리자 계정 탈취나 이미 열린 원격 접속을 해결하지는 못합니다. 운영체제와 웹 애플리케이션을 업데이트하고, 관리자 로그인에는 다중 인증을 적용하세요. 배포 계정과 백업 계정도 분리합니다. 웹서버 프로세스가 읽기만 하면 되는 코드 파일에 쓰기 권한을 갖고 있다면 그 권한부터 줄여야 합니다.
윈도 서버에서는 보호 폴더에 허용되지 않은 프로그램이 쓰지 못하게 하는 기능을 검토할 수 있습니다. 다만 백업 프로그램이나 정상적인 배포 작업까지 막힐 수 있으니, 먼저 기록을 보며 허용할 프로그램과 폴더를 확인하는 게 안전합니다. 리눅스 서버도 실행 계정의 권한과 업로드 디렉터리의 실행 제한을 먼저 점검합니다. 로그에서 갑자기 많은 파일의 이름이 바뀌거나 대량 삭제가 발생하면 알림을 받도록 설정하면 탐지에 도움이 됩니다.
특히 저렴한 VPS 한 대에서 웹서버, 데이터베이스, 백업 작업을 모두 돌리는 경우가 흔합니다. 비용을 아낄 수 있는 구성입니다. 대신 웹 애플리케이션이 탈취됐을 때 백업 저장소까지 지울 수 있는 계정 구조라면 서버를 키워도 사고 범위는 줄지 않습니다. 추가 요금제를 사기 전에 계정 권한과 백업 경로부터 확인하는 이유입니다.
백업은 서버 밖에 두고 실제로 복원한다
같은 서버의 다른 디렉터리에 복사한 파일은 작업 실수에 대비한 사본일 뿐입니다. 공격자가 서버 전체에 쓰기 권한을 얻으면 원본과 사본을 함께 지울 수 있습니다. 운영 서버와 분리된 저장소에 백업을 보내고, 운영 서버 계정에는 이전 백업을 삭제할 권한을 주지 않는 구성이 필요합니다. 오프라인 사본이나 일정 기간 삭제할 수 없는 백업도 사고 범위를 줄입니다. CISA 역시 분리된 백업과 정기적인 복원 시험을 강조합니다.
예를 들어 게시글이 하루 두세 건 올라오는 블로그라면 하루 한 번의 백업으로 충분할 수 있습니다. 주문이나 예약이 계속 들어오는 사이트라면 데이터베이스를 더 자주 백업해야 합니다. 파일과 데이터베이스의 시점도 맞춰야 하죠. 새 서버에 백업을 풀었는데 첨부 파일은 어제 것, 데이터베이스는 오늘 것이라면 화면에는 존재하지만 열리지 않는 자료가 생길 수 있습니다.
복원 시험은 파일이 저장돼 있는지 보는 것으로 끝나지 않습니다. 빈 서버에 웹 파일과 데이터베이스를 넣고, 로그인과 주요 기능이 작동하는지 확인해야 합니다. 복원에 두 시간이 걸린다면 장애 때도 최소 그만큼의 중단을 예상할 수 있습니다. 실제로 걸린 시간을 기록하면 더 비싼 서버가 필요한지, 백업 절차를 고쳐야 하는지 판단하기 쉬워집니다.
감염이 의심되면 이 순서로 움직인다
파일 확장자가 한꺼번에 바뀌거나 관리자 계정에서 낯선 작업이 보이면 먼저 해당 서버의 외부 연결과 공유 저장소 접근을 차단합니다. 그다음 로그와 백업 상태를 보존하고, 관리자·배포·백업 계정의 접속을 막아 추가 변경을 멈춥니다. 감염된 서버에서 곧바로 백업을 덮어쓰면 공격 경로나 손상 범위를 확인하기 어려워집니다.
복구는 신뢰할 수 있는 시점의 백업을 깨끗한 환경에 올려 확인한 뒤 진행합니다. 침입 경로가 된 취약점이나 계정이 그대로면 복원 직후 다시 당할 수 있으니 패치와 비밀번호·인증 수단 교체도 함께 해야 합니다. 개인정보가 빠져나간 흔적이 있다면 파일 암호화 여부와 별도로 조사해야 합니다.
솔직히 작은 사이트에는 비싼 보안 제품보다 계정 분리, 접근 제한, 서버 밖 백업 한 벌이 먼저인 경우가 많습니다. 안티랜섬웨어는 그 위에서 이상한 변경을 빨리 발견하게 해주는 도구입니다. 제가 운영 비용을 볼 때도 제품 가격보다, 오늘 서버가 멈췄을 때 어디서부터 얼마나 빨리 되살릴 수 있는지를 먼저 계산합니다.
