TryHackMe/Cyber Security 101

[TryHackMe #3] Search Skills 실습

ahhyun98 2025. 5. 1. 00:01

 

오늘은 TryHackMe의 Search Skills를 실습했다. 

정보보안 실무에서는 문제를 직접 해결할 수 있는 기술만큼이나 문제를 해결할 정보를 빠르고 정확하게 찾는지도 매우 중요하다. 

이번 room에서는 검색 연산자, OSINT 활용, 기술 문서 검색 등 실무 업무에 도움이 될만한 정보 검색 기술들을 배울 수 있었다. 

 


1. 검색의 중요성

보안 업무에서 검색은 단순 정보 탐색을 넘어선다.

적절한 키워드검색 엔진의 특성을 이해해야 빠르게 정보를 얻을 수 있으며, 이는 취약점을 분석, 로그 조사, 포렌식, 리버싱 등 다양한 분야에 유용하게 사용된다. 

 


2. 검색 결과 평가하기

1. 암호학에서 위조 또는 사기로 간주되는 모든 암호 기법이나 제품을 의미하는 단어는?

=> Snake oil

 

2. Linux에서 netstat을 대체할 수 있는 명령어는? 

=> ss (netstat보다는 가볍고 빠르며, 최신 시스템에서 더 권장된다.)

     ss는 Socket statistics의 약자이다. 

 


3. 검색 엔진 활용하기 

보안 분석, 침투 테스트, 정보 수집 시에 자주 사용되는 구글 검색 연산자들을 정리해 보았다. 

 

연산자 설명 예시
filetype: 특정 파일 형식만 검색 filetype:pdf password => pdf 파일에서 비밀번호가 포함된 문서만 찾기
site: 특정 사이트 내 검색 site:nist.gov CVE-2025 => NIST에서 2025년 CVE 검색
intitle: 제목에 특정 단어가 포함된 페이지 intitle:"index of /admin" => 디렉터리 리스팅된 admin 폴더 탐색
inurl: URL에 특정 단어 포함 inurl:"php?id=" => 취약한 URL 패턴 검색 (SQLi 의심 페이지 조사)
cache: 구글이 저장한 페이지 사본 보기  cache:[사이트 URL] => 사이트가 다운되더라도 내용 열람 가능

 

=> 이렇게 검색을 하게 되면 정밀한 정보 수집이 가능해진다. 

 

pdf 파일에서 비밀번호가 포함된 문서만 찾기

 

위 사진은 filetype:pdf password을 검색해 본 결과이다. 

 

민감한 정보들이 포함되어 있을 수 있어 모두 모자이크 처리하였다. 

 

※ 이때 주의해야할 점은 단순 검색만으로는 불법이 아니고 누구나 사용할 수 있는 공개 기능이지만

     찾은 파일을 무단으로 열람하거나 퍼가는 것은 불법이다. 

     따라서 민감한 키워드로 보안 테스트를 할 때는 신중히 사용해야 한다. 

 

 

디렉터리 리스팅된 admin 폴더 탐색

 

다음 사진은 intitle:"index of /admin"을 검색해 본 결과이다. 

 

이 검색의 경우, 디렉터리 리스팅이라는 기능을 활용하여 웹 서버에서 /admin 디렉터리 내 파일 목록을 노출시키는 상황이다. 

 

디렉터리 리스팅이란 웹 서버에서 디렉터리 내 파일 목록을 자동으로 표시하는 기능이다. 

이를 통해 공격자는 민감한 파일이나 서버 구조를 쉽게 알게 된다

 

위험성 

디렉터리 리스팅이 활성화된 /admin 폴더를 검색하면, 공격자는 비밀번호 파일이나 백업 파일, 로그 파일 등의 민감한 정보를 쉽게 접근할 수 있게 된다. 이는 해킹이나 정보 유출 피해로 이어질 수 있다. 

 

해결 방법

1. 디렉터리 리스팅 비활성화 : 웹 서버 설정에서 디렉터리 리스팅을 비활성화 해야 한다. 

2. 파일 권한 설정 : 중요 파일의 경우 읽기 권한을 제거하여 외부의 접근을 차단해야 한다. 

3. 웹 애플리케이션 방화벽(WAF) 사용 : 불법적인 접근을 차단하는 보안 장치를 추가한다. 

 


4. 특수 검색 엔진

 

4-1) Shodan

 

Shodan인터넷에 연결된 디바이스를 검색하는 엔진이다.

서버, 네트워크 장비, 산업 제어 시스템, IOT 디바이스 등 다양한 장비를 검색할 수 있다. 

 

 

 

위 사진과 같이 Shodan에서 apache 2.4.1을 검색하면 이 버전의 서버가 나열된다. 

Shodan에서 apache 2.4.1을 검색한 결과, 해당 버전의 Apache 서버가 어느 지역에 얼마나 분포하고 있는지를 알 수 있다. 

 

=> webcam과 같은 경우 그대로 노출될 수 있기 때문에 보안이 잘 되어있는 제품을 구매하고 웹캠을 물리적으로 가려줄 수 있는 웹캠 프라이버시 커버를 사용하는 것이 좋다. 

 

 

4-2) Censys

 

Censys인터넷에 연결된 자산을 검색하는 tool로, Shodan과 비슷하지만 주로 웹사이트, 인증서, 공개된 포트 등을 검색한다. 

특정 도메인이 사용중인 인증서를 확인하거나 네트워크 내 악성 자산을 찾는 데 사용할 수 있다. 

 

 

위와 같이 apache 2.4.1을 검색해 보았다. 

해당 버전의 서버가 어떤 인증서를 사용하고 있는지, 어떤 포트가 열려 있는지 확인할 수 있다. 

 

 

4-3) VirusTotal

 

VirusTotal파일을 여러 안티 바이러스 엔진으로 스캔할 수 있는 온라인 서비스이다. 

파일을 업로드하거나 URL을 입력하여 여러 엔진에서 동시에 검사할 수 있다.

파일 해시를 입력하여 이전에 업로드 된 파일을 체크할 수도 있다. 

파일이 바이러스 오탐지되는 경우도 있지만 커뮤니티의 comment를 통해 더 정확하게 판단할 수 있다. 

 

4-4) Have I Been Pwned 

 

Have I Been Pwned는 이메일 주소가 데이터 유출에 포함되어 있는지 확인할 수 있는 서비스이다. 

유출된 이메일을 확인하면 해당 서비스의 비밀번호도 유출되었을 가능성이 크다. 

여러 플랫폼에서 동일한 비밀번호를 사용하는 경우 위험할 수 있다. 

 

=>  실제 내 이메일 주소들로 확인한 결과 하나의 이메일 주소가 데이터 유출에 포함되었다는 것을 확인할 수 있었다. 

 

이에 따라 다음과 같은 조치를 취했다.

 

1. 유출된 이메일에 사용된 비밀번호를 변경하였다. 

2. 비밀번호를 다른 곳에서 사용하는 비밀번호와는 다르고 복잡하게 재설정하였다. 

3. 이중 인증(2FA)를 설정하였다 => 2단계 인증을 설정하여 보안을 강화하였다. 

 

추가적으로 모든 계정의 비밀번호를 기억하기 어렵기 때문에 비밀번호 관리자 프로그램을 이용해 비밀번호를 안전하게 저장하고 관리하는 방법도 좋을 것 같다. 

 

이러한 조치를 통해 혹시 모를 2차 피해를 예방하고 보안을 강화할 수 있었다. 

 


5. CVE & Exploit 검색 활용하기 

 

5-1) CVE (Common Vulnerabilities and Exposures)

 

CVE소프트웨어나 하드웨어에서 발생한 보안 취약점에 고유한 식별자(ID)를 부여하는 국제 표준 시스템이다. 

이 번호 하나로 전세계 보안 전문가들이 동일한 취약점을 지칭할 수 있기 때문에 정보 공유와 관리가 훨씬 효과적이다. 

 

CVEMITRE라는 기관에서 관리하며, 

자세한 내용은 공식 사이트인 https://www.cve.org/ 또는 https://nvd.nist.gov/ 에서 확인할 수 있다. 

 

ex ) CVE-2014-0160 (Heartbleed)에 대한 CVE 페이지

 

=> 이런식으로 확인할 수 있다. 

 

 

5-2) Exploit Database

 

실제로 특정 취약점에 대해 공격이 가능한 코드(Exploit)를 찾을 때는 Exploit Database가 대표적인 자료실이다. 

전세계 보안 연구자들이 작성한 PoC(Proof of Concept) 코드가 올라오며, 일부 코드는 검증됨 표시도 함께 제공된다. 

 

 

=> 이런 식으로 검색을 하면 Exploit 코드 내용이 나오게 된다. 

※ 해당 검색 결과는 학습 및 연구를 위해 소개된 것으로 Exploit 코드나 공격 방법은 보안상의 이유로 본문에 직접 노출하지는 않겠다. 

관심 있으신 분들은 공식 사이트에서 직접 확인하시길 권장드린다. 

 

5-3) GitHub 검색 활용하기 

 

Github에는 취약점 관련 PoC, 자동화 도구, 분석 코드 등이 공개되어 있는 경우가 많다. 

이를 검색하면 다양한 실습 자료와 코드를 얻을 수 있다. 

이를 통해 보안 조치 수행이 가능해진다. 

 


6. SNS 활용한 정보 수집 및 보안 (OSINT)

 

SNS는 단순한 커뮤니케이션을 넘어서 정보 수집(OSINT)보안 인식 형성에 활용될 수 있다. 

 

예를 들어, 회사 임직원의 게시글로 인해 조직 내부 정보(부서, 위치, 이메일 등)가 노출될 수도 있다. 

공격자는 이를 통해서 비밀 질문을 유출하거나 피싱 공격을 하거나 타겟으로 삼을 수 있게 된다. 

 

또한 구 Twitter 현 X , Linkedln, Reddit, Facebook, Instagram과 같은 SNS에서 최신 CVE, 침해 사고, 보안 도구 정보 공유가 많이 생성된다. 

유명 보안 계정이나 커뮤니티를 팔로우하여 트렌드를 파악하거나 학습에 활용할 수 있다. 

 

단, 이때 본인 진짜 계정을 사용하기보다는 임시 이메일을 가입하여 탐색하는 것이 개인 정보 보호에 좋다. 

이렇게 하면 실명 계정을 노출시키지 않고 플랫폼을 탐색할 수 있게 된다. 

 

 

 

 

 

이 블로그는 불법 해킹 및 악의적인 활동을 지양하며, 그런 행위는 절대 권장하지 않습니다.

모든 실습은 허가된 환경에서만 진행해야 하며, 법적 책임은 사용자 본인에게 있습니다.