세상 모든 것에는 그것을 가리키는 무언가가 있다. 그리고 그것을 가리키는 말이 오직 하나만 있는 것은 아니다. 사람을 예로 들면, 우선 이름이 있고, 회사에 다닌다면 사번이 있을 수 있으며, 친한 친구들 사이에서는 별명이 있을 수도 있다. 이름, 사번, 별명 등의 '명칭'은 각각 목적이 있고, 용도도 조금씩 다르다.
인터넷이라는 광활한 네트워크 환경에도 이러한 명칭이 있다. 초기의 인터넷은 ip주소만 사용해 인터넷을 이용했다. 다시 말하면, 현재의 www.hanbit.co.kr과 같은 도메인 네임이 없었다. 그렇다고 ip주소를 직접 입력한 것은 아니다. PC의 hosts파일에 도메인 대신 '별명'과 같은 원하는 명칭을 ip주소와 매칭 시켜 인터넷을 사용했다. 하지만 hosts 파일은 각자가 임의로 정한 별명을 사용하기 때문에 사용자마다 해당 ip를 다른 명칭으로 부를 수 있다. DNS는 이러한 별명을 하나의 공통된 명칭으로 바꾸었는데, 그것이 www.hanbit.co.kr과 같은 형태의 도메인 이름이라고 할 수 있다.
hosts파일은 DNS가 존재하기 전에 사용했다고 했지만 지금도 목적에 따라 많이 사용하고 있다. 윈도우 계열 시스템은 \system32\drivers\etc\hosts, 리눅스는 \etc\hosts가 이에 해당한다.
hosts파일은 다음과 같으며 보통 이 파일은 비어 있다. hosts 파일은 DNS 서버가 작동하지 않을 때, 별도의 네트워크를 구성하여 임의로 사용하고자 할 때, 다른 IP주소를 가진 여러 대의 서버가 같은 도메인으로 클러스터링 되어 운용되는 상태에서 특정 서버에 접속하고자 할 때 유용하다. 하지만 잘못된 hosts 파일은 서버 접속 자체를 막을 수도 있다.
- hosts 파일을 이용해 이름 해석하기
우선 실습을 위해 특정 도메인의 ip주소를 확인해 보자
해당 도메인의 IP주소를 확인한 후 hosts파일에 등록해보자
도메인 대신 hanbit을 입력해도 제대로 접속되는 것을 확인해 볼 수 있다.
참고로 ip주소로 도메인을 확인할 수도 있다. 이는 -a옵션을 사용해 조회한다.
이러한 hosts파일은 악의적으로 사용할 수도 있다.
hosts 파일에 잘못된 주소를 입력해두어 사용자를 엉뚱한 사이트로 유도하는 피싱과 같은 공격을 수행할 수도 있고
해당 사이트의 접속을 차단할 수도 있다.
예를 들어 hanbit.co.kr에 접속을 하는데 naver.com로 접속하게 만들려고 한다.
이를 위해 naver.com의 ip주소를 알아낸 후
이런 식으로 적은 후 www.hanbit.co.kr로 접속을 해본다.
의도했던 도메인과 다르게 naver로 들어가는 것을 확인할 수 있다.
'Security_lab' 카테고리의 다른 글
로그 분석과 설정 (0) | 2021.08.04 |
---|---|
해킹 침해사고 대응절차 (0) | 2021.08.03 |
백도어 탐지 순서와 대응책 (0) | 2021.08.02 |
백도어 (0) | 2021.07.30 |
포맷 스트링 공격 (0) | 2021.07.29 |