Day 48: 실무 사례 #8 - 웹젠·나야나 랜섬웨어 공격 (2017)

[ 1. 사건 개요 ]

기본 정보
    - 피해 기업 : 웹젠 (게임사), 나야나 (호스팅사)
    - 발생 시기 : 2017년 6월
    - 사건 유형 : 랜섬웨어 공격 (암호화 + 금전 요구)
    - 랜섬웨어 종류 : Erebus (에레버스)
    - 피해 규모 : 서버 153대 암호화, 웹사이트 3,400개 마비
    - 몸값 지불 : 약 13억원 (397.6 비트코인)

사건 요약
    - 2017년 6월, 웹 호스팅 업체 나야나가 랜섬웨어 공격을 받아 서버 153대가 암호화되었다.
    - 나야나를 이용하는 웹사이트 약 3,400개가 동시에 마비되었고, 게임사 웹젠의 공식 홈페이지도 포함되었다.
    - 나야나는 결국 해커에게 약 13억원 (397.6 비트코인)의 몸값을 지불하고 복호화 키를 받았다.
    - 국내 최초로 대규모 랜섬웨어 공격에 몸값을 지불한 사례로, 랜섬웨어 위협의 심각성을 알린 사건이다.

[ 1.1 상세 경위 ]

공격 시점 : 2017년 6월 10일

공격 대상
    - 주 피해자 : 나야나 (인터넷나야나, 웹 호스팅 업체)
    - 간접 피해자 : 나야나 고객사 약 3,400개 (웹젠 포함)

공격 방법
    1. 웹 서버 취약점 공격
        - Apache Struts 취약점 악용 (추정) 또는 관리자 계정 탈취
    2. 랜섬웨어 설치
        - Erebus 랜섬웨어 설치, 서버 153대에 확산
    3. 파일 암호화
        - 모든 데이터 파일 암호화 (웹사이트, 데이터베이스, 백업 파일 포함)
        - 암호화 알고리즘 : RSA-2048 + AES-128
    4. 몸값 요구
        - 화면에 랜섬 노트 표시 : "복호화 원하면 비트코인 지불하라"
        - 초기 요구액 : 550 비트코인 (당시 약 15억원)

피해 상황
    - 나야나 서버 153대 암호화
    - 고객사 웹사이트 3,400개 접속 불가
    - 웹젠 공식 홈페이지 마비
    - 중소 쇼핑몰, 기업 홈페이지 등 동시 마비
    - 데이터베이스 암호화로 고객 정보, 거래 내역 등 접근 불가

협상 및 복구 과정
    - 나야나와 해커 간 협상 시도
    - 초기 요구 550 BTC → 최종 합의 397.6 BTC (약 13억원)
    - 1차 지불 100 BTC → 일부 복호화 키 수령
    - 2차 지불 100 BTC → 추가 복호화 키 수령
    - 3차 지불 197.6 BTC → 최종 복호화 키 수령
    - 복호화 작업 약 2주 소요
    - 일부 데이터 복구 실패 (약 5%)

[ 1.2 타임라인 ]

2017년 6월 10일 새벽
    - 랜섬웨어 감염 시작 (추정), 오전 중 서버 153대 암호화 완료

2017년 6월 10일 오전
    - 나야나 직원 출근 후 장애 발견
    - 고객사에 긴급 공지 : "서버 장애로 웹사이트 접속 불가"
    - 오후 경찰 신고, KISA 신고

2017년 6월 11일
    - 나야나 공식 사과 : "랜섬웨어 공격 받음"
    - KISA 기술 지원 시작, 복호화 도구 탐색 (실패)

2017년 6월 12 - 13일
    - 해커와 협상 시작, 몸값 인하 협상

2017년 6월 14일
    - 1차 몸값 지불 (100 BTC, 약 3.3억원), 일부 서버 복구 시작

2017년 6월 19일
    - 3차 최종 몸값 지불 (197.6 BTC, 약 6.5억원)
    - 총 지불액 397.6 BTC (약 13억원)

2017년 7월 초
    - 대부분 서비스 복구 완료, 일부 고객 데이터 손실 (약 5%)

2017년 7 - 8월
    - 경찰 수사 진행, 해커 추적 (해외, 검거 실패)

[ 2. 법률 분석 ]

[ 2.1 적용 법률 ]

주요 법률
    1. 정보통신망법
    2. 형법
    3. 개인정보보호법

랜섬웨어 = 악성프로그램, 데이터 암호화 = 정보 훼손, 몸값 요구 = 공갈에 해당한다.

[ 2.2 해커에 대한 처벌 ]

정보통신망 침해

법적 근거 : 정보통신망법 제48조 (벌칙)

조문
    - 정당한 접근권한 없이 또는 허용된 접근권한을 넘어 정보통신망에 침입한 자
    - 정보통신망에 장애가 발생하게 하거나 악성프로그램을 전달 또는 유포한 자
    - 5년 이하의 징역 또는 5천만원 이하의 벌금

해당 사항
    - 나야나 서버 침입
    - Erebus 랜섬웨어 유포
    - 데이터 암호화 (정보 훼손)

재물손괴죄

법적 근거 : 형법 제366조

조문
    - 타인의 전자기록등 특수매체기록을 손괴 또는 은닉 기타 방법으로 그 효용을 해한 자는 3년 이하의 징역 또는 700만원 이하의 벌금에 처한다.

해당 사항
    - 데이터 암호화 = 전자기록 효용 침해

공갈죄

법적 근거 : 형법 제350조

조문
    - 사람을 공갈하여 재물의 교부를 받거나 재산상의 이익을 취득한 자는 10년 이하의 징역 또는 2천만원 이하의 벌금에 처한다.

해당 사항
    - 랜섬웨어로 협박, 몸값 397.6 BTC 요구 및 취득

처벌 : 10년 이하 징역 (가장 무거운 처벌)

실제 처벌 : 해커 미검거 (해외 소재 추정, 익명성), 처벌 없음

[ 2.3 나야나의 책임 ]

안전성 확보 조치 의무 위반

법적 근거 : 정보통신망법 제28조 (개인정보의 기술적·관리적 보호조치)

나야나 위반 내용
    1. 서버 보안 취약
        - Apache Struts 취약점 패치 지연 (추정)
        - 또는 관리자 계정 보안 미흡
    2. 백업 실패
        - 백업 파일도 동일 서버에 저장
        - 백업도 랜섬웨어에 의해 암호화됨
        - 오프라인 백업 없음
    3. 랜섬웨어 대응 미흡
        - 백신 미설치 또는 업데이트 지연
        - 랜섬웨어 탐지 실패

해당 조항
    - 정보통신망법 제73조 (벌칙) : 제28조 위반 시 2년 이하 징역 또는 2천만원 이하 벌금

실제 제재
    - 과학기술정보통신부 : 시정명령, 보안 강화 권고
    - 고객 소송 : 일부 고객이 손해배상 청구 (합의 추정)

[ 2.4 처벌 및 제재 ]

해커 : 미검거, 처벌 없음

나야나 자체 손실
    - 몸값 지불 : 약 13억원 (397.6 BTC)
    - 복구 비용 : 약 5억원 (추정)
    - 시스템 교체 : 약 10억원
    - 고객 이탈 : 약 30% (추정)
    - 총 직접 비용 : 약 30억원 이상

나야나 사업 영향
    - 사건 후 고객 대거 이탈, 신뢰 추락
    - 2018년 회사 매각 시도 (실패)
    - 2020년 사실상 폐업

[ 3. 기술적 분석 ]

[ 3.1 랜섬웨어란? ]

정의
    - 사용자 파일을 암호화하고 복호화 대가로 몸값 (Ransom)을 요구하는 악성프로그램

동작 방식
    1. 감염 : 이메일 첨부파일, 웹사이트 취약점, 관리자 계정 탈취 등
    2. 확산 : 네트워크 공유 폴더, 연결된 드라이브로 확산
    3. 암호화 : 문서, 이미지, 데이터베이스 등 중요 파일 암호화
    4. 몸값 요구 : 화면에 랜섬 노트 표시, 비트코인 지불 요구
    5. 복호화 : 몸값 지불 시 복호화 키 제공 (때로는 거짓)

암호화 알고리즘
    - 대부분 RSA-2048 이상 + AES-128/256
    - 복호화 불가능 (현재 기술로는 수억 년 소요)

주요 랜섬웨어 사례
    - WannaCry (2017, 전 세계)
    - Petya/NotPetya (2017)
    - Erebus (나야나, 2017)
    - GandCrab (2018 - 2019)
    - REvil/Sodinokibi (2019 - 2021)

[ 3.2 Erebus 랜섬웨어 분석 ]

개발 및 특징
    - 2016년 발견, 초기에는 Windows 공격
    - 2017년 Linux 버전 등장 (서버 타겟)

감염 경로 (추정)
    - Apache Struts 취약점 (CVE-2017-5638) : 원격 코드 실행 취약점, 2017년 3월 발견, 나야나는 패치 지연 (추정)
    - 또는 관리자 계정 탈취 : 약한 비밀번호, SSH 무차별 대입 공격

암호화 방식
    - RSA-2048 + AES-128
    - 파일마다 고유 AES 키 생성
    - RSA 공개키로 AES 키 암호화
    - 복호화는 RSA 개인키 필요 (해커만 보유)

암호화 대상
    - 웹사이트 파일 (HTML, PHP, JS 등)
    - 데이터베이스 파일 (MySQL, PostgreSQL)
    - 이미지, 백업 파일, 로그 파일

특징
    - 빠른 암호화 속도 (서버 153대를 수시간 내)
    - 백업 파일도 암호화 (동일 서버 저장 시)
    - 네트워크 확산 기능 (SSH, SMB 등)

[ 3.3 나야나의 보안 취약점 ]

서버 보안 미흡
    - Apache Struts 취약점 (CVE-2017-5638) : 2017년 3월 공개, 나야나 공격은 6월 (3개월간 패치 안 함)
    - 필요한 대책 : 취약점 정보 모니터링 (KISA), 긴급 패치 즉시 적용, 정기 취약점 스캔

백업 실패
    - 백업 파일도 동일 서버에 저장 → 랜섬웨어가 백업도 암호화 → 복구 불가능
    - 필요한 대책 : 3-2-1 백업 원칙, 오프라인 백업 (에어갭), 백업 테스트 정기 실시

랜섬웨어 대응 미흡
    - 백신 미설치 또는 업데이트 지연, 랜섬웨어 탐지 실패, 확산 차단 실패
    - 필요한 대책 : 서버용 백신 설치, EDR, 네트워크 세그먼트, 실시간 모니터링

관리자 계정 보안
    - 관리자 계정 탈취 가능성, 약한 비밀번호 또는 이중 인증 없음
    - 필요한 대책 : 강력한 비밀번호 (16자 이상), 이중 인증 (2FA), SSH 키 인증, IP 화이트리스트

[ 3.4 사후 대응 ]

복호화 과정
    - 해커로부터 복호화 키 수령
    - 서버별 순차 복호화 (서버당 평균 1 - 2일)
    - 서버 153대 복호화 약 2주 소요
    - 약 5% 데이터 복구 실패 (파일 손상)

보안 강화 조치
    - 서버 전면 재구축, 최신 패치 적용
    - 백신 설치, 오프라인 백업 체계 구축
    - 보안 인력 충원, 정기 취약점 스캔

[ 4. 대응 평가 ]

[ 4.1 잘한 점 ]

신속한 신고
    - 발견 즉시 경찰, KISA 신고

투명한 공개
    - 고객에게 즉시 공지, 랜섬웨어 공격 사실 공개, 복구 진행 상황 실시간 공유

고객 보상
    - 데이터 손실 고객에게 일부 보상, 서비스 이용료 환불

[ 4.2 미흡한 점 ]

사전 예방 실패
    - 취약점 패치 지연 (3개월)
    - 백업 체계 부재 (오프라인 백업 없음)
    - 랜섬웨어 대응 미흡

몸값 지불
    - 13억원 몸값 지불
    - 해커에게 자금 제공 (향후 공격 유인)

복구 지연
    - 2주 소요, 고객 피해 장기화

고객 신뢰 상실
    - 사건 후 고객 30% 이탈, 회사 사실상 폐업

[ 5. 교훈 및 시사점 ]

[ 5.1 기술적 교훈 ]

랜섬웨어는 복호화 불가능
    - RSA-2048 이상 암호화 = 현재 기술로 복호화 불가능
    - 몸값 지불 외 방법 없음 (백업 있으면 제외)
    - 대응 : 백업이 유일한 해법, 오프라인 백업 필수

백업은 생명줄
    - 백업 없으면 복구 불가능, 몸값 지불하거나 데이터 포기
    - 대응 : 3-2-1 원칙, 오프라인 백업 (에어갭), 백업 테스트

취약점 패치는 즉시
    - Apache Struts 취약점 3개월 방치 = 사고 초대
    - 대응 : 취약점 발견 즉시 패치, 긴급 패치는 24시간 내

랜섬웨어는 확산 빠름
    - 네트워크 공유, SSH, SMB 등으로 수시간 내 전체 암호화
    - 대응 : 네트워크 세그먼트, 감염 PC 즉시 격리

서버도 백신 필수
    - 서버는 백신 없는 경우 많음 (성능 저하 우려)
    - 하지만 랜섬웨어는 서버도 공격
    - 대응 : 서버용 백신 설치, EDR, 실시간 모니터링

[ 5.2 법률적 교훈 ]

랜섬웨어는 공갈죄
    - 몸값 요구 = 공갈죄, 10년 이하 징역
    - 하지만 해커 대부분 해외, 익명성으로 검거 어려움

몸값 지불의 법적 문제
    - 몸값 지불 = 범죄자에게 자금 제공
    - 법적으로 문제 소지 (범죄 방조 가능성)
    - 한국은 아직 금지 안 함 (일부 국가는 금지 검토 중)

기업의 안전조치 의무
    - 정보통신망법 제28조 : 안전조치 미흡 = 2년 이하 징역
    - 취약점 패치 지연, 백업 부실 = 안전조치 의무 위반 가능

손해배상 책임
    - 안전조치 의무 위반으로 고객이 손해배상 청구 가능

[ 5.3 경영적 교훈 ]

랜섬웨어 = 기업 생존 위협
    - 나야나 총 손실 : 약 30억원 (직접) + 수백억원 (간접)
    - 고객 30% 이탈, 2020년 사실상 폐업

몸값 vs 백업 비용
    - 몸값 : 13억원
    - 백업 시스템 구축 비용 (추정) : 1억원 (오프라인 백업, 원격지 백업)
    - 13억원 vs 1억원 = 13배 차이
    - 교훈 : 백업에 투자하는 것이 훨씬 저렴

몸값 지불의 딜레마
    - 장점 : 데이터 복구 가능 (70 - 90% 성공률), 빠른 복구 (2주)
    - 단점 : 비용 막대 (13억원), 해커 자금 지원, 복호화 실패 가능성 (약 10 - 30%), 데이터 일부 손상 (5%)
    - 결론 : 백업 있으면 절대 지불하지 말 것, 백업 없으면 선택의 여지 없음

호스팅 사업의 책임
    - 호스팅 업체 = 고객 데이터 보관, 막중한 책임
    - 보안 사고 = 수천 고객 동시 피해
    - 교훈 : 호스팅 업체는 최고 수준 보안 필요

[ 6. 주요 랜섬웨어 사건 비교 ]

나야나 (2017년 6월)
    - 랜섬웨어 : Erebus
    - 피해 규모 : 서버 153대, 웹사이트 3,400개
    - 몸값 : 13억원
    - 지불 여부 : 지불

WannaCry (2017년 5월)
    - 랜섬웨어 : WannaCry
    - 피해 규모 : 전 세계 30만대 (국내 일부 포함)
    - 몸값 : 300달러 - 600달러
    - 지불 여부 : 일부 지불

나야나 특징
    - 국내 최초 대규모 몸값 지불 공개
    - 호스팅사 공격 = 수천 고객 동시 피해
    - 백업 부재가 치명적
    - 회사 폐업까지 이어짐

[ 7. 체크리스트 - 랜섬웨어 대응 ]

사전 예방 - 백업 (최우선)
    - 3-2-1 원칙 (3개 복사본, 2개 매체, 1개 원격지)
    - 오프라인 백업 (에어갭) 필수
    - 백업 주기 (일 1회 이상)
    - 백업 테스트 (월 1회)
    - 백업 암호화 (백업 자체도 보호)

취약점 관리
    - 취약점 정보 모니터링 (KISA, 보안 업체)
    - 긴급 패치 24시간 내 적용
    - 정기 패치 (월 1회)
    - 취약점 스캔 (분기 1회)

랜섬웨어 차단
    - 백신 설치 (서버 포함)
    - EDR (Endpoint Detection and Response)
    - 이메일 첨부파일 필터링
    - 웹 필터링 (악성 사이트 차단)

접근통제
    - 관리자 계정 이중 인증 (2FA)
    - 강력한 비밀번호 (16자 이상)
    - IP 화이트리스트, VPN 사용

네트워크 분리
    - 네트워크 세그먼트
    - 중요 서버 격리
    - 백업 서버 별도 망

사고 발생 시 대응 절차
    1. 감염 의심 PC 즉시 네트워크 차단 (랜선 뽑기, Wi-Fi 끄기)
    2. 전원 끄지 말 것 (포렌식 증거 보존)
    3. KISA 신고 (국번 없이 118), 경찰 신고
    4. 피해 범위 확인 (암호화된 파일, 감염 대수, 백업 여부)
    5. 복구 방법 결정

복구 방법 (우선순위)
    1. 백업에서 복구 (최선, 몸값 지불하지 말 것)
    2. 복호화 도구 확인 (KISA, 백신 업체 사이트에서 무료 제공)
    3. 몸값 지불 (최후의 수단, 권장 안 함)

[ 8. 관련 법령 ]

정보통신망법
    - 제28조 (기술적·관리적 보호조치)
    - 제48조 (벌칙 - 정보통신망 침해, 악성프로그램 유포, 5년 이하)
    - 제73조 (벌칙 - 안전조치 위반, 2년 이하)

형법
    - 제350조 (공갈, 10년 이하)
    - 제366조 (재물손괴, 3년 이하)

개인정보보호법
    - 제29조 (안전성 확보 조치)
    - 제34조 (개인정보 유출 통지)

[ 학습 정리 ]

나야나 사건에서 배운 점

    - 국내 최초 대규모 랜섬웨어 공격 몸값 지불 사례
    - 호스팅사 나야나 서버 153대 암호화, 고객사 3,400개 동시 마비
    - Erebus 랜섬웨어 (Linux 버전)로 모든 데이터 파일 암호화
    - Apache Struts 취약점 3개월 방치가 원인 (추정)
    - 백업 파일도 동일 서버에 저장되어 함께 암호화됨
    - 오프라인 백업 없어 복구 불가능
    - 몸값 397.6 BTC (약 13억원) 지불 후 복호화
    - 복호화 후에도 약 5% 데이터 손실
    - 랜섬웨어는 RSA-2048 암호화로 복호화 불가능
    - 백업이 유일한 해법 (3-2-1 원칙, 오프라인 백업 필수)
    - 취약점 패치 즉시 적용 필요 (긴급 패치 24시간 내)
    - 서버도 백신 설치 필수
    - 몸값 지불은 최후의 수단 (권장 안 함, 복호화 보장 안 됨)
    - 사건 후 고객 30% 이탈, 회사 사실상 폐업
    - 백업 비용 1억원 vs 몸값 13억원 (13배 차이)