728x90
반응형

 Docker 이미지로 제공되는 Kali linux 사용하기

 

 

https://www.kali.org/docs/containers/official-kalilinux-docker-images/

 

Official Kali Linux Docker Images | Kali Linux Documentation

Kali provides official Kali Docker images that are updated once a week on Docker Hub. You can thus easily build your own Kali containers on top of those that we provide. We offer various images to try and suit your needs, all with a different variation of

www.kali.org

 

설치하기

 도커의 설치는 docker pull 로 이미지를 먼저 내려 받는다.

host$ docker pull docker.io/kalilinux/kali-rolling

컨테이너의 shell 접속하기

host$ docker run --tty --interactive kalilinux/kali-rolling

최초 설치 될 경우 Kali Linux의 기본 패키지가 함께 제공되지 않기 때문에 설치를 해야 한다.

docker# sudo apt full-upgrade -y
docker# sudo apt install -y kali-linux-default. 혹은 kali-linux-headless 

기본 설치가 완료 되었다면 아래 목록에서 원하는 패키지를 설치 한다. 나는 먼저 정보 수집 툴을 설치해 보겠다.

docker# apt install kali-tools-information-gathering

설치 하고자 하는 패키지는 아래를 참고한다.

System

  • kali-linux-core: Base Kali Linux System – core items that are always included
  • kali-linux-headless: Default install that doesn’t require GUI
  • kali-linux-default: “Default” desktop (amd64/i386) images include these tools
  • kali-linux-arm: All tools suitable for ARM devices
  • kali-linux-nethunter: Tools used as part of Kali NetHunter

Desktop environments/Window managers

  • kali-desktop-core: Any key tools required for a GUI image
  • kali-desktop-e17: Enlightenment (WM)
  • kali-desktop-gnome: GNOME (DE)
  • kali-desktop-i3: i3 (WM)
  • kali-desktop-kde: KDE (DE)
  • kali-desktop-lxde: LXDE (WM)
  • kali-desktop-mate: MATE (DE)
  • kali-desktop-xfce: Xfce (WM)

Tools

  • kali-tools-gpu: Tools which benefit from having access to GPU hardware
  • kali-tools-hardware: Hardware hacking tools
  • kali-tools-crypto-stego: Tools based around Cryptography & Steganography
  • kali-tools-fuzzing: For fuzzing protocols
  • kali-tools-802-11: 802.11 (Commonly known as “Wi-Fi”)
  • kali-tools-bluetooth: For targeting Bluetooth devices
  • kali-tools-rfid: Radio-Frequency IDentification tools
  • kali-tools-sdr: Software-Defined Radio tools
  • kali-tools-voip: Voice over IP tools
  • kali-tools-windows-resources: Any resources which can be executed on a Windows hosts
  • kali-linux-labs: Environments for learning and practising on
  • kali-tools-information-gathering: Used for Open Source Intelligence (OSINT) & information gathering
  • kali-tools-vulnerability: Vulnerability assessments tools
  • kali-tools-web: Designed doing web applications attacks
  • kali-tools-database: Based around any database attacks
  • kali-tools-passwords: Helpful for password cracking attacks – Online & offline
  • kali-tools-wireless: All tools based around Wireless protocols – 802.11, Bluetooth, RFID & SDR
  • kali-tools-reverse-engineering: For reverse engineering binaries
  • kali-tools-exploitation: Commonly used for doing exploitation
  • kali-tools-social-engineering: Aimed for doing social engineering techniques
  • kali-tools-sniffing-spoofing: Any tools meant for sniffing & spoofing
  • kali-tools-post-exploitation: Techniques for post exploitation stage
  • kali-tools-forensics: Forensic tools – Live & Offline
  • kali-tools-reporting: Reporting tools

Others

  • kali-linux-large: Our previous default tools for amd64/i386 images
  • kali-linux-everything: Every metapackage and tool listed here
  • kali-desktop-live: Used during a live session when booted from the image

 

설치와 사용을 완료 하였다면 exit 로 나오면 된다.

사용하기

설치를 하고 나서 exit 로 나온 이후에 다시 접속 하고자 할 경우 "docker run --tty --interactive kalilinux/kali-rolling" 명령어로 접속할 경우 새로운 kali-rolling 컨테이너가 뜨고 이전에 설치한 컨테이너는 사용이 불가능 하다. 이전에 설치한 도커 컨테이너를 이용하고자 하는 경우 아래와 같이 사용한다.

kali@kali:~$ docker container list --all
CONTAINER ID   IMAGE                    COMMAND       CREATED         STATUS                          PORTS     NAMES
d36922fa21e8   kalilinux/kali-rolling   "/bin/bash"   2 minutes ago   Exited (0) About a minute ago             lucid_heyrovsky
kali@kali:~$
kali@kali:~$ docker start d36922fa21e8
kali@kali:~$ docker attach d36922fa21e8

  위와 같이 할 경우 이전에 접속하였던 도커 컨테이너에 그대로 접속하여 설치된 명령어의 사용이 가능하다.
  실제 Kali의 명령어들은 아래를 참고한다.

https://www.kali.org/tools/

 

Kali Tools | Kali Linux Tools

Home of Kali Linux, an Advanced Penetration Testing Linux distribution used for Penetration Testing, Ethical Hacking and network security assessments.

www.kali.org

 

728x90
반응형

'보안' 카테고리의 다른 글

해외 임시 핸드폰 번호, 해외 무료 SMS 받기  (1) 2020.03.24
데이터 연계/결합의 개념  (0) 2020.03.01
일회용 메일 주소  (0) 2018.06.25
728x90
반응형

   누구나 핸드폰은 하나 가지고 있는 시대이고 두개, 세개 가지고 있는 사람도 있을 것이다. 언제부터인가 회원 가입이나 본인을 인증하기 위한 수단으로서 핸드폰은 무엇보다도 중요한 수단이 되었다. 다만 국내가 아닌 해외의 경우 본인의 인증을 해야 하는경우, 혹은 전혀 신뢰성 없는 곳에서 SMS 문자를 받아야 하는 경우등이 발생될 수 있다. 

  이럴때 사용해 보면 좋은 온라인 무료 SMS 번호이다.

 

  % 국내 혹은 본인의 인증이 꼭 필요한 곳에는 본인 명의의 핸드폰을 사용하길 바란다. 아래의 경우 SMS 결과가 웹상에 인증없이 노출되어 있기 때문에 중요한 본인을 인증하는 서비스등에 사용할 경우 본인의 메일 노출, 메신저 대화 노출 등이 발생할 가능성이 높다. 

 

미국 번호를 제공하는 사이트

 

아래는 우크라이나 전화 번호로 실제 수령된 SMS 내용이다. 위에서 주의 한대로 임시로 혹은 본인 인증이 필요없는 곳에 사용하기 바란다. 만약 신용카드 번호를 등록하는 곳에 이런 전화번호를 사용 했다고 상상해 보라.. 그리고 누군가 그것을 알았다면 ? (결과가 웹상에 공개되어 버리기 때문에 누군가는 수신된 내역을 검토할 것이고 ID는 웹 사이트의 고객 ID 찾기를 통해서, 패스워드 까지도 변경 가능할 것이다.)

 

  구글링에 노출되는 10개 정도 사이트이다. 다만 실제로 수신된 시간이 최근이 아니고 작게는 10일전, 몇달전으로 된 경우 SMS 수신하지 못한다. 필요한 경우 마지막 수신 시간이 최근인지 확인하고 사용하는것이 필요하다.

 

https://www.raymond.cc/blog/top-10-sites-receive-sms-online-without-phone/

 

Top 10 Sites to Receive SMS Online without a Phone • Raymond.CC

If websites like Google, Yahoo or Microsoft are asking for your telephone number to verify that you are a real user, but if you are not comfortable in providing one, here are the top 10 sites that have free public phone numbers to receive SMS online.

www.raymond.cc

728x90
반응형

'보안' 카테고리의 다른 글

Kali Linux Docker에서 사용하기  (0) 2022.12.31
데이터 연계/결합의 개념  (0) 2020.03.01
일회용 메일 주소  (0) 2018.06.25
728x90
반응형

데이터 연계 결합 지원제도 도입 방안 연구 (정보인권연구소) 발취

 

데이터 연계의 개념

 

데이터 연계(Data Linkage)란 두 개 이상의 출처로부터 동일인이나 동일한 사건, 기관, 장소에 연관된 정보를 함께 가져오는 것을 의미한다. 정보를 결합함으로써 단일 출처의 정보만으로는 알기 힘든 정보 요소 간의 관계가 밝혀질 가능성이 있다. 데이 터 연계는 레코드 연계(record linkage), 데이터 매칭(data matching), 데이터 통합 (data integration) 등으로도 불린다.2)

 

데이터를 연결할 때 사용되는 변수들은 식별 변수와 관심변수, 크게 두 종류로 구 분된다. 식별 변수(Identifying variables)는 이름, 주소, 의료보험번호 등과 같이 개인 식별에 사용되는 변수로서 서로 다른 데이터셋의 연계에 사용된다. 관심변수 (Variables of interest)는 나이, 성별, 수입, 질병, 직업 등 연구의 주된 관심사가 되는 변수들을 의미한다.

 

식별자에는 직접적인 식별자(direct identifiers)와 간접적인 식별자(indirect identifiers) 두 종류가 있다. 직접적인 식별자는 이름, 주민등록번호, 주소 등과 같이 개인을 정확히 구별해낼 수 있는 식별자이며, 데이터들을 연결할 때만 가치가 있는 정보로 연구자들은 별로 관심을 두지 않는 대상이다. 하지만, 직접 식별자는 개인 식 별이 가능하므로 매우 민감한 정보일 수 있다. 그러므로 연구목적의 데이터셋에서 직 접적인 식별자들은 제거한 후에 연구자들이 접근하도록 하는 것이 일반적이다.

 

간접적인 식별자는 다른 정보와의 결합을 통해서만 개인을 구별해낼 수 있다. 대부 분의 간접적인 식별자는 위의 관심변수와 중첩되는 경우가 많다. 예를 들어, 나이, 성 별, 인종과 같은 정보는 개인을 구별하는 데도 사용되지만 중요한 설명요인이 되는 경우가 많다. 간접적인 식별자를 통해서도 개인이 재식별될 가능성이 있는데, 특히 데 이터셋이 연계될 경우 이러한 특징적인 정보들이 증가함에 따라 개인 재식별 가능성 이 증가하게 된다.

 

(2) 데이터 연계의 유형

데이터셋의 상태나 연구의 목적 등에 따라 다양한 데이터 연계 방법을 활용할 수 있다.

 

가. 정확 연계(exact/deterministic linking)

정확 연계는 두 개의 데이터 출처가 고유한 참조번호(reference number)를 공유하 고 있는 경우에 가능하다. 예를 들어, 영국에서는 국가보건서비스(NHS) 번호를 이용 해서 NHS 의료기록들을 연결할 수 있다. 이론적으로 정확 연계의 장점은 확실하고 단순하다는 점이다. 이때 연결에 사용되는 고유식별자가 다른 개인정보를 포함하지 않는 임의번호인 경우가 좋다. 혹시 의도하지 않게 데이터가 유출될 경우, 개인정보를 포함하고 있는 고유식별자보다는 개인정보 노출의 위험성이 낮아지기 때문이다.3)

정확 연계는 연계 필드(match field)의 고유성과 함께, 그 데이터가 정확하다는 것 을 전제로 한다. 연계 필드의 데이터에 오류가 있다면, 당연히 연계로 생성된 데이터 셋에 오류가 발생할 수밖에 없기 때문이다. 이는 연계 필드를 생성하는 기관이 얼마 나 많은 자원을 갖고 있는지와 정확한 연계의 중요성 정도에 달려있다. 예를 들어, 카 드번호와 같이 데이터값의 정확성이 중요한 경우에는 값의 정확성을 즉시 자체 점검 할 수 있는 메커니즘을 가지고 있다.

 

정확 연계가 반드시 임의의 참조번호에 의해서만 이루어지는 것은 아니다. 경우에 따라 이름이나 생년월일 등의 정보를 통해서도 충분히 연계가 가능할 수도 있다. 그 러나 이 경우에는 연계 필드가 고유하고, 정확하다는 전제가 취약해질 수 있다.

 

나. 확률연계(probabilistic matching)

확률연계는 두 개 이상의 데이터셋에서 식별 변수에 해당하는 값을 비교하여 두 레 코드가 동일인에 관한 기록일 가능성을 추정하는 방식이다. 이 방법은 데이터가 부정 확하거나 불완전할 수 있다는 점, 그리고 데이터 출처마다 값이 다른 포맷으로 입력 되었을 수도 있다는 점을 전제로 한다.

서로 다른 데이터 소스가 정확 연계를 위해 동일한 참조번호를 사용하기 위해서는 기관 간의 조정이 필요하지만, 이름, 주소, 나이, 성별 등은 많은 데이터 소스에서 일 반적으로 사용하는 정보들이다. 서로 다른 데이터셋에 공통적인 고유한 참조번호가 없거나, 혹은 법적인 문제를 포함한 여러 가지 이유로 사용하기 힘들 경우 확률연계 를 수행할 수 있다.

두 레코드가 동일인에 관한 것일 확률을 측정하는 것이므로 오류 가능성이 존재한 다. 이러한 오류 가능성은 동일인에 관련된 레코드가 아님에도 연결하는 경우와 실제 로 연결되는 레코드가 있음에도 연계되지 않는 경우가 있을 수 있는데, 전자를 1종 오류(false positives), 후자를 2종 오류(false negatives)라고 부른다.

연계 실제

True Match

True Non-Match

Link

True Positive

False Positive (1종 오류)

Non-Link

False Negative (2종 오류)

True Negative

표 2-1 데이터 연계 오류

* 출처: 오미애 등 (2014)

 

확률연계를 수행하는 소프트웨어는 데이터를 사용자가 설정한 일정한 오차범위를 갖고, ‘매칭됨(matched)’, ‘매칭되지 않음(unmatched)’, ‘불확실(uncertain)’ 등으로 분류 하게 된다. 그 목적은 사용자가 ‘매칭됨’ 및 ‘매칭되지 않음’은 유효하다고 생각하고, ‘불확실’ 영역에 초점을 맞추어 검토하도록 하는 것이다. 이렇게 사람이 직접 개입함 으로써(이를 clerical matching이라고 한다) 연계율을 높일 수 있다.

확률연계는 정확 연계보다 다소 주관적인 절차가 더 많을 수밖에 없다. 사람들이 많은 결정을 내려주어야 하기 때문이다. 예를 들어, 어떠한 변수의 조합을 사용하는 것이 적절한가, 연계 여부 결정을 위한 요구조건은 얼마나 엄격하게 설정되어야 하는 가4), 일치하지 않는 값들은 오류로 처리할 것인가, 어떤 변수에서의 불일치는 다른 것보다 중요한 것으로 봐야 할 것인가.5) 또한, 확률연계를 통한 분석을 다른 연구자 가 검증할 수 있도록 하기 위해서는 이러한 결정이 투명하고, 기록되고, 일관된 방식 으로 이루어질 필요가 있다.

  확률연계는 그 속성상 정확 연계보다는 오류에 덜 민감하다. 그럼에도 불구하고, 데 이터 연계 작업 전에 데이터 정제(data cleaning) 작업이 선행되어야 할 수 있다. 예 를 들어, 문자열 데이터의 양식을 통일하거나 불필요한 부분을 제거하는 절차가 필요 하다. 또한, 문자열을 비교하는 알고리즘의 특성은 연계 결과에 큰 영향을 미칠 수 있 다. 예를 들어, 소리 기반 연계 알고리즘은 ‘beat’ 와 ‘beath’보다는 ‘Jon’과 ‘John’이 더 가깝다고 판단할 수 있겠지만, 바이그램(bigram) 분석 알고리즘(‘be/ea/at’와 ‘be/ea/at/th’처럼 문자열을 문자 쌍들로 분리하여 분석하는 방식)에서는 반대가 될 것 이다.

 

다. 통계적 연계(statistical linking)

정확 연계 및 확률연계가 정확한 두 개인을 연계하는 것이라면, 통계적 연계는 서 로 다른 개인에 관한 두 개의 레코드가 마치 동일인에 관한 레코드인 것처럼 연계하 여 분석하기 위해 개발된 방법으로 데이터 퓨전(data fusion)이라고도 한다. 예를 들 어, 50세 경상도 남성인 홍길동의 어떤 특성(교육수준, 정치적 성향 등)이 다른 50세 경상도 남성과 유사하다면, 홍길동의 의료 데이터를 그와 유사한 다른 누군가의 정보 와 연계했을 때 통계적으로 유의미한 결과를 얻을 수 있을 것이다. 공중보건 분야에 서는 연구자가 정책 평가를 위해서 시뮬레이션 모델을 만들기 위해 사용한다.

이 방법의 장점은 연계의 질이 덜 중요해진다는 점이다. 그러나 이 방법은 많은 통 계적 가정에 의존하고 있다. 우선 연계할 여러 데이터의 표본은 동일한 모집단에서 조사되었다고 가정한다. 또한, 매칭 변수가 주어졌을 때, 두 데이터셋의 관심변수가 서로 독립적이어야 한다는 것이다. 이는 하나의 연계 후보가 다른 것과 유사하다는 전제를 위해 필요하다.

그러나 통계적 연계의 문제점은 그 전제가 충족되지 않았을 경우, 분석의 결과를 신뢰할 수 없게 된다는 점이다. 두 데이터셋의 조사 혹은 생산 시점이 다를 경우, 두 데이터의 모집단이 다르거나 가중치가 다른 경우, 공통 변수 선택 등 고려해야 할 문 제가 많으며, 연계 데이터의 품질을 어떻게 측정할 것인지도 중요한 문제이다. (오미 애 등, 2014)

라. 다층 연계(multilevel linking)

데이터 연계가 반드시 개인 레벨일 필요 없이 환경정보와 연결되어도 유용성이 높 다. 즉, 개별 단위(사람과 사람, 단체와 단체)의 연계가 아니라, 서로 다른 차원 사이 에 ‘수직적으로’(예를 들어 개인을 의사 혹은 병원과 연계), 혹은 ‘수평적으로’(개인을 작은 지역의 데이터와 연계) 연계할 수도 있다. 예를 들어, HIV 감염 데이터를 지역 적 데이터와 연계할 경우, 지역에 따라 다른 특성을 보여줄 수 있다. 다층연계를 사용 할 경우 정확도가 높으면서도 보안상의 위험도는 낮출 수 있다.

(3) 연계 데이터 유형별 특징

가. 횡단면조사 데이터(Cross-sectional survey data)

사회경제적 데이터를 수집할 때는 주로 설문을 이용하게 되는데, 통계를 낼 목적이 므로 설문조사 결과 데이터는 표면적으로는 깨끗하다. 즉, 통상적인 표준에 따라, 통 상적인 정의와 메타데이터와 함께 수집·생산된다.

그러나 설문 데이터는 주로 표본조사를 하므로 이 데이터가 관심 인구의 대표성을 갖고 있는지가 관건이 된다. 적은 비용으로 가치 있는 데이터를 추출하기 위해, 군집 화(clustering, 특정 지역 혹은 그룹에 초점을 맞춘다)와 계층화(어떤 외부 특성에 따 라 다른 샘플링 방법을 사용) 기법이 사용된다.

설문조사 데이터는 한번 수집되면 그 정확성을 검증하기 힘들다. 설문 응답자를 추 적해서 확인하는 것이 비용이 많이 들어 사실상 불가능하기 때문이다. 또한, 설문조사 데이터는 일반적으로 가명화되기 때문에 데이터 연계 시 문제가 발생할 수도 있다. 예를 들어 연령이 42세가 아니라 43세로 잘못 기록되었을 때, 이는 통계적으로는 큰 문제가 아닐 수 있지만, 데이터 연계 시에는 문제를 야기할 수 있다.

728x90
반응형

'보안' 카테고리의 다른 글

Kali Linux Docker에서 사용하기  (0) 2022.12.31
해외 임시 핸드폰 번호, 해외 무료 SMS 받기  (1) 2020.03.24
일회용 메일 주소  (0) 2018.06.25
728x90
반응형

 앞에서 TI에는 어떤 데이터가 있고 어떠한 요소가 구축에 필요한지를 살펴 보았다면 이제는 실제로 Open Source를 이용하여 직접 TI를 한번 구축해 볼수는 없을까? 라는 고민을 해보고자 합니다. 실제로 Git이나 여러곳에서 소스나 데이터를 얻을수 있으며 많은 문서를 참고할수 있으며 이를 통해서 손쉽게 TI를 공유 하는 환경을 구축하는것이 가능합니다. 

  다만 앞에서 살펴본 STIX에서 정의하는 모든 항목을 제공하는 경우는 여기서 다루지 않기 때문에 이에 대해서는 추가적인 학습을 하는것이 필요해 보입니다.



오픈소스로 제공되는 TI 공유 플랫폼


  미국 국토안보부인 MITRE를 통해서 13년 4월 사이버 위협 정보 전송 규격인 TAXII(Trusted Automated Exchange of Indicator Information) 공식 버전을 10월에는 사이버 위협 표현 규격인 STIX (Structured Threat Information Expression)를 발표 하였으며 STIX는 사이버 위협 정보를 교환하는데 사용되는 언어와 직렬화 형식이고 TAXII는 이러한 사이버 위협 정보를 간단하게 확장가능한 방식으로 통신하도록 해주는 프로토콜입니다.
  TAXII는 STIX에 명시된 CTI(Cyber Threat Intelligence)를 공유 하기 위해서 반드시 필수적인 요소입니다. 물론 STIX는 TAXII를 제외한 다른 형식으로 데이터를 공유 할수도 있습니다. TAXII의 데이터 공유 모델은 아래와 같은 형식으로 데이터를 주고 받을수 있습니다.
: hub-and-spoke, peer-to-peer, source-subscriber.







  STIX와 TAXII는 정보를 공유하기 위한 기반만을 제공하며 이를 통한 정보의 공유는 다양한 회사에서 제공하거나 오픈소스를 통해서 제공됩니다. 물론 위에서 서술된 TIP, TIS등에서도 당연히 이를 지원하는 곳이 많이 있습니다. 일반적으로 독자적인 데이터 공유 모델을 보유하고 이를 제공하는 곳도 있으나 많은 곳에서는 표준적인 모델인 STIX와 TAXII를 지원합니다.


STIX 

   STIX (Structured Threat Information Expression)

  그러면 STIX 에서 어떠한 데이터를 주고 받을수 있고 어떤 방식이 사용되는지 알아봅시다. 우선 STIX는 그래프 기반 모델로 노드와 에지가 연결된 그래프 입니다. STIX Domain Objects (SDO)를 정의하고 STIX의 관계는 에지를 정의합니다. 

  SDO는 첫장에서 알아보았던 12가지의 공격 패턴, 보고서, IP정보, 도구 및 취약점등을 의미합니다. 즉 일반적으로 TI에서 사용되는 개념들로서 SDO를 생성함으로서 STIX는 유연하게 구조화되고 일관되게 데이터를 공유 할수 있게 됩니다. 

  SDO에 대한 자세한 정보는 아래의 링크를 통해서 알수 있으며 이를 통해서 어떠한 데이터가 정의 될 수 있고 공유 될수 있는지에 대해서 알수 있습니다.

http://docs.oasis-open.org/cti/stix/v2.0/cs01/part2-stix-objects/stix-v2.0-cs01-part2-stix-objects.html


  그리고 STIX의 Object가 연결되는 방식을 설명하는 관계가 있습니다. 일반적으로 관계 객체는 STIX Relationship Objects (SROs)를 사용하게 되며 그 이외에 특수한 관계는 ID 참조로서 표시하게 됩니다. 


TAXII

  TAXII (Trusted Automated Exchange of Indicator Information)




Open Source TI의 구축

   지금까지 STIX와 TAXII를 통해서 TI를 통한 정보 공유를 위해 어떠한 요소가 있는지 그리고 어떠한 방법이 있는지를 알아 보았다. 그렇다면 실제로 본인의 집이나 서버에 이를 구축해 볼수 없을까 라는 의문이 들것이다. STIX와 TAXII는 프로토콜과 구현체가 이미 많이 공유 되고 있으므로 이를 이용한 다양한 정보 공유 사이트 (Feed)들을 찾을수 있고 이를 통해서 정보를 주고 받으면서 자체적으로 TI를 구축할 수 있다. 

  물론 Open Source로 공유된 TAXII Client를 이용하여 직접 구축하여 정보를 저장하여 이를 다양한 부분에 응용할 수 있지만 이번 글에서는 기 구축된 TAXII Client를 이용해 보는것을 목표로 해 보겠다.

  구축을 하고자 할 경우 일단 STXI/TAXII Client 혹은 Platform이 필요할것이고 여기에 정보를 제공해주는 TAXII Feed들이 필요할 것이다. 이 두가지 모두 구글링을 해보면 다양한 Platform과 Feed들이 있으므로 이를 구축해 보는것을 해보도록 하겠다.


 그럼 우선 TAXII 피드를 통해서 무료로 TI정보를 제공해 주고 있는 사이트들에 대해서 알아 보도록 하겠다. 


1. MalwareWolf

  악성 코드용의 TAXII 피드 사이트로 보이나 현재 아래의 URL상에서 Discovery가 정상적으로 되지 않고 사이트가 닫혀 있는것으로 보이며 실질적으로 써볼수 없었기 떄문에 설명은 제외합니다.


접속 정보

Site Description : MalWerewolf

Login : guest/guest

Discovery URL : https://intelfeed.malwerewolf.com/taxii-discovery-service


제공 사이트

https://malwerewolf.com/2016/04/intel-feed-introduction/


.

2. Limo

 ANOMALI 에서 제공하는 TAXII 피드


접속 정보

Discovery URL:

1. TAXII client :https://limo.anomali.com/api/v1/taxii/taxii-discovery-service/ 

2. STIX/TAXII 2.0 clients: https://limo.anomali.com/taxii

Login : guest/guest



제공 사이트

https://www.anomali.com/platform/limo



3. HailaTaxii


Open Source CTI 피드로 STIX 포멧으로 제공 된다. 2018년 3월 25일 시점에서 1,049,132개의 Indicator들을 보유하고 있고 어뷰징, 사이버 범죄 등 다양한 정보를 제공해 주고 있습니다. TAXII의 1.0과 1.1 버전을 통해서 정보가 제공되고 있으며 익명 접속을 제공하므로 별도의 로그인 정보를 넣지 않아도 됩니다.


접속 정보

Login : Anonymous 허용 (별도의 계정 정보 불필요, 만약 입력이 필수인 경우 guest/guest 입력)

Discovery URL : http://hailataxii.com/taxii-discovery-service


제공 사이트

http://hailataxii.com/



4. AlienVault

접속 정보

Discovery URL https://otx.alienvault.com/taxii/discovery

Username:(Your API key)

Password: 공백 혹은 아무런 문자 입력


 - 위의 Username에는 AlientValut에 로그인 하면 알려주는 API Key를 입력하면 되며 Password는 공백으로 두거나 아무 문자나 입력하면 정상적으로 TAXII를 이용할 수 있다.






결론

  이상까지 오픈소스 TI인 STIX와 TAXII에 대해서 알아 보았고 다음번에는 직접 이를 이용해서 정보를 수집하는 방법에 대해서 알아 보고자 합니다. 최종적으로는 수집된 데이터들을 어떠한 방식으로 사용해 볼까 하는 고민을 직접 구현하는것 까지.. 적어 보고자 합니다.



참고 사이트

https://oasis-open.github.io/cti-documentation/


택시 커뮤니티
https://taxiiproject.github.io/community/


MISP
도커 이미지
https://github.com/xme/misp-docker

설치

https://github.com/harvard-itsecurity/docker-misp


https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cti


https://github.com/EclecticIQ/OpenTAXII


https://github.com/yeti-platform/yetihttp://yeti-platform.readthedocs.io/en/latest/installation.html#install-systemd-services


STIX 스펙 정리 문서

https://docs.google.com/document/d/1IvkLxg_tCnICsatu2lyxKmWmh1gY2h8HUNssKIE-UIA/edit#heading=h.axjijf603msy



https://taxiiproject.github.io/releases/1.0-draft1/TAXII_SampleUsage_November_2012.pdf

728x90
반응형

'보안 > Threat Intelligence' 카테고리의 다른 글

Threat Intelligence #1  (0) 2018.06.25
728x90
반응형

 웬만한 사이트에 가입을 하고자 할 경우 이메일 주소는 필수이다.

 회원 정보의 확인이나 패스워드 변경과 분실에도 사용된다. 다만 본인의 메일 주소가 노출되기를 원하지 않는 경우에 간편하게 일회용 이메일 주소를 사용할수도 있다.


  포털이나 게임사의 경우 일회용 이메일 사용은 금지하는게 좋아 보인다. 지속적으로 회원 정보를 유지하면서 사용하는 사용자가 아닌 일회성으로 (주로 어뷰저 일 확율이 높아 보인다) 사용하고자 하는 사용자가 많을수 있으므로 다량으로 하나의 IP에서 이러한 일회성 메일 주소로 가입한 사용자들은 무언가 문제가 있어 보인다.


  그렇다고 하더라고 편리한 서비스임에도 틀림 없지만 악용될 가능성이 많아 보인다.


일회용 메일 제공 사이트

1. www.crazymailing.com ( @wimsg.com )

2. ruu.kr ( @ruu.kr, @bestmail.shop, @koreamail.shop, @momom.shop, @tempmail.shop )

3. www.moakt.com ( @disbox.net, @tmpmail.org, @tmpmail.net, @tmails.net, @disbox.org, @moakt.co, @moakt.ws, @tmails.ws, @bareed.ws )

4. www.zudy.info ( @rael.cc )

5. www.mohmal.com (@himail.online )

6. temp-mail.org ( @mailsource.info )

7. yopmail.com ( @yopmail.com )





 

ruu.kr



기타


무료 이메일 제공 사이트 (별도의 복잡한 인증 과정 없이 쉽게 이메일을 만들수 있고 메일 서비스를 이용가능함)

gmx.com (@gmx.com, @gmx.us)



728x90
반응형

'보안' 카테고리의 다른 글

Kali Linux Docker에서 사용하기  (0) 2022.12.31
해외 임시 핸드폰 번호, 해외 무료 SMS 받기  (1) 2020.03.24
데이터 연계/결합의 개념  (0) 2020.03.01
728x90
반응형

Why Threat Intelligence ?

 현대 사회에서 사용자들이 사용하는 네트워크는 점점 더 거대해져 가고 있고 더 복잡해지고 있다. 이전의 세대가 단순히 PC 들을 연결하기 위한 근거리 네트워크 였다면 PC들이 연결된 인터넷으로 발전하였고 이제 인터넷은 전세계를 하나로 묶고 있다. 뿐만 아니라 사용자들은 무선망을 이용하여 언제 어디서나 인터넷에 접속하고 정보를 조회 할수 있다.


   네트워크가 거대해 지는 만큼 여기에 접속되는 시스템들 또한 거대해 지고 복잡해 지고 있다. 그만큼 해커들이 공격할 수 있는 대상이 늘어나고 있고 또한 기회도 많아진다는것을 의미할 수 있겠다.


  위협 인텔리전스는 새롭게 나오는 개념은 아니다. 인터넷 초창기에도 공격자들에 대한 정보를 수집하고 이를 분석하고 의미 있는 데이터를 추출하기 위한 다양한 시도들은 많이 있어 왔다. 비록 공격자들의 정보를 제공하는 단순한 영역에 그치는 경우가 많았지만 2000년대 초반부터 활발하게 진행되어 왔다. 그중 아래의 스팸하우스는 스패머들의 정보를 제공하여 실제 보안장비에서 이를 적용하여 사용할 수 있었다.


메일을 보내면서 경험을 한 경우도 있었겠지만 스팸을 통해서 많은 돈을 벌 수 있었던 탓에 스팸은 광범위하게 사용자들에게 보내어졌다. 이를 막기위한 효과적인 수단중 하나로 지금의 IP Reputation 정보에 해당하는 스패머의 정보를 스팸 필터 장비에 추가하여 많은 효과를 거둘수 있었다.

  물론 여기에 그치지 않고 최근에는 스팸하우스에서도 Threat Intelligence 성격의 서비스를 제공하고 있고 이를 통해서 다양한 위협 정보를 제공 받을 수 있다.


Threat Intelligence를 통해서 얻을수 있는것들

  막연하게 위협이 존재하고 이러한 위협 정보를 수집하면 위협 Intelligence에 도달할 수 있을 것인가라고 물어 본다면 이에 대한 답은 Yes도 될 수 있고 No도 될 수 있다. 이는 상황에 따라서 그리고 사용 목적에 따라서 달라질 수 있다는 것을 의미한다. 즉 단순한 평판 DB 수준의 정보만이 필요하며 이를 이용하여 위협을 탐지 하고 제거하고자 한다면 이는 단순한 오픈된 정보를 수집하거나 폐쇄된 정보를 열심히 수집하여 평판 DB만을 구축하는 것으로도 달성 될 수 있다.

  하지만 단지 하나의 요소가 아닌 다양한 요소로 이루어진 서비스에서는 어떻게 적용할 수 있을까 ? 예를 들어 IP 정보를 이용하여 사전 차단이 힘들수도 있는 대단위 서비스 즉 특정 IP의 차단이 불가능한 경우는 얼마든지 있을수 있고 이럴겨우에는 좀 더 상세한 위협 정보를 이용하여 차단을 수행할 필요성이 있다. 


  위협 Intelligence는 이런 경우에 활용 할수 있게 하기 위해서 다양한 정보를 수집하고 이를 복합적으로 제공하는 역활을 해주고 있다고 볼수 있다. 그렇다면 아래에서 위협 Intelligence를 통해서 어떠한 정보를 주로 제공 받을수 있는지 알아 보자..


Threat Intelligence의 정보 구성

1 공격 패턴

공격 패턴은 전략, 기술, 절차인 TTP의 한가지 유형으로서 공격자가 어떻게 목표물에 대한 공격을 수행하는지에 대한 상세한 정보를 제공합니다. 예를 들어 APT 공격이나 피싱 공격의 경우 공격자는 악성코드를 배포하기 위한 지점을 생성한 이후 대상자들을 속이기 위해 잘 만들어진 메일을 공격 대상에게 보내는 방법에 대한 설명을 제공한다.

2 캠페인

공격 대상들의 집합에 대해서 일정 기간동안 발생하는 악의적인 활동이나 웨이브라고 불리는 공격을 설명하는 공격 행동 그룹입니다. 즉 예를 들어 은행권을 공격하는데 이전에 발생한 캠페인들을 활용하여 이를 대응 할 수 있습니다.

3 행동 강령

공격을 예방하거나 대응하기 위해서 취할수 있는 조치들에 대해서 설명한다. 기술적인 내용이 될수도 있으나 직원 교육이나 정책과 같은 수준의 조치를 설명할 수 있습니다. (간단하게 패치를 하거나 방화벽으로 차단하거나 하는 등의 내용이 될 수 있다.)

4 정체성

위협 정보를 생성한 개인, 조직 또는 그룹뿐만 아니라 개인, 조직 또는 그룹의 클래스가 될수도 있으며 나아가서는 피해 대상자 일수도 있다.

5 지시자

사이버 상에서 행하지는 위협 활동을 탐지하는데 사용될 수 있는 패턴이 들어 있습니다. 예를 들어서 신규 취약점에 대한 탐지룰이라던가 랜섬웨어가 배포되고 있을 경우 이를 차단하기 위한 킬 체인이 제공될 수 있습니다.

6 침입 세트

단일 공격자의 행위에 의해서 생성되어진다고 생각되는 공통의 속성을 가진 위협 요소들이나 위협 행동을 의 모음으로 캠페인에서 수집되어 정재되어 수집될수도 있음

7 악성코드 정보

공격자가 공격 대상을 점령하기 위해서 혹은 시스템의 가용성, 무결성을 파괴하거나 정보를 유출하기 위해서 사용하는 악성코드의 정보 

8 관측 데이터

시스템 또는 네트워크에서 관찰 된 정보 (예 : IP 주소).

9 보고서

위협 정보, 위협 정보, 악성 코드 또는 공격 기법에 대한 설명

10 위협 행위자

악의적인 의도로 운영되는 것으로 생각되는 개인, 그룹 또는 조직.

11 도구

공격자가 공격을 수행하는데 사용할 수 있는 도구들 즉 소프트웨어 패키지나 악성 코드들

12 취약점

CVE로 많이 표현되는 시스템이나 소프트웨어에 존재하는 잘못 개발되거나 오류를 발생시키는 지점으로 공격자의 주 목표 중 하나


  위의 항목은 다음에 설명할 위협 Intelligence 정보의 공유를 위해 개발된 STIX에서 공유하고자 정의된 항목들의 정보를 알아 보았다. 단순하게 위협 Intelligence는 한개의 정보를 수집하여 제공되는것이 아닌 위협과 관련된 다양한 정보를 수집하여 제공하고 있다는 것을 쉽게 알수 있다.


  이렇게 제공된 정보를 어떻게 활용하고 어떻게 사용하는지는 여러분들에게 달려 있는 문제라고 생각된다. 단순히 한가지 측면에서 이를 사용할 수도 있고 전사에 위협을 대응하는 목적으로도 충분히 사용될수 있다고 보인다.


  실제로 STIX/TAXII라는 미국 국토안보국에서 개발한 위협 Intelligence 공유를 위한 프레임워크를 설명하면서 자세히 알아보고자 한다.

  Threat Intelligence 의 구성

위협 인텔리전스를 구성하기 위해서는 우선 아래와 같은 요소들을 갖추는것이 필수라고 본다.


1 SIEM 및 로그 처리 시스템

 우선 다양한 Threat Intelligence를 적용해 보기 위한 다양한 정보가 수집되어야 하며 이를 조회/분석 할수 있는 환경이 제공되어야 한다. 일반적으로 SIEM이라고 불리는 Splunk나 ArcSight, QRadar 등이 이러한 것을 도울수 있다. 다만 상용 툴의 경우 대용량 로그를 저장하여 분석하기에 부담이 간다면 ElasticSearch를 이용할 수도 있어 보이며 더 대용량의 로그라면 Hadoop과 Spark등을 이용하여 직접적으로 이러한 환경을 구성하는것이 도움이 될 수 있다.


2 로그의 수집

  SIEM이나 대용량 로그 처리 시스템을 구축하였다면 이제는 다양한 요소에서 로그 혹은 기록을 수집할 때이다. 거대 단위의 기업이 될 수도 작은 단위의 기업이 될 수도 있을 것이고 혹은 인터넷 컨텐츠 제공자 일수도 있을 것이다. 우선은 위협이 되는 요소를 정확하게 적용하기 위해서는 그에 맞는 정보를 수집하여야 하며 이를 위해서는 많은 오픈 소스가 있으며 역시 상용 솔루션도 제공되고 있다. Bro는 간단하게 다양한 정보를 수집할 수 있으며 이외에도 Suricata나 PCAP 라이브러리를 활용한 다양한 오픈소스를 적용해 볼수 있을 것이다.

  수집되는 로그는 OSI Layer 7에서 수집될수 있는 HTTP 접속 정보나 FTP, Telnet등의 정보 등이 될수도 있고 암호화 되어 있는 SSH, HTTPS라면 네트워크 상의 트래픽 정보를 수집하여 이를 활용 할수도 있다.


3 Threat Intelligence 정보

  로그나 정보를 수집하기 위한 저장소를 구축하고 여기에 로그나 정보를 수집하였다면 이제는 Threat Intelligence를 적용하기 위한 1차적인 준비가 완료 되었다고 볼 수 있다. 물론 Threat Intelligence를 정확하게 적용해 보기위해서는 더 많은 준비가 필요하지만 간단하게 사용 할 준비는 되었다고 볼수 있다.

 그럼 이제 Threat Intelligence를 제공해 주는 서비스나 플랫폼을 이용해 볼수 있다. 여기서 플랫폼은 한개 혹은 그 이상의 정보 혹은 피드를 이용하여 구축되어진 시스템을 의미한다. 그리고 Threat Intelligence 제공자는 Open된 정보나 폐쇄된 자료들을 제공해 주는 보안 조직이나 회사를 말한다. 즉 플랫폼에 정보를 제공하는 주체를 제공자로 볼수 있다.



Threat Intelligence Platform 의 주요 기능

- 다양한 유형의 피드 데이터의 수집과 통합

- 데이터 피드 처리 자동화를 통한 상관 관계 분석

- 데이터 처리의 최적화를 통한 실시간 알림등의 행위

- SIEM과 대용량 로그 등과의 통합

- 보고서의 산출


728x90
반응형

'보안 > Threat Intelligence' 카테고리의 다른 글

Free Threat Intelligence #2  (0) 2019.02.24

+ Recent posts