Security Study/Docker

theHarvester를 통한 이메일 및 도메인 정보 수집

Stella Lucete 2022. 12. 1.
728x90
반응형

해당 블로그는 해킹 및 보안 블로그로 공부 및 연구용으로 작성되어지고 있습니다. 아래의 내용을 기반으로 해킹 시도 및 실제 공격을 시도하여 일어나는 모든 책임은 본인(따라한자)에게 있음을 알려드리며, 글쓴이는 아무런 책임을 지지 않습니다. 꼭 공부 및 연구용으로만 사용하여 주시길 바랍니다. 감사합니다.

업무 및 공부 등을 하다보면 OSINT(Open Source INTelligence) 공개출처정보가 많이 필요한 경우가 있다.

그러다 보니 하나하나 검색을 해가면서 많은 정보를 찾을 수가 없다. 사실대로 말하면 찾을 수는 있다. 시간이 매우 많이 걸려서 문제지...

 

그래서 여러가지 online으로 제공되는 OSINT와 maltego, theHarvester 등 프로그램들 또한 많이 제공되어지고 있다.

그 중에서 theHarvester에 대해서 오늘은 작성해보려고 한다.

 

theHarvester의 경우 침투테스트의 초기 단계에서 정보수집 등을 하기위해 사용되며, 이메일 계정, 하위 도메인 이름, 가상 호스트 등의 정보를 검색엔진을 통해 수집한다.

 

kali linux를 사용하게 되면 기본적으로 theHarvester가 설치되어 있어서 theHarvester -h 명령어를 통해 확인하고 사용함에 큰 문제가 없다.

최근에 사용을 해야하다보니 설치를 해야하는 처지가 왔다. 그래서 설치를 해보았는데 github에서 설치를 진행해보았지만 정상적으로 안되더라.... 그래서 docker를 이용하여 설치해보았는데 공식 github는 여기다.

https://github.com/laramies/theHarvester

 

GitHub - laramies/theHarvester: E-mails, subdomains and names Harvester - OSINT

E-mails, subdomains and names Harvester - OSINT . Contribute to laramies/theHarvester development by creating an account on GitHub.

github.com

설치를 하기위해서 requirements.txt 파일을 설치를 해야하는데 일단 버전들도 안맞는 것이 많아서 수정을 해야한다.

뭐 맞는 버전 찾아서 설치를 해도 안된다... 그래서 결국 docker를 택하였던것이다...:D

 

Docker를 사용하여 설치하는 방법을 알아보자

git clone https://github.com/laramies/theHarvester

cd theHarvester // git clone으로 받은 theHarvester 폴더로 이동

mkdir ~/.theHarvester // home 경로에 .theHarvester 폴더 생성(.으로 숨김폴더가 되어 확인 하기위해 ls -al입력)

cp api-keys.yaml ~/.theHarvester // 기존의 theHarvester 폴더에서 api-keys.yaml 파일을 새로만든 .theHarvester 폴더로 복사

docker build -t theharvester . // build 진행

근데 build를 시키기전에 api-keys.yaml파일이 뭔지 궁금할수도 있다.

yaml파일의 경우 열어보면 검색엔진들의 api키를 입력하도록 되어있다. 필요에따라 api 키를 입력하여 더많은 정보를 받아 올수 있다.

apikeys:
  bevigil:
   key:

  binaryedge:
    key:

  bing:
    key:

  bufferoverun:
    key:
    
    ...

이런식으로 구성되어있어 api키를 입력하면된다.

빌드를 시작하면 된다.

 

그럼 docker images 를 입력해보면 이미지가 생성된 것을 확인할수있다.

docker run --rm -it --mount type=bind,source="$HOME/.theHarvester/api-keys.yaml",target="/app/api-keys.yaml" --entrypoint "/app/theHarvester.py" theharvester -h // help명령어

docker run --rm -it --mount type=bind,source="$HOME/.theHarvester/api-keys.yaml",target="/app/api-keys.yaml" --entrypoint "/app/theHarvester.py" theharvester -d 도메인(example.com) -l 500 -b all

도메인을 기반으로 검색을 하기위해선 두번째 줄을 입력하면된다. -d명령어는 도메인을 입력하는 것이고 -l명령어는 500개의 검색값 -b는 검색엔진을 선택하는것이다. 자세한것은 -h명령어를 통하여 확인가능하다.

728x90
반응형

댓글0