일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Los
- 경기팀
- 화학물질불법유통온라인감시단
- 연구모임
- Service
- codeup
- 대외활동
- 화학물질
- 불법유통근절
- PHP
- nurisec
- suninatas
- 국정원
- UKPT level
- 기타정보
- 프로젝트
- HTML
- 파이썬
- 불법유통
- 12기
- 웹 해킹 입문
- 국가정보원
- 화학물질안전원
- 국가기록원
- 여행
- 정보보안
- UKPT
- MITRE ATT&CK
- webhacking
- 도구모음
- Today
- Total
agencies
악성 코드의 개념 본문
악성 코드는 컴퓨터 시스템에 몰래 침투해 데이터나 응용 프로그램 또는 운영체제 자체의 기밀성 완전성 유용성에 악영향을 미치거나 사용자가 이용하는 데 불편함 또는 업무를 방해하는 프로그램이라고 정의되며 다양한 방식을 통해서 컴퓨터와 사용자에게 공격을 가할 수 있다.
악성코드에는 다양한 종류가 있으며 최신 악성 코드는 필요에 따라 복합적으로 작동하므로 탐지하기 어렵다.
악성코드는 크게 두 가지 기준으로 분류할 수 있는데, 감염 경로를 기준으로 분류하거나 감염된 후의 행동을 기준으로 분류한다.
악성 코드 분류 기준
악성 코드의 감염 경로는 매우 다양하다 감염 경로를 기준으로 분류하는 방법에는 기존의 실행 파일이나 온라인 스크립트를 바이러스로 감염시켜 다른 시스템으로 퍼지게 하는 방식이 있다. 또한 웜이나 다운로더를 통해 소프트웨어의 취약점을 악용해 악성 코드를 증식시키는 방식이 있으며 SNS를 통해 사용자가 보안 시스템을 생략하게 하여 트로이 목마(Trojan horse)를 설치하거나 피싱 공격을 하는 방식도 있다.
목표 시스템에 접근하여 시스템과 데이터를 파괴하거나 봇넷(botnet)의 일부인 봇으로 만들어 공격하는 데 활용하거나 개인 정보를 키로깅이나 스파이웨어 등으로 유출하거나 또는 악성 코드 자신의 존재를 숨기기 위해 시스템의 감지 기능을 무력화하는 등의 다양한 행동을 한다.
악성 코드의 종류
바이러스 : 악성 코드 종류 중 하나인 바이러스는 1980년대 초 발견되었으며 프레드 코헨(fred cohen)에 의해서 바이러스라는 명칭을 얻었다. 바이러스가 실행되면 컴퓨터 프로그램에 대해서 직접적으로 소스 코드나 프로그램 자체를 수정하면서 바이러스 코드를 삽입하여 이를 복제한다. 이때 바이러스는 기존 프로그램 코드에 바이러스 코드를 호출하는 루틴도 함께 삽입하여 바이러스 코드가 실행되도록 수정한다.
바이러스 코드의 복제와 삽입이 성공하였을 경우 영향을 받는 영역이 감염되는 것이다.바이러스는 기존의 실행 파일에 숨어서 기생하는 소프트웨어이며 계속해서 복제와 번식을 반복한다.
바이러스의 프로세스는 다음과 같이 나타낼 수 있다.
1. 바이러스가 엔트리 포인트에 진입하면서 실행된다.
2. 엔트리 포인트부터 계속 실행되면서 악성 코드가 암호화된 루틴에 도달하면 악성 코드를 실행하기 위한 복호화가 진행된다.
3. 복호화를 진행하고 나면 암호화된 바이러스가 실행된다.
바이러스를 제작하는 사람들은 사회 공학적 기법이나 취약점 탐지를 이용하여 시스템을 감염시키고 바이러스를 퍼뜨린다.
WIndows, Mac, Linux 운영 체제는 대부분 바이러스의 공격 대상이 된다. 바이러스는 이러한 운영 체제와 프로그램을 공격할 때 안티바이러스 소프트웨어 탐지 기법을 피할 수 있는 복잡한 방식을 사용한다.
바이러스는 특정 이익 개인적인 재미 취약점 알림 서비스 방해 및 거부 사이버 보안 문제 인공적인 생명과 진화적 알고리즘을 위해 만들어진다. 이러한 이유로 만들어진 바이러스는 시스템 장애 컴퓨터 자원 낭비 데이터 손상 유지 관리 비용 증가 키 입력 기록 및 개인 정보의 도용 등 수십 억 원 이상의 경제적인 피해를 만들기도 한다.
바이러스에 감염된 컴퓨터가 감염되지 않은 컴퓨터와 네트워크상에서 연결되면 바이러스는 연결된 컴퓨터로 전달되며 감염되지 않은 컴퓨터의 사용자는 아무것도 모른 채 감염당한다.
감염된 상태를 인지하지 못한 사용자는 네트워크상 또 다른 컴퓨터와 연결하거나 또는 USB저장 매체를 이용하면서 바이러스가 전달되고 점점 더 널리 번지게 된다. 이와 같이 바이러스가 컴퓨터의 문서 응용 프로그램 나아가 시스템 서비스에 접근할 때 네트워크와 연결되어 있다면 바이러스가 퍼져 나가기에 최적의 조건을 제공하는 것이다.
문제는 거의 모든 PC가 네트워크와 연결되어 있다는 것이다. 또한 바이러스가 프로그램을 수정하며 악성 행위를 하는 코드를 삽입한 경우에는 프로그램의 작업 권한과 동등한 권한을 가지고 더욱 다양한 행위를 할 수 있다.
초기 바이러스가 발견되었을 때는 사용자 인증이나 접근 제어의 기능과 같은 보안 개념이 미비하여 많은 피해가 발생하였다.
바이러스는 감염 코드 실행 코드 공격 코드로 구성되어 있다.
감염 코드는 Infection Vector 라고도 불리며 바이러스가 자신을 복제하고 번식시키는 코드를 갖고 있다.
실행 코드는 Logic Bomb 이라고도 불리며 공격 코드가 실행되거나 전달되는 시점이 되는 이벤트나 조건을 정의하고 있다.
공격 코드는 바이러스가 감염 번식하는 기능 외 모든 기능을 가지고 있다.
시스템에 피해를 유발할 수도 있고 피해는 없으나 사용자의 업무를 방해할 수도 있다.
바이러스는 휴면기 번식기 실행기 공격기를 거치며 반복적으로 활동한다.
휴면기에는 바이러스가 활동하지 않는다. 하지만 특정 조건을 만족하면 바이러스는 활동한다.
예를 들어 특정 날짜가 되거나 어떤 프로그램이나 파일이 존재하거나 하드 디스크의 용량이 특정 선을 넘었을 때 바이러스가 활동한다. 번식기에는 바이러스가 다른 프로그램이나 시스템 영역에 자신을 복사해 둔다 이때 원본 바이러스와 복사한 바이러스는 자신을 숨기기 위해 다른 형태를 보일 수 있다.
실행기에는 바이러스가 계획한 기능을 수행하도록 활성화된다. 바이러스는 다양한 계기로 활성화된다.
예를 들면 바이러스가 복제된 횟수에 따라 활성화 될 수 있다.
공격기에는 바이러스가 정해진 기능을 수행한다. 화면에 특정 메시지를 띄우는 비파괴적인 기능이나 프로그램과 데이터를 제거하는 파괴적인 기능을 수행한다.
공격 대상을 기준으로 분류한 바이러스 종류
바이러스 종류 | 설명 |
부트섹터 바이러스 | 컴퓨터를 부팅했을 때 가장 먼저 실행되는 프로그램이 들어 있는 하드 디스크의 가장 첫 부분에 감염되는 바이러스를 의미한다. 컴퓨터의 부팅을 방해한다. |
파일 바이러스 | 운영체제나 셸을 통해 실행 기능 파일들을 감염시킨다. |
매크로 바이러스 | MS워드 한글 파일 PDF 등 문서 프로그램의 매크로 기능을 이용해 제작된 바이러스다. |
다형적인 바이러스 | 한 파일을 여러 방식으로 감염시키며 주로 다양한 종류의 파일들을 감염시키는 바이러스를 의미한다. |
은닉하는 방법을 기준으로 분류한 바이러스 종류
바이러스 종류 | 설명 |
암호화 바이러스 | 바이러스가 임의의 암호화 키를 만들어 바이러스를 암호화한다. 암호화 키는 바이러스 내부에 존재하며 감염된 프로그램이 실행되면 바이러스는 암호화 키를 사용하여 나머지 부분의 내용을 복호화하여 감염시킨다 복제 시에는 새로운 임의의 키가 만들어지며 함께 배포된다 바이러스들이 모두 다른 암호화 키로 암호화되어 있어 바이러스의 특정 패턴을 찾아내기 어렵다. |
은밀한 바이러스 | 안티바이러스 소프트웨어로부터 자신을 숨기는 데 초점을 맞춘 바이러스다. 이를 위해서 압축과 같은 코드 뮤테이션이나 루트킷과 같은 기술을 사용한다. |
다형화 바이러스 | 매 감염마다 자신의 형태를 변화하여 시그니처를 이용하는 백신으로부터 자신을 보호한다. 완전히 다른 비트 패턴을 가진 바이러스를 복제 생성하여 안티바이러스 프로그램의 기능을 무력화시킨다. |
무형의 바이러스 | 다형화 바이러스처럼 무형의 바이러스는 매 감염마다 자신을 변화시킨다. 하지만 다형화 바이러스와 달리 무형의 바이러스는 매 감염마다 완전히 새로 생성되어 감지가 더욱 어렵다. 또한 형태뿐만 아니라 행동 패턴의 변화까지도 시도한다 |
웜
최초의 웜은 휴면 상태의 시스템을 찾아 CPU 작업이 요구되는 일을 수행하는 위험하지 않은 소프트웨어에 불과했다.
하지만 웜이 자체 복제를 시작하면서 악성 코드로 분류되기 시작했다. 이 복제는 감염된 컴퓨터에서 활동하면서 악성 코드로 분류되기 시작했다. 이 복제는 감염된 컴퓨터에서 활동하면서 다른 컴퓨터도 함께 감염시키는 것이 주된 목적이다.
최근에는 가장 흔히 발견되는 악성 코드이며 다른 컴퓨터의 취약점을 탐지하여 네트워크를 통해 전달된다.
웜은 일반적으로 네트워크 대역폭을 사용하면서 웹 서버에 과부하를 일으킬 수 있으며 감염된 컴퓨터를 손상시키는 페이로드가 포함되어 있을 수 있다. 페이로드는 단순히 웜을 퍼뜨리는 것 이상으로 감염된 컴퓨터에서 특정 작업을 수행하도록 하는 코드이다. 페이로드는 일반적으로 개인 정보 유출 파일 삭제 봇넷 생성 등의 행위를 하도록 설계된다. 웜이 페이로드를 포함하고 있지 않아도 막대한 피해를 가져올 수 있다.
웜은 자체적으로 복제를 할 수 있으며 독립적으로 번질 수 있다. 반면에 바이러스는 사용자의 활동에 의존적이다. 사용자의 활동에 바이러스는 사용자의 활동에 의존적이다. 사용자의 활동에 의해서 번질 수 있다. 웜은 감염된 사용자의 이메일과 주소록을 통해서 대량의 웜이 담긴 스팸 메일을 전송하기도 한다.
웜의 증상으로는 컴퓨터 성능의 저하 프로세스 간 충돌과 정지 현상 프로그램의 자동 실행 불규칙적인 웹 브라우저 성능 비정상적인 컴퓨터 행동 방화벽 경고 사라지거나 수정되는 파일 운영 체제의 오류 발생 및 시스템 오류 등이 있다.
워너크라이(wannacry)같은 랜섬웨어 크립토웜(crypto worm)이 대표적인 예시이다.
워너크라이는 취약점 도구인 eternalblue을 통해서 널리 퍼져 많은 피해를 일으켰다.
Morris 웜과 Mydoom 웜은 페이로드가 포함되어 있지 않음에도 불구하고 대량의 네트워크 트래픽을 증가시켜 주요 시스템을 중단시키는 피해를 일으켰다.
웜은 자신을 복제하고 퍼뜨리기 위해 다른 원격 시스템에 접근하는데 이메일 공유 폴더 특정 네트워크 포트 운영 체제의 보안 취약점 등 다양한 접근 방식을 사용하고 있다.
트로이 목마
트로이 목마는 정상적이면서 합법적인 프로그램처럼 위장하여 시스템에 침입한 뒤 자신의 이빨을 드러내는 악성 코드이다. 고대 그리스 이야기에서 트로이라는 도시를 함락시킨 트로이 목마에서 유래했다. 트로이 목마는 보통 피싱(phishing)과 같은 사회 공학적 방식으로 퍼져 나간다.
이메일에 정상적으로 보이는 문서 파일을 첨부하여 실행하게 만드는 것이 대표적인 예다. 한 번 첨부된 문서가 열리는 즉시 트로이 목마가 설치되며 악성 코드가 실행된다. 트로이 목마의 페이로드는 어떤 것도 될 수 있다.
대부분의 페이로드는 공격자에게 감염된 컴퓨터의 승인되지 않은 접속을 허용하는 백도어를 제공한다.
트로이 목마는 공격자가 인터넷 활동 정보 은행 로그인 계정 정보 등의 개인 정보들에 접근할 수 있도록 한다.
랜섬웨어를 통한 공격도 트로이 목마를 이용하여 피해를 준다.
다른 컴퓨터 바이러스나 웜과는 다르게 트로이 목마는 악성 행위를 하는 코드를 특정 파일에 삽입하려는 시도가 없으며 번식하지 않는 특징이 있다.
루트킷
root와 kit의 합성어로 컴퓨터나 네트워크에 대한 관리자 수준의 액세스를 가능하게 하는 도구의 모음이다.
또는 악성 코드를 모아 컴퓨터 또는 소프트웨어에 승인되지 않은 접근을 할 수 있도록 한다.
루트킷은 자동으로 설치되거나 공격자가 관리자 권한으로 설치할 수 있다. 접근은 취약점 탐지나 비밀번호 크래킹 피싱을 통해서 시스템에 직접적인 공격을 하여 얻을 수 있다.
루트킷을 탐지하는 것은 어렵다 루트킷은 안티바이러스 프로그램을 파괴할 수도 있기 때문이다.
신뢰할 수 있는 탐지 방법으로는 운영 체제 자체 안티바이러스 탐지 프로그램의 동작 모니터링 시그니처 스캐닝 메모리 덤프 분석 등이 있다.
루트킷이 커널 내부에 있다면 루트킷을 제거하는 것은 복잡하거나 거의 불가능하다.
펌웨어 루트킷은 하드웨어 교체나 특수 장비가 필요할 수 있다.
또한 루트킷을 예방하거나 탐지하는 것 역시 은밀하게 활동하는 특성으로 인해서 어려움이 있다.
따라서 일반적인 안티바이러스 프로그램을 통해서 탐지 제거하기는 어렵다.
랜섬웨어
랜섬웨어(ransomware)는 악성 코드의 형태이며 공격자는 컴퓨터 시스템 또는 데이터를 암호화하여 사용자에게 금전적인 요구를 하여 금전적인 이익을 얻기 전까지 시스템 또는 데이터에 접근할 수 없도록 한다.
랜섬웨어는 보통 피싱 이메일 악성 코드를 포함하고 있는 광고를 클릭하거나 감염된 웹 사이트를 방문하면서 퍼진다.
랜섬웨어 공격은 데이터 유출 지식 재산 절도를 유발한다 공격자는 금전적인 이익을 얻기 위해서 비트코인과 같은 암호 화폐를 지불하도록 유도하며 돈을 지불했을 경우 암호화된 데이터를 복호화하겠다고 약속한다.
하지만 랜섬웨어에 감염되었을 경우 공격자에게 절대로 돈을 지불해서는 안된다.
초기에 지불한 금액의 대가로 일부를 복호화할 수 있는 키를 주는 이유는 돈을 지불하면 키를 준다는 소문을 내기 위해서다.
그레이웨어
그레이웨어(grayware)는 2004년 말에 발견된 악성 코드의 일종이다.
그레이웨어는 악성 행위를 하지 않는 원하지 않는 응용 프로그램이나 파일을 의미한다.
악성 행위는 하지 않으나 개수가 늘어나면서 컴퓨터의 성능을 저하하고 사이버 보안 위험을 야기할 수 있다.
그레이웨어는 최소한의 경우 바람직하지 않은 행위를 할 수 있으며 최악의 경우 시스템과 통신 기기의 정보를 모니터링 할 수 있다. 그레이웨어는 애드웨어(adware)나 스파이웨어(spyware)와 같다 이러한 그레이웨어는 대부분의 안티바이러스 소프트웨어를 통해서 탐지 및 삭제를 할 수 있다.
파일리스 악성코드
컴퓨터를 감염시키기 위해서 정상적인 프로그램을 이용한다. 다른 악성 코드의 감염 방식과는 다르게 파일리스 악성 코드는 파일 형태로 시스템에 존재하지 않아 흔적을 남기지 않는다. 이러한 이유로 해당 악성 코드는 안티바이러스 소프트웨어에 탐지되지 않아 삭제하기 까다롭다. 파일리스는 RAM과 같은 컴퓨터 메모리에 폐쇄적으로 잠시 존재한다.
파일리스 악성 코드는 2017년에 처음 등장해 사이버 보안을 위협하였다. 파일리스 악성 코드는 컴퓨터 하드 드라이브에 활동을 한 기록이 남지 않아 파일 기반의 화이트리스트 시그니처 탐지 하드웨어 검증 패턴 분석 또는 타임 스탬프 분석으로는 탐지하기 힘들다. 파일리스 악성 코드는 매우 작은 흔적만 남기는데 이러한 증거는 보통 악성 행위를 했다는 것만 남기 때문에 어떤 행위를 했는지는 찾아보기 힘들다.
여기서 작은 흔적이란 메모리 내에서 작동하도록 설계되어 있으나 시스템이 재부팅하기 전까지만 남아 있는 정보를 의미한다.
애드웨어
애드웨어는(adware) 그레이웨어의 일종으로 웹 브라우저나 팝업 창으로 나타나는 광고에 악성 코드를 삽입하여 광고를 클릭하면 악성 행위를 수행한다. 일반적으로 다른 프로그램에서 애드웨어를 광고로 인식하면서 합법적으로 구분하여 컴퓨터 태블릿 스마트폰에 설치하도록 속인다. 애드웨어는 많은 금전적 이익을 얻는 유해한 악성 코드 중 하나이다.
애드웨어는 소프트웨어 사용자에게 광고를 자동으로 나타나게 하여 수익을 창출하는 방식을 사용한다.
악성광고
악성광고(malvertising)는 악성 행위와 광고의 합성어로 악성 광고는 악성 코드를 유포하기 위해서 광고를 이용하는 것이다. 웹 브라우저나 팝업 창으로 띄워 유포한다.
스파이웨어
스파이웨어(spyware)는 악성 코드의 일종으로 사용자 기관 조직 등에서 지식 재산 정보를 수집하여 공격자에게 사용자가 눈치채지 못하게 전송한다.스파이웨어는 은밀하게 사용자의 인터넷 사용 데이터 신용 정보 은행 계좌 정보 등 개인의 중요한 정보를 집중적으로 훔치는 데 목적을 둔다 스파이웨어는 소프트웨어를 설치하면서 함께 설치될 수 있고 이를 통해 기기의 설정을 변경하여 정보를 훔친다.
봇, 봇넷
봇(bot)은 악성 코드에 감염되어 공격자에 의해 조종이 가능한 컴퓨터를 의미한다. 봇은 좀비 컴퓨터라고도 불리며 네트워크로 연결된 다른 컴퓨터에도 공격을 가할 수 있다. 또는 봇넷의 일부가 된다. 봇넷은 봇들의 연결된 집단을 의미한다.
공격자가 특정 명령을 내리면 봇넷에 있는 감염된 봇들은 특정 행동을 수행한다.
봇넷은 다수의 봇을 거느릴 수 있기 때문에 분산 서비스 거부 공격(DDOS)에 자주 사용되는 기법이다.
또한 랜섬웨어와 키로거 등 다른 악성 코드를 유포하는 데도 사용될 수 있다.
백도어
백도어를 통해 공격자는 컴퓨터 제품 전자기기 등에서 일반 인증이나 암호화를 우회해서 원격으로 접속하며 데이터에 접근한다. 백도어는 일반적으로 컴퓨터에 원격 접근을 하거나 암호화된 파일에 접근할 수 있게 한다.
중요한 데이터에 접근하는 것뿐만 아닌 손상 삭제 전송 등을 할 수 있다.
백도어는 프로그램 펌웨어 운영체제 등 다양한 곳에서 식별되지 않도록 숨겨져 있는 경우가 대다수이다.
또한 백도어는 쉽게 만들 수 있고 널리 유포할 수 있다.
백도어는 다양한 제조업에서 사용자 암호를 재설정 하는 데 합법적으로 많이 사용 되고 있다.
브라우저 하이재킹
사용자가 특정 페이지로 가거나 자신의 홈페이지를 변경하거나 원하지 않는 툴바를 설치하거나 다른 웹 페이지로 이동하도록 하는 등 원하지 않는 행위를 하도록 한다.
크라임웨어
크라임웨어(crimeware)는 사이버 범죄를 자동으로 일으킬 수 있게 만들어진 악성 코드의 일종이다. 사회 공학 또는 스텔스 기능을 통해서 신원을 도용하여 피해자의 금융 및 중요한 계정에 액세스한다. 금전 지적 재산 민감한 정보 등을 훔치거나 무단 거래할 수 있도록 설계된 악성 코드의 일종이다.
악성 모바일 앱
구글 플레이나 앱스토어에서 배포하고 있는 모든 앱이 합법적이고 안전한 것은 아니다.
악성 모바일 앱은 사용자 정보를 도용할 수 있고 네트워크에 액세스 할 수 있으며 사용자가 원하지 않는 광고를 계속 보거나 장치에 백도어가 설치된다.
RAM 스크래퍼
RAM이나 메모리에 임시 저장된 데이터를 모으는 악성 코드의 일종이다. 이러한 유형의 악성 코드는 캐시 레지스터와 같은 메모리를 타깃으로 설정해 악성 행위를 한다. 신용 정보 등의 민감한 정보는 캐시 레지스터에서 암호화되어 전송되는데 이전까지는 암호화되지 않은 상태로 남아 있어 민감한 정보가 노출될 위험이 있다.
크립토재킹
피해자의 컴퓨터 전력 자원을 무단으로 이용해서 가상 화폐를 채굴하는데 사용되는 악성 코드이다.
사회 공학 피싱
악성 코드는 아니지만 악성 코드의 유포 및 공격하는 데 사용되는 대중적인 전달 방식이다.
공격자는 피해자가 피싱 웹 사이트에 접속하도록 유도하며 동시에 피싱 기능을 가진 파일을 이메일로 함께 보내면서 공격 성공 가능성을 높일 수 있다.
악성 코드의 침투기법
취약점 공격
익스플로잇(exploit)이라고도 불리는 취약점 공격은 대부분의 해커가 사용하는 기법 중 하나이다.
취약점 공격은 컴퓨터 하드웨어와 소프트웨어를 이루고 있는 소스 코드의 취약점이나 설계적인 결함을 공격하여 악의적인행동을 하는 것을 의미한다. 취약점 공격을 통해 루트킷 DoS공격 등을 하는 것을 목표로 하며 시스템 내부의 데이터를 탈취하거나 삭제하는 공격을 할 수 있다. 또한 제로 데이 공격은 소프트웨어의 취약점을 탐지 및 공격하여 해당 취약점에 대한 업데이트나 패치가 나오지 않은 시점에 공격한다.
취약점 공격은 공격 대상에 따라서 여러 종류로 나뉘는데 대표적으로 XSS 취약점 공격과 버퍼 오버 플로 공격이 있다.
제로 데이 공격은 해당 취약점에 대한 대책이 없기 때문에 공격을 바로 막을 수 없어 다수가 큰 피해를 입을 수 있다.
펌웨어 운영 체제를 업데이트 할 경우 안정 버전이 나온 뒤에 업데이트를 하는 것이 좋다.
취약점 공격을 방지하기 위해서는 항상 인증된 최신 업데이트를 적용하여 취약점을 보완하는 것이 최선의 방법이다. 또는 하드웨어나 소프트웨어의 취약점을 탐지해 주는 소프트웨어를 설치해 보안성을 높일 수 있도록 한다.
워터링 홀
특정 사용자에 대한 정보를 수집하여 사용자가 주로 접속하는 웹 사이트를 추측하거나 알아낸다.
알아낸 정보를 바탕으로 해당 웹 사이트에 악성 코드를 심어 두거나 웹 사이트를 감염시켜 접속한 사용자가 감염되도록 한다.
사용자가 주로 방문하는 웹 사이트가 하나가 아니라면 위험에 노출될 가능성이 더욱 높다 워터링 홀 공격 기법을 통해서만 기밀 정보를 빼내거나 보안이 취약한 회사의 데이터를 빼낼 수 있다.
워터링 홀 공격에 당하지 않기 위해서는 안전하지 않은 웹 사이트는 접속하지 않는 것이 최선이다. 사용자가 접속하는 웹 사이트가 많으면 많을수록 방어가 어렵다 또한 악성 코드가 적용된 웹 사이트를 탐지할 수 있는 안티바이러스 소프트웨어를 설치하여 상시 가동한다. 최근에 사용되는 인터넷 프로그램들은 자체적으로 안전하지 않은 사이트를 검열하여 필터링해 주는 기능이 탑재되어 있다. 오래된 인터넷 프로그램을 업데이트하거나 필터링 기능이 있는 인터넷 프로그램을 사용하여 최소한의 방어를 할 것을 권장한다.
스피어 피싱
특정인의 정보 수집을 목적으로 하는 사회 공학적 기법이다.
공격자는 특정인의 지인으로 위장하여 악성 코드가 포함된 문서나 압축 파일 실행 파일을 이메일에 첨부하여 전송한다.
특정인이 지인이 보낸 것으로 착각하여 이메일에 첨부된 파일을 열면 악성 코드가 함께 실행된다.
악성 코드는 해당 컴퓨터에 있는 기밀 문서 중요도가 높은 자료 등을 공격자에게 전송한다.
스피어 피싱을 예방하기 위해서는 누군가가 보낸 이메일 속의 첨부 파일 웹 사이트 링크 등을 유심히 살펴보고 열어야 한다.
'Ⅲ. 정보보안' 카테고리의 다른 글
PHP 파일 업로드 (0) | 2024.02.10 |
---|---|
PHP 프로그래밍 (0) | 2024.02.10 |
Apache에 php 연동하는 방법 (1) | 2024.02.06 |
개인 웹 서버로 위키 만들기 (미디어 위키, XAMPP) (3) | 2024.02.06 |
정보보안 기본 개념 2 (0) | 2024.02.05 |