워게임/Root Me

[Root Me] DNS - zone transfert - 네트워크 / dig

SecurityMan 2022. 8. 22. 11:00

 

Root Me의 네트워크 문제

 

사실 이전에 포스팅했던 네트워크 포렌식 문제들이랑 같은 카테고리에 있는데

 

이 문제는 포렌식은 아닌거 같아서 네트워크라고 따로 써봤다.

 

반응형

 

문제에 많은 정보가 주어지진 않는다.

 

불성실한 관리자가 ch11.challenge01.root-me.org 도메인에 대해 DNS 서비스를 설정해놨다고만 알려준다.

 

 

여기서 DNS는 Domain Name Service 의 약자로 www.naver.com  같인 도메인 이름을

 

ip 주소인 223.130.200.107 로 변환해주는 프로토콜이다.

 

위처럼 nslookup <도메인주소> 형태로 변환된 ip 주소를 확인할 수 있다.

 

주소창에 223.130.200.107 이라고 입력하면 네이버에 접속이 될 것이다.

 

이걸 왜 쓰냐면, 사용자 편의성 때문이다.

 

인터넷을 사용할때 사용자가 접속하는 모든 웹 서버의 ip 주소를 외우는것은 불가능하다.

 

대신 www.naver.com  / www.google.com  처럼 도메인 주소로 되어있으면 상대적으로 기억하기 쉽기 때문에

 

사용자가 주소창에 www.naver.com  이라고 입력하면 자동으로 ip 주소로 변환해 서버에 접속하는것이다.

 

이번 문제는 이 DNS 프로토콜의 Zone Transfer 라는 기능에 대한 문제이다.

 

Zone Transfer란 여러 대의 DNS 서버가 존재할때, 

 

DNS 데이터베이스를 복제하여 동기화 하기 위한 방법이다.

 

DNS 서버에서 도메인과 ip 주소를 매핑한 정보는 데이터베이스로 형태로 저장이 될텐데,

 

가용성을 위해 여러 대의 DNS 서버를 설치할 경우 이 서버들 간의 데이터베이스 동기화가 이루어져야 할것이다.

 

이때 사용하는 방법이 Zone Transfer 이다.

 

문제는 이렇게 Zone Transfer 하는 과정에서 데이터가 노출될 수도 있다는 것이다.

 

허가된 사용자에게만 허용되어있지 않을 경우 AXFR(전체전송) 을 통해 중요 정보가 보여지게 된다.

 

 

DNS 관련 문제를 풀때 dig 라는 도구를 사용한다.

 

Domain Information Groper 의 약자로 DNS 네임 서버에 질의하기 위한 도구이다.

 

리눅스에 보통 기본으로 설치되어 있다.

 

 

문제에서 제시한 이 정보를 이용해야 한다.

 

이번 문제에서 활용할 DNS 서버는 challenge01.root-me.org 이고, 포트는 54011 이다.

 

※ DNS 프로토콜은 일반적으로는 53번 포트를 사용한다.

 

이제 ch11.challenge01.root-me.org 서버에 대한 질의를 날려보면 된다.

 

 

dig axfr <서버> <@네임서버> -p <포트> 이런 형태이다.

 

문제에서 challenge01.root-me.org 네임서버의 54011 포트를 사용한다 했으니 그대로 지정해주고,

 

맨 앞쪾에 서버 도메인을 써주면 된다.

 

그러면 나오는 결과에서 TXT 레코드를 살펴보면

 

DNS transfer secret key : 라고 하며 비밀 키값이 노출되는것을 확인할 수 있다.

 

비밀 키값을 제출하면 점수를 획득할 수 있다.

반응형