brunch

You can make anything
by writing

C.S.Lewis

by 즐KIN창 심재석 Dec 08. 2018

이메일 암호화 기법 #09

악성 코드는 어떻게 설치되는가?

악성 코드는 어떻게 설치되는가?


우리의 정보를 지키기 위해서는 아이디나 비밀번호 관리가 무엇보다 중요하다. 물론 중요 자료를 암호화하여 보관하거나 패스워드를 설정하여 저장하는 것 또한 중요하다. 


그런데도 해커들은 여러분이 설정한 아이디나 패스워드를 어떻게 알아내는 걸까? 앞에서도 말했지만 해커들은 무슨 엄청난 해킹 기술을 가진 대단한 전문 해커집단이 아니다. 대부분 아주 초보적인 방법으로 해킹을 하는 초보 해커, 어설픈 해커들이 대부분이다. 


바로 이런 해커들을 스크립트 키디(script kiddie) 또는 스키디(skiddie)라고 칭하며 이들은 정교한 해킹프로그램을 짜거나 활용할 수 있는 능력이 부족한 어설픈 해커로 주로 구글링으로 구할 수 있는 해킹 도구들을 이용한다.


이런 해커들은 악성코드를 여러분의 PC에 몰래 숨겨서 설치한 후 여러분이 입력하는 아이디, 패스워드 정보를 가로채는 경우가 대부분이다. 


여기서 말하는 악성코드란 말은 해킹툴, 바이러스, 애드웨어 등을 통칭하는 의미로 요즘은 멀웨어(malware)라고도 한다. 멀웨어는 악성 소프트웨어(malicious software)의 줄임말로 컴퓨터 사용자 시스템에 침투하기 위해 설계되어진 소프트웨어를 뜻하며 컴퓨터바이러스, 웜바이러스, 트로이목마, 애드웨어 등이 포함된다. 


이들은 시스템을 파괴하는 데 그치지 않고 여러분의 개인정보를 해킹해 상업적으로 악용하는 등 그 위험성도 점차 커지고 있다. 또 랜섬웨어(ransom ware)라는 ransom(몸값)과 ware(제품)의 합성어로 인터넷 사용자의 컴퓨터에 잠입해 내부 문서나 스프레트시트, 그림파일 등을 암호화해 열지 못하게 하는 악성프로그램도 있다. 



이것은 여러분의 파일을 모두 암호화시켜 사용할 수 없게 만든 후, 해독용 암호키를 전송해 준다며 금품을 요구하는 악성코드이다. 이 랜섬웨어는 컴퓨터 사용자의 문서나 PC를 ‘인질’로 잡고 돈을 요구해 붙여진 명칭이다.


랜섬웨어에 감염될 경우 파일이 복잡한 알고리즘으로 암호화돼 파일을 열어도 내용을 알 수 없다. 백신 프로그램으로 악성코드를 없애도 암호화된 파일은 복구되지 않아 ‘사상 최악의 악성코드’라고 불린다. 


해커들은 파일을 열 수 있게 해준다는 조건으로 돈을 요구하는데, 기한이 지나면 액수가 더 올라가고 파일을 영원히 복구할 수 없게 하겠다고 협박도 한다. 이들 악성코드는 대부분 다음과 같은 경로로 설치된다.


우선 첫 번째는 인터넷 검색을 하다가 나도 모르게 악성코드가 포함된 파일을 다운로드 받아 설치하는 경우다. 이것 역시 당신 책임이라 할 수 있다. 왜냐하면 당신의 관음증이나 성적호기심을 이용한 성인물, 불법 저작물 이용을 위해 방문한 낯선 사이트 특히 성인사이트나 불법 다운로드사이트, 게임, 영화, 소프트웨어, 동영상 공유사이트 등에서 함부로 잘 모르는 파일을 다운로드 받을 때 많이 일어나는 것이다. 이런 불법적인 다운로드 사이트에서 파일을 내려 받으면 그 파일에 숨겨진 온갖 악성코드들이 당신들의 컴퓨터에 몰래 숨겨져 들어온다.


두 번째는 메일이나 메신저에 첨부파일 형태로 악성코드를 보내 설치하게 유도하는 방식이 있다. 

피싱(phishing)이라고도 하는데 개인정보(private data)와 낚시(fishing)의 합성어로 금융기관을 가장한 이메일 발송하여 이메일에서 안내하는 인터넷주소 클릭하게 하거나, 잘 모르는 사람이 보낸 메일, 무료 쿠폰 당첨 등의 선심성 메일, 호기심을 자극하는 메일 등으로 첨부파일을 열도록 유혹한다.당신의 이 파일을 여는 순간 바로 악성코드가 설치되게 만드는 것이다. 



피싱의 경우에는 가짜 은행사이트로 접속케 유도하여 보안카드번호를 입력토록 요구하여 금융정보를 탈취, 계좌 이체로 금전적인 손해를 끼치는 경우도 많이 발생한다. 요즘 유행하는 랜섬웨어들은 주로 이메일, 소셜 네트워크서비스(SNS), 메신저 등을 통해 전송된 첨부파일을 실행하면 감염되며, 특정 웹사이트를 방문하는 것만으로 감염되기도 한다. 


세 번째는 스미싱(smishing)이란 방법인데 상대방이 신뢰하는 관계를 이용하여 익숙한 메시지나 사진 등을 보내 URL을 클릭하게 유도하여 악성코드를 심는 방법이다. 스미싱이 이루어지는 순간 상대방의 PC나 스마트폰은 이제 해커의 것이나 다름없다. 이런 경우 상대방을 안심시키기 위해 구글 URL 리다이렉션 기능 이용하여 정상적인 서비스를 하는 웹사이트를 가장하고 액티브 X로 악성코드를 설치하게 유도한다. 초기의 바이러스나 웜이 이메일에 첨부된 파일이나 플로피디스크를 통해 전파됐던 반면, 인터넷이 급속도로 보급되면서 멀웨어들은 특정 웹사이트를 접속하는 것만으로도 감염될 만큼 발전을 거듭하고 있다. 


또한 파밍(pharming)이라는 수법은 악성코드에 감염된 사용자 PC를 조작하여 금융정보를 빼내어서 사용자가 정상적인 홈페이지에 접속하여도 피싱(가짜)사이트로 접속이 되도록 유도하여 금전적인 손해를 끼치는 신종 사기수법도 등장했다.


네 번째는 제로데이 취약점을 이용한 워터링 홀 공격(watering hole attack)이다. 

워터링 홀 공격이라는 명칭은 사자가 먹이를 습격하기 위해 물웅덩이(watering hole) 근처에서 매복하고 있는 형상을 빗댄 것에서 나온 말이다. 2012년 말경에 등장한 해킹 공격법으로 알려지지 않은 취약점을 이용해 사용자를 노리는 표적 공격기법이다. 


공격자는 공격 대상이 자주 방문하는 웹사이트에 대한 정보를 파악한 후 제로데이 취약점 등을 이용해 해당 사이트에 악성코드를 심어둔다. 그러면 사용자가 해당 웹사이트에 접속하기만 해도 악성코드에 감염될 수 있다. 공격자는 해킹목표로 삼은 사용자의 정보를 수집해 그가 주로 방문하는 웹사이트를 알아낸다. 


이 웹사이트들을 대상으로 취약점이 있는지를 파악, 해킹이 가능한 웹사이트를 찾아내 제로데이 취약점의 공격코드를 심은 특정 웹사이트로 리다이렉트하도록 자바스크립트나 HTML을 삽입한다. 그리고는 해킹 목표로 삼은 타깃이 방문하기만을 기다리는 것이다. 마치 덫을 설치해 두고 사용자가 걸려들기만을 기다리는 것처럼.


또한 제로데이 공격이란 컴퓨터 소프트웨어의 취약점을 공격하는 기술적 위협으로, 해당 취약점에 대한 패치가 나오지 않은 시점에서 이루어지는 공격을 말한다. 이러한 시점에서 만들어진 취약점 공격(익스플로잇)을 제로데이 취약점 공격이라고 한다. ‘제로데이’라는 단어는 원래 와레즈에서 공개일 이전 혹은 당일 배포되는 해적판 소프트웨어를 지칭한 것이다. 


제로데이 공격 대상물이 되는 프로그램은 공식적으로 패치가 배포되기 전에 감행된다. 이런 프로그램들은 보통 대중들에게 공개되기 전 해킹 공격자들에게로 먼저 배포된다. 단어의 어원은 공격이 감행되는 시점에서 유래한 것으로 제로데이 공격 대상물은 대중과 프로그램 배포자들이 잘 모르는 것이 보통이다.


다섯 번째는 좀 웃기기도 한 것이지만 많이 일어나는 아이디, 패스워드 유출사고인데 PC방에서 게임 계정의 아이디나 패스워드를 유출당하는 경우이다. 여러분의 뒤에서 당신들의 모니터에 입력하는 아이디나 패스워드를 외웠다가 당신들이 PC방을 나가는 순간 게임 계정을 해킹한다. 또 옆자리에 앉아서 PC방의 다른 PC에 키로거라는 키보드입력정보 해킹 툴을 설치해 놓고 기다렸다가 여러분의 입력정보들을 해킹해 가는 경우도 자주 발생하는 아이디, 패스워드 유출사고 중의 하나다.



작가의 이전글 한글의 로마자 모아쓰기 표기법,한글로망 #19
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari