검수요청.png검수요청.png

블랙리스팅

위키원
이동: 둘러보기, 검색

블랙리스팅(blacklisting)은 악성코드를 탐지할 경우 이를 사용자에게 알려주는 기술이다. 코드레드(CodeRed), 님다(Nimda), 컨피커웜(Conficker worm) 등의 악성코드를 탐지한다. 블랙리스트 또는 블록리스트라고도 한다.

개요[편집]

블랙리스팅 기술은 악성 호스트들의 집합으로 스팸 발송, 악성 코드 전파, 봇 CnC 서버 등에 사용되는 호스트들을 등재한다. 이는 세계적인 보안 업체들이나 ISP 들에 의해 관리되어 주기적으로 업데이트되고 있는데, 관리되는 블랙리스트에는 호스트들의 IP 리스트, 악성 행위에 사용되는 도메인 이름들 DNS 블랙리스트가 포함된다. 최근 들어 웹을 통한 감염이 많아지면서 악성 코드가 심겨져 있는 웹 페이지에 접근하는 URL들도 블랙리스팅으로 관리하고 있다. 악성코드 배포자들은 되도록이면 탐지를 피하기 위하여 공격을 하는 경우에도 임계치를 벗어나지 않도록 분산된 공격을 하는 경향이 있으며, 일반적인 통신과 구별되지 않도록 위장하는 경우가 많다. 그런 노력에도 불구하고 악성 호스트들은 탐지되는데, 탐지되는 경우에는 해당 역할을 하는 호스트를 다른 호스트로 이전시켜 IP 기반의 탐지를 회피하거나, DNS 블랙리스트에 등재되는 경우에는 도메인 이름을 바꾼다든지, 또는 도메인 이름은 그대로 둔 채 IP 주소만을 바꾸어 탐지를 회피하는 경우도 많다. URL의 경우에는 축약된 URL을 사용하는 방식으로 블랙리스트에 의한 탐지를 회피하려는 시도가 이루어지고 있다. 또한 한 번 탐지되는 경우 다른 URL을 다시 사용하여 회피하고 있다. 이와 같이 악성코드 배포자들과 보안 관련자들 사이에 싸움이 지속되고 있는 과정에서 블랙리스트 관리를 통해서 악성 호스트들에 대한 탐지가 이루어질 수 있느냐에 대한 의문도 지속되고 있다. 그러나, 지속적인 모니터링을 통해서 블랙리스트를 관리하게 된다면 즉각적인 대응이 가능하다.[1]

한편 일반적으로 블랙리스트는 '요주의 인물 명부'라는 뜻으로 사용되는 말이다. 특히 미국에서는 노동관계의 은어로 사용되어 왔다. 미국의 노동조합은 미조직 사업소를 조직할 때 조합의 전임 조직책을 파견한다. 조직책은 대상 사업소에 취직하여 내부에서 조직하거나, 대상 사업소 종업원과의 접촉을 통하여 외부로부터 조직화하는 방법으로 조합을 조직한다. 이와 같은 노동조합의 조직 활동에 대항하여 사용자는 조합 조직책의 인물 명부 작성을 흥신소 등에 의뢰하고 그 명부를 이용하여 조직화에 대응하였는데, 이 인물 명부가 블랙리스트이다. 한편 노동조합도 조합에 대한 부당노동행위가 두드러진 기업을 밝혀내 요주의 기업의 명부를 작성하였는데 이 같은 기업 명부도 블랙리스트라고 한다.[2]

특징[편집]

비교[편집]

컴퓨팅에서 블랙리스트 또는 블랙리스팅은 명시적으로 언급된 것을 제외한 모든 요소(이메일 주소, 사용자, 암호, URL, IP 주소, 도메인 이름, 파일 해시 등)를 통해 허용하는 기본 접근 제어 메커니즘이다. 블랭리스팅을 통해 그 목록 항목들의 접근을 거부하는 것이다. 블랙리스트의 반대는 화이트리스트(whitelist)인데, 이것은 목록에 있는 물건만이 사용되고 있는 게이트가 무엇이든 통과한다는 것을 의미한다. 그레이리스트(greylist)에는 추가 단계가 수행될 때까지 일시적으로 차단(또는 일시적으로 허용)되는 항목이 포함되어 있다.[3] 블랙리스트는 '네거티브', 화이트리스트는 '포지티브' 보안 방법으로 불린다.[4] 블랙리스트 방식은 악성 IP에서 발송되는 이메일을 제외한 모든 이메일을 허용하는 반면 화이트리스트 방식은 정상 IP에서 발송되는 이메일만 허용하고, 그 외의 IP에서 오는 이메일은 차단한다. 화이트리스트 보안은 안전이 입증된 것만 허용하기 때문에 강력한 보안성을 유지할 수 있다. 하지만 사용의 어려움으로 인해서 전면적으로 이용되지 못한다. 이메일을 예로 들면, 화이트리스트 방식만 적용하게 되면 승인된 사용자라고 하더라도 이메일을 내부 사용자에게 전달할 수 없게 되는 불편이 생길 수 있다.[4] 블랙리스트의 대표적인 방식의 솔루션은 안티바이러스 솔루션이다. 이 솔루션은 위험성이 판명된 악성코드에 대해 시그니처를 제작하고, 유입되는 파일을 시그니처와 비교, 검토한 후 치료, 혹은 차단함으로써 위협을 방지한다. 이 솔루션의 방식은 편의성이 높지만, 알려지지 않은 신종 공격에 취약하다는 단점을 가지고 있다.[4] 보안 솔루션을 구매하여 설치하였음에도 랜섬웨어에 당했다는 것은 보안 솔루션의 수명이 다 되었다는 뜻이다. 해커들은 계속해서 새로운 종류의 랜섬웨어를 개발 중인데, 파일이 없는 형식의 멀웨어(fileless malware) 등 많은 변종이 등장하면서 기업 네트워크를 침입하는 방법도 다양해졌다. 실제로 보안 업체 아카마이(Akamai)가 시행한 연구에 따르면, 피싱 공격자들은 유명 브랜드들이 운영하는 웹사이트들의 각종 그래픽 요소들을 복사하여 가짜 사이트를 만든다. 이러한 피싱 사이트의 20%가 현재의 블랙리스트 기술로 탐지되지 않고 있다는 결과가 있다.[5] 블랙리스팅으로는 새로운 랜섬웨어 공격에 대처할 수 없다. 따라서 한 가지 기술만 아니라 화이트리스팅, 머신러닝 등 솔루션들을 고루 도입해야 한다.[6]

많은 바이러스 차단 및 악성코드 차단 프로그램은 사실상 블랙리스트이다. 알려진 악성코드 목록이 포함되어 있어 이런 프로그램이 컴퓨터에서 탐지될 때면 자동으로 차단하기 때문이다. 블랙리스트는 최신 공격을 차단하기 위해서 지속해서 업데이트를 해야 한다는 단점이 있다.[7] 따라서 최신 공격을 차단하기 위해서는 위험 요인을 차단하는 블랙리스팅보다는 투입되는 모든 재료의 안정성을 증명하는 화이트리스팅이 완벽한 소프트웨어를 목표로 하게 될 때 더 중요하다.[8] 공격용 툴킷의 확산과 악성코드 변종의 범람으로 기존의 전통적인 시그니처 기반의 보안 솔루션으로는 신종 보안 위협에 대응하기 더 어려워지고 있기 때문에 새로운 신기술 도입이 필수적이다. 공격자들이 새로운 변종을 끊임없이 만들어 소수를 겨냥하는 마이크로 공격이 늘어나면서 적용할 수 있는 블랙리스팅이나 화이트리스팅의 범위를 피하는 파일들이 늘어나고 있다. 나쁜 파일들은 파일의 시그니처를 알려주는 블랙리스팅 방법으로 통제하고, 마이크로오피스 프로그램이나 어도비 아크로뱃과 같이 출처가 확실하고 신뢰할 수 있는 파일들은 좋은 파일이라고 알려주는 화이트리스팅 방법을 통해 통제한다. 이 두 그룹에 속하지 않으면 안정성을 알기 어렵다. 즉, 과거에는 집중되는 현상만 보호해도 충분히 효과가 있었지만, 이제는 빈도가 적은 파일들이라도 위험을 무시할 수 없는 롱테일(Long tail) 현상이 생겼다. 이와 같은 보안 위협의 롱테일 효과에 대응하기 위해 평판 기반의 보안 탐지 기술이 등장했다. 사용자들의 평판을 바탕으로 맛집 순위를 매기듯이 전 세계 사용자들의 대중의 지혜를 모아서 프로그램마다 평판을 전산화하면 극소수의 프로그램들은 전문적인 소프트웨어이거나 임의로 생성된 바이러스일 것이기 때문에 극소수의 사람들이 가진 프로그램을 다운로드하려고 할 때, 이를 제지하고 최상의 선택을 권고한다.[9]

활용[편집]

모바일

블랙리스트 관리는 이미 악성코드로 식별된 앱과 자의 스마트폰에 설치된 앱을 비교하여 악성 앱이 설치된 경우 경고 및 해당 앱의 실행을 차단하는 기능이다. 블랙리스트 앱 데이터베이스는 기존의 악성 앱뿐만 신규로 발생한 악성 앱에 대해 신속히 추가되는 것이 관건이다. 안티바이러스 업체와 같은 상용 데이터베이스, 안드로가드(Androguard)와 같은 공개된 데이터베이스, 사용자가 수집한 블랙리스트 데이터베이스와 연결하여 최신 악성코드 정보 제공이 가능하다. 또한 개발자 인지도나 앱의 사용 평가도 악성 의심 앱을 판단하기 위한 자료로 사용할 수 있다. 다양한 경로를 통해 블랙리스트 데이터베이스를 마련한다. 블랙리스트에 해당하는 악성 앱이 설치된 것이 확인되면 스마트폰을 변경한 내역을 확인하기 위해 시스템 점검을 선택 실행할 수 있다. SMS, 국제전화 발신 등의 과금이 부과되는 공격 유형인 경우 해당 앱을 신속히 삭제하거나 프로세스 실행을 중단시켜야 한다. 삭제 후 시스템 검검을 수행하여 시스템 변경 사항 및 통신 이력을 확인할 수 있다. 앱 삭제 전에 시스템 점검을 수행하게 되면 좀더 많은 악성코드의 행위 분석자료 수집이 가능하다.

안드로이드

사용자 입력값 검증 절차의 실행 컨텍스트(execution context)와 검증 과정을 거치는 콘텐츠를 자동으로 탐지함으로써, 숨어있는 은밀한 기능들을 찾아내는 도구인 인풋스코프(Inputscope)로 안드로이드 애플리케이션들을 동원한 실험 과정에서 모바일 앱들에 있는 입력값 검증 기능을 통해 백도어나 블랙리스팅과 같은 은밀한 기능들을 발동시킬 수 있다는 것을 알아냈다. 키워드를 이용하여 몇몇 콘텐츠를 자동으로 차단하여, 검열이나 사이버 불링, 차별행위를 위해 사용되는 블랙리스팅과 관련된 비밀이 2.69%로 4,028개인 것으로 나타났다.[10]

피처

피처는 무슨 목적으로 데이터가 연관되는지를 찾아내는 것이 자동화에 머물 것인지 인사이트를 찾아낼 것인지를 결장하는 핵심 요소라는 뜻과 특징이라는 뜻을 가진다. 높은 위험도의 공격을 많이 하는 IP와 지속적으로 오랜 시간 동안 하는 IP를 찾는 것이 목표라면, 발생시킨 공격의 위험도, 횟수, 기간을 IP 블랙리스팅을 위한 IP 데이터의 피처라고 할 수 있다. IP의 블랙리스팅을 위해서 데이터에서는 다섯 가지의 피처들을 사용해야 한다. 첫 번째로 국내 IP 인지, 해외 IP 인지, 어느 기관의 IP 인지 또는 ISP는 어디인지 등 IP의 정체를 식별해야 한다. 두 번째, 시간과 관련된 피처로, 며칠 동안 이벤트를 발생시켰는지를 알 수 있게 되면 지속적으로 공격을 시도하는 IP 인지, 새롭게 등장한 IP 인지, 한 번 찔러보고 더 이상의 공격의도가 없는 IP 인지 분별할 수 있다. 그리고 영업일, 비영업일, 업무시간, 비업무시간과 같이 시간적 특성에 따라 비율을 따져볼 수 있고, 보안 시스템에 탐지되는 시간 간격을 분석하여 일반 사용자와 블랙리스트와의 서로 다른 패턴을 알아낼 수 있다. 세 번째, 이벤트 발생 범위로, 블랙리스트의 경우 많은 목적지 IP로 접속을 시도하는 경향이 있다. 그리고 취약점을 찾은 후로는 소수의 목적지 IP로 공격을 시도한다. 네 번째, 공격의 다양성으로, 발생시킨 이벤트의 종류가 많다고 하여 블랙리스트라고 단정 지을 수는 없지만, 발생시킨 이벤트 종류가 다양할 때는 시도 때도 없이 여러 가지 이벤트를 발생시키는 경우가 있다. 또 어느 정도 패턴화가 된 전통적 애플리케이션의 취약점을 공격하는 경우도 존재한다. 마지막으로 공격의 강도로, 공격 발생 횟수나 전체 이벤트 중 차단 이벤트의 비율 등을 통해서 공격의 강도를 파악할 수 있다.[11]

구글

구글에서 비밀번호 입력을 해야 하는 로그인 페이지 등 웹사이트 중 HTTP로만 되어 있는 곳은 모두 블랙리스트에 등록했다. 구글은 암호화가 되어 있지 않은 연결들은 트래픽 감소를 유발하겠다는 의도를 가진 것이다. 실제 구글의 블랙리스트에 들어가게 되면 트래픽이 심하게는 95%가 감소하기도 한다.[12]

스팸 댓글

워드프레스를 운영하면서 사이트 방문자가 증가하게 될 때 스팸 댓글과 스팸 회원도 증가하게 된다. 이때 스팸 댓글이 많이 달리는 경우, 블랙리스팅을 이용한 플러그인을 활용하면 대부분의 스팸 댓글이 휴지통으로 바로 들어간다.[13]

웹 애플리케이션 방화벽

새롭게 떠오른 웹 애플리케이션 방화벽(WAF)의 경우, 초기에는 포지티브 방식을 기본 사항으로 여겨졌지만, 운영의 어려움으로 현재는 블랙리스팅 방식의 보안 기법을 함께 사용하는 방식으로 변화했다.[4]

각주[편집]

  1. 최석우, 손춘호, 김경수, 유재형, 〈블랙 리스트 접근 트래픽 감시를 통한 봇 탐지 방법(Bot Detection by Monitoring Traffic to Blacklisted Hosts)〉, 《KT 네트워크 연구소》
  2. 블랙리스트 네이버 지식백과 - https://terms.naver.com/entry.nhn?docId=2209703&cid=51088&categoryId=51088
  3. Blacklist (computing) Wikipedia - https://en.wikipedia.org/wiki/Blacklist_(computing)
  4. 4.0 4.1 4.2 4.3 Edward 로샤스, 〈시큐어 코딩-블랙리스트/화이트리스트〉, 《티스토리》, 2014-03-26
  5. 문가용 기자, 〈현재의 블랙리스팅으로 20%의 피싱 공격은 막지 못한다〉, 《보안뉴스》, 2020-03-12
  6. 홍나경 기자, 〈랜섬웨어 공격과 관련된 최근 현황 네 가지〉, 《보안뉴스》, 2017-01-26
  7. Josh Fruhlinger, 〈‘화이트리스팅이란 무엇인가’ 그 작동 방식과 베스트 프랙티스〉, 《아이티월드》, 2020-06-22
  8. Kenneth van Wyk, 〈소프트웨어 보안 실패, 진짜 원인은...〉, 《아이티월드》, 2013-05-28
  9. 정경원, 〈블랙리스트 비웃는 '롱테일 위협' 정보중심 전략으로 대처하라〉, 《DBR》, 2011-07
  10. 문가용 기자, 〈수천 개의 안드로이드 앱에서 숨겨진 기능 발견되다〉, 《보안뉴스》, 2020-04-06
  11. 전두용, 〈(기고)보안로그 분석 및 블랙리스팅 위한 피처 엔지니어링〉, 《컴퓨터월드》, 2019-03-31
  12. 문가용 기자, 〈구글, HTTPS 도입하지 않은 사이트들 블랙리스팅 하나?〉, 《보안뉴스》, 2017-05-31
  13. 댓글 블랙리스트를 활용하여 워드프레스 스팸 댓글에 대처하기〉, 《워드프레스 정보꾸러미》, 2020-11-14

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 블랙리스팅 문서는 보안에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.