본문 바로가기
OffSec

[Blue Teams Academy] 모듈 10 - SpiderFoot로 OSINT(Open Source Intelligence)를 수행하는 방법

by 10th doctrine 2021. 3. 18.
728x90

이 모듈에서는 "SpiderFoot"라는 강력한 OSINT 툴을 살펴보기로 한다. OSINT 또는 "오픈 소스 인텔리전스"는 특정 대상에 대해 공개적으로 이용할 수 있는 정보를 수집하고 있다.

이미지 소스

도구를 발견하기 전에 몇 가지 중요한 용어에 대해 살펴봅시다.

인텔리전스

정보 수집의 연료는 다른 출처에서 공개적으로 이용할 수 있는 정보를 얻는 것이다. 정보 수집은 정보보안과 침투시험에서는 중요하지 않지만 국가안보를 위해 필수적이며, 군사전략에서 영감을 받는 개념도 많아 사이버보안 분야 정보 수집에서도 전쟁터에서 영감을 얻는다.

이미지 소스

국제무역위원회(ITC) 추산에 따르면 현재 기업의 스파이 활동으로 인한 미국 산업의 연간 손실은 700억 달러가 넘을 것으로 추산된다.

정보 수집은 조직의 보안 지위 향상에 도움이 될 뿐만 아니라, 경영자들에게 경쟁을 주시하게 하고, 더 나은 사업 결정을 내리게 한다. 기본적으로 모든 정보 수집 작업은 구조화된 방법론에 따라 수행된다.

정보 수집 범주는 인간 지능, 신호 지능, 오픈 소스 인텔리전스, 이미지 인텔리전스, 지리 공간 지능 등 여러 가지가 있다.

휴민트(HUMINT)

휴민트(Human Intelligence, HUMINT)는 인간 대상과 상호작용이 있건 없건 간에 사진 촬영, 영상녹화 등 여러 기법을 이용해 인간 대상 정보를 수집하는 과정이다. 인간 지능에는 세 가지 모델이 있다.

  • 지시된 수집 : 이것은 특정한 표적작전을 말한다. 일반적으로 모든 리소스는 고유한 대상에 대한 정보를 수집하기 위한 것이다.
  • 능동적인 정보 수집 : 이 과정은 더 구체적이고 투자도 덜 필요하며, 특정 환경을 목표로 한다.
  • 수동적 지능 수집 : 이것이 인간 지능의 기초다. 그 정보는 방문이나 추천을 통해 기회주의적 방법으로 수집된다. 그래서 정보를 수집하고 무언가를 찾으려는 것 외에는 구체적인 대상이 없다. 

이미지 소스

신호지능

시그널 인텔리전스(SIGINT )는 전자 신호와 통신을 가로채 정보를 수집하는 작업이다. 통신 인텔리전스(COMINT )와 전자 인텔리전스(ELINT)의 두 가지 하위 범주로 나눌 수 있다.

오픈 소스 인텔리전스

공공정보란 목표물에 대해 가능한 모든 정보를 수집하고, 공개 가능한 출처를 이용하여, 그것을 검색할 뿐만 아니라 보관하는 과정이다. 이 용어는 일반적으로 정부 기관에서 국가안보 운영을 위해 사용한다. 침투 검사자는 또한 그러한 정신 상태를 채택하고 정보를 수집하고 분류하는 데 필요한 기술을 습득해야 한다. 엄청난 양의 데이터가 존재하는 시대에 유용한 정보를 추출하는 능력은 필수다.

이름에서 알 수 있듯이 오픈 소스 인텔리전스(OSINT )는 온라인에서 사용 가능한 소스를 사용하여 정의된 대상에 대한 정보를 찾는 것을 포함한다. 다양한 기법을 사용하여 수행할 수 있다.

많은 검색 엔진에서 검색 질의 수행 소셜 미디어 네트워크에서 정보 얻기 _딥 웹 _디렉토리 및 숨겨진 위키 검색 포럼 및 토론 게시판을 사용하여

OSINT 프로세스

오픈 소스 인텔리전스는 어떤 방법론적 과정이 정해진 수의 단계를 거치는 것과 같다.오픈 소스 인텔리전스를 수행하기 위해 다음 단계를 수행하십시오.

  • 방향  계획: 이 단계에서는 출처를 식별해야 하며, 다시 말해 정보를 찾을 수 있는 위치
  • 수집: 이 단계에서는 선택한 소스에서 정보를 수집하고 수집하십시오.
  • 처리 및 데이터 수집: 이 단계 동안 유용한 통찰력을 얻기 위해 정보를 처리해야 한다.
  • 분석  통합: 이 단계에서는 모든 정보를 결합하고 분석해야 함
  • 생산, 배포  피드백: 마지막으로 분석을 마치면 결과를 제시하고 보고해야 한다. 

이미지 소스

OSINT를 수행하는 데 사용할 수 있는 유용한 툴이 많이 있으며, 다음 게시물에서 이러한 툴 중 일부를 찾을 수 있다.

SpiderFoot 배포 방법

공식 기투브 리포지토리에 따르면:

SpiderFoot ___는 오픈소스 인텔리전스(OSINT)___자동화___ 툴이다. 그것은 이용 가능한 거의 모든 데이터 소스와 통합되며 ___ 데이터 분석___에 대한 다양한 방법을 사용하므로 해당 데이터를 쉽게 탐색할 수 있다.

스파이더풋은 깨끗하고 직관적인 ____을(를) 제공하는 ___ 내장____ 웹 기반 ___ 인터페이스________ 웹 서버를 가지고 있지만 명령줄을 통해 완전히 사용할 수도 있다. ____ Python___ 3과 GPL 면허로 되어 있다.

Spiderfoot는 다음에 대한 정보를 수집할 수 있다.

  • IP 주소
  • 도메인/하위 도메인 이름
  • 호스트명
  • 네트워크 서브넷(CIDR)
  • ASN
  • 이메일 주소
  • 전화번호
  • 사용자 이름
  • 사람 이름

이제 Spiderfoot 설치 방법을 살펴봅시다.

python3-pip 설치:

sudo apt-get install python3-pip

git 클론을 사용하여 Gitub 저장소에서 프로젝트 복제:

git clone https://github.com/smicallef/spiderfoot.git

프로젝트 폴더 입력:

cd spiderfoot

필요한 라이브러리 설치:

sudo pip3 install -r requirements.txt

다음을 사용하여 프로젝트 실행:

sudo python3 sf.py -l 127.0.0.1:5001

Vaila! 이제 자유롭게 OSINT 작업을 수행할 수 있다.

바로 사용할 수 있는 Spiderfoot 인스턴스를 사용하는 다른 옵션이 있다. 이 작업을 수행하려면 다음 링크를 확인하십시오. https://www.spiderfoot.net/hx/

새 검색을 시작하려면 " + 새 검색 만들기"를 클릭하십시오.

대상을 입력하고 "지금 검색 실행"을 클릭하십시오.

스크린샷에서 알 수 있듯이 일부 모듈을 사용하기 위해 n 오더를 추가해야 하는 API가 있다.

모듈은 특정 작업을 수행하는 특정 엔터티다. Spiderfoot에는 다음과 같은 다양한 모듈 목록이 제공된다.

  • abuse.ch: abuse.ch에 따라 호스트/도메인, IP 또는 넷 블록이 악의적인지 확인하십시오.
  • 계정: Ebay, Slashdot, redit 등과 같은 약 200개의 웹사이트에서 가능한 관련 계정을 찾으십시오.
  • AliverVault OTX: AliverVault OTX(Open Threat Exchange)에서 정보 가져오기

모듈의 전체 목록은 https://github.com/smicallef/spiderfoot에서 확인할 수 있다.

이 툴은 다음과 같은 데이터 조사 기능도 제공한다.

이미지 소스

요약

이 모듈에서는 Open source intelligence와 "SpiderFoot"라는 강력한 도구를 사용하여 이를 수행하는 방법을 살펴보았다.

 

 

더보기

How to Perform Open Source Intelligence (OSINT) with SpiderFoot

In this module we are going to explore a powerful OSINT tool called "SpiderFoot". OSINT or "Open source intelligence" is collecting publicly available information about a specific target.

Image source

Before discovering the tool, let's explore some important terminologies

Intelligence

The fuel of intelligence gathering is to get publicly available information from different sources. Intelligence gathering is not important in information security and penetration testing, but it is vital for national security, and as many concepts are inspired by the military strategies, in the cyber security field intelligence gathering is also inspired by the battlefields.

Image source

According to International Trade Commission estimates, current annual losses to US industries due to corporate espionage to be over $70 billion.

Intelligence gathering not only helps improve the security position of the organization, but it gives managers an eagle eye on the competition, and it results in better business decisions. Basically every intelligence gathering operation basically is done following a structured methodology.

There are many intelligence gathering categories: human intelligence, signal intelligence, open source intelligence, imagery intelligence, and geospatial intelligence.

Human intelligence (HUMINT)

Human intelligence (HUMINT) is the process of collecting information about human targets, with or without interaction with them, using many techniques such as taking photographs and video recording. There are three models of human intelligence:

  • Directed Gathering : This is a specific targeting operation. Usually, all the resources are meant to gather information about a unique target
  • Active Intelligence Gathering : This process is more specific and requires less investment, and it targets a specific environment.
  • Passive Intelligence Gathering : This is the foundation of human intelligence. The information is collected in opportunistic ways such as through walk-ins or referrals. So there is no specific target, except collecting information and trying to find something. 

Image source

Signal intelligence

Signal intelligence ( SIGINT ) is the operation of gathering information by intercepting electronic signals and communications. It can be divided into two subcategories: communications intelligence ( COMINT ) and electronic intelligence ( ELINT ).

Open source intelligence

Public intelligence is the process of gathering all possible information about the target, using publicly available sources, and not only searching for it but also archiving it. The term is generally used by government agencies for national security operations. A penetration tester should also adopt such a state of mind and acquire the required skills to gather and classify information. In the era of huge amounts of data, the ability to extract useful information from it is a must.

Open source intelligence ( OSINT ), as its name suggests, involves finding information about a defined target using available sources online. It can be done using many techniques:

Conducting search queries in many search engines Gaining information from social media networks Searching in _deep web _directories and the hidden wiki Using forum and discussion boards

The OSINT process

Open source intelligence is like any methodological process is going thru a defined number of steps.In order to perform an open source intelligence you can follow the following phases:

  • Direction and planning: in this phase you need to identify the sources,in other words where you can find information
  • Collection: in this phase you will collect and harvest information from the selected sources
  • Processing and collation: during this phase you need to process information to get useful insights.
  • Analysis and integration: in this phase you need to join all the information and analyse them
  • Production, dissemination and feedback: finally when you finish the analysis you need to present the findings and report them. 

Image source

There are many helpful tools that you can use to perform OSINT, you can find some of them in this post:

How to Deploy SpiderFoot

According to its official github repository:

SpiderFoot __ __ is an open source intelligence (OSINT) __ __ automation __ __ tool. It integrates with just about every data source available and utilises a range of methods for __ __ data analysis__, making that data easy to navigate.

SpiderFoot has an __ __ embedded __ __ web-server for providing a clean and intuitive __ __ web-based __ __ interface __ __ but can also be used completely via the command-line. It's written in __ __ Python __ __ 3 and GPL-licensed.

Spiderfoot is able to collect information about:

  • IP address
  • Domain/sub-domain name
  • Hostname
  • Network subnet (CIDR)
  • ASN
  • E-mail address
  • Phone number
  • Username
  • Person's name

Now let's explore how to install Spiderfoot.

Install python3-pip:

sudo apt-get install python3-pip

Clone the project from its Github repository using git clone :

git clone https://github.com/smicallef/spiderfoot.git

Enter the project folder:

cd spiderfoot

Install the required libraries:

sudo pip3 install -r requirements.txt

Finally run the project using:

sudo python3 sf.py -l 127.0.0.1:5001

Voila! Now you can use it freely to perform your OSINT operation.

There is another option which is using a ready-to-go Spiderfoot instance. To do it check this link: https://www.spiderfoot.net/hx/

To start a new scan, click on " + Create a new scan"

Enter your target and click on " Run scan now"

As you can notice from the screenshot there are some APIs that need to be added n order to use some modules.

A module is a specific entity that perform a specific task. Spiderfoot comes with a long list of modules including:

  • abuse.ch: Checks if a host/domain, IP or netblock is malicious according to abuse.ch.
  • Accounts: Looks for possible associated accounts on nearly 200 websites like Ebay, Slashdot, reddit, etc.
  • AlienVault OTX: Obtains information from AlienVault Open Threat Exchange (OTX)

The full list of modules can be found here: https://github.com/smicallef/spiderfoot

The tool gives you the ability to investigate data too:

Image source

Summary

In this module, we explored Open source intelligence and how to perform it using a powerful tool called "SpiderFoot"

 

 

※ 출처 : Blue Teams Academy | www.blueteamsacademy.com/spiderfoot/

반응형

댓글