남기면 좋잖아

2장 칼리 리눅스의 이해 본문

Penetration testing/Kali Linux

2장 칼리 리눅스의 이해

Beautiful Hugo 2017. 5. 14. 05:17
반응형

 - Contents -


2.1 백트랙이란?

2.2 칼리 리눅스의 등장

2.3 설치 및 점검 대상 환경 구성






 시험기간이 끝나고나니 오랜만에 포스팅하는 느낌이군요. ㅎㅎ


 오늘은 앞으로 저희가 쓰게될 도구인 백트랙이 무엇인지, 칼리리눅스가 어떻게 등장했는지 간단하게 짚고, 또 그것들을 어디에 설치할 수 있으며..

우리가 앞으로 모의해킹을 테스트할 공간. 즉, 취약한 테스트환경들을 소개해 드리고자 합니다. 


 그럼 바로 시작해봅시다.





2.1 백트랙이란?


 백트랙은 라이브CD 로써, 현재 버전에서는 우분투를 이용해 제작돼 배포되는 네트워크/애플리케이션 진단 등을 위해 제작된 라이브 운영체제입니다.


 -     라이브 CD : 이동매체(USB, CD)를 통해 바로 부팅이 가능한 CD를 말하고, 리부팅을 하면 설정했던 모든 값은 사라진다고 함    -


이러한 백트랙은 2012년 12월 기준 백트랙V5 R3 버전까지 공개되고, 백트랙 연구 프로젝트 형상 관리 사이트는 없어졌으며, 현재 후속버전인 칼리 리눅스 관리 사이트를 참고하면 다음 배포판에 어떤 도구들이 포함될지 어느정도 예측할 수 있습니다.



(출처 : 위키백과-백트랙)


(출처 : 위키백과-백트랙)


역시 후속버전 답게, 백트랙과 칼리 리눅스 둘다 같은 용 모양의 로고가 있군요.ㅎㅎ(잘 안보이지만;;) 차이점들은 다음 목차때 짚겠습니다.


 백트랙은 업데이트될 때마다 수많은 도구의 카테고리가 변화하며, 각 도구의 최신 버전 업데이트가 이뤄졌답니다. 새로운 버전이 공개될 때 이슈가 되는 주제 1개 ~ 2개가 등장하며, 메인 카테고리에 배치 됩니다.


그런데 이런 백트랙은 왜 갑자기 사라지고 후속버전인 칼리 리눅스가 나왔을까요?


다음 차례 보시죠 ㅎㅎ






2.2 칼리 리눅스의 등장




 칼리 리눅스가 갑자기 등장했다기 보다는 백트랙에서 칼리 리눅스로 "바꾼" 느낌이 조금 더 강합니다. 이유는 


첫번째로 7년 이상 사용하다보니 오랫동안 사용한 커널 버전(v.10.04)문제.

두번째로 이미지 안에 포함돼 있는 많은 환경의 의존성 문제.

세번째로 빠른 환경 변화로 인해 더 이상 사용하지 않는 도구나 오랫동안 업데이트 되지 않은 도구들에 대한 정리.



이런 문제로 인한 칼리 리눅스는 추가된 기능들을 살펴보면 알 수 있습니다.


  •  ARM 기반 디바이스 호환성 포함.

 덕분에 칼리 리눅스 다운로드 페이지에 가보면 ARM 기반에서도 작동되는 이미지 파일을 제공하고 있고, 작은 디바이스 안에서도 칼리 리눅스를 활용해 이동 편의성이 증가됐습니다. 아무도 모르게 숨긴 상태에서 모의 침투도 가능해 진것이죠.

  •  데비안과 FHS(File system Hierarchy Standard)를 기반으로 한 시스템으로 전환.
 FHS는 파일 시스템 계층 표준인데, 이 표준은 루트파일 시스템을 최대한 작게 유지하는 것이기 때문에 사용자들과 사용 프로그램들은 파일과 디렉터리의 위치를 예상하기 쉬워집니다.

이전에는 /pentest 디렉터리에 접근한 후 도구를 검색해서 실행했어야하는 불편함이 있었는데, 지금은 어떤 위치에서든 실행이 가능합니다.
모든 도구를 /bin, /usr/bin, /usr/lib 등에 포함 시킨것이죠.

  • 하루에 4번 원격 데이터베이스에 의해 업데이트 정보 동기화, 버전이 업데이트 되더라도 새로 설치하지 않아도됨, 모든 언어를 지원.

장단점이 있겠지만 한결 사용편의성이 증대된 것 같아서 저는 좋습니다 ㅎㅎ


백트랙과 동일하게 칼리 리눅스에서도 개발 진행 상황을 실시간으로 업데이트해 공유 하는 공간이 있습니다. 기존에 설치됐던 도구에 대한 업데이트 정보/버그나 수정된 정보에 대한 정보가 있기 때문에 버그 트래커를 참고해서 빠른 대응을 하는 것도 도움 될껍니다. 


버그 트래커 : http://bugs.kali.org/my_view_page.php







2.2 설치 및 점검 대상 환경 구성




자 이제 설치에 대해서 알아볼껀데요. 


저는 여기서 어떻게 설치를 하느냐가 아닌, 설치 종류에는 어떤것이 있는지 보도록 하겠습니다.



  • 가상 머신에서의 설치
  • 하드 디스크 설치
  • 윈도우와 듀얼 부팅 모드 설치
  • 스마트폰에 설치


 이렇게 총 4가지로 분류할 수 있겠습니다. 제가 하나하나 설명해드리면 좋을텐데 거의 비슷하고 다른 블로그나 사이트에 아주 자세하게 설명이 나와있기때문에 종류만 소개해 드렸습니다.


개인적으로 제일 흥미로운 부분이 칼리 리눅스가 스마트폰에 설치가 가능하단 건데요..


아까 말씀드렸다시피 ARM기반으로도 배포되고 있기 때문에 가능한 부분을 여기서 확인 할 수 있군요. 관심있으신분들은 한번쯤 찾아보시면 괜찮을 것 같습니다. 





이제 점검 대상(테스트) 환경을 구성해야 겠군요.


보안 공부를 처음 공부할 때 환경을 구성하는 데 많은 시간을 소요해야 겠지요. 웹 서비스가 작동할 수 있는 APM을 구성하고, 소스코드를 구성해 실 서비스처럼 구성하면 됩니다. 허나 매번 이런 환경을 구성하는 것은 힘든일이죠 ㅜ


따라서 저희의 시간을 절약해줄 테스트 환경을 소개하겠습니다.




   1. Metasploitable V2


이 테스트 환경은 메타스플로잇을 연구/학습하는데 사용 편의성을 제공하기 위해 취약하게 설정돼 있는 서비스로 구성된 VMware 가상머신 이미지입니다.
다운로드한 가상머신을 실행만 하고 URL부분에 그 가상머신의 아이피주소로 접속하면 5가지의 서비스를 선택할 수있습니다.

(출처 : http://certlys82.tistory.com/81)

(출처 : http://certlys82.tistory.com/81)


다운로드 : https://sourceforge.net/projects/metasploitable/files/Metasploitable2/metasploitable-linux-2.0.0.zip/download


이렇게 다운을 받고 취약 서버에 접속을 하시려면 ID : msfadmin/ PW: msfadmin

으로 접속하셔서 설정을 해주시면 됩니다.




  2. 클라우드 테스트 환경 서비스


Hackme 사이트는 클라우드 서비스 기반을 이용해 구축한 테스트 환경을 서로 공유하고, 이를 기반으로 제공합니다. 많이 접하는 DVWA, Hackme, WordPress, Joomla 등 다양한 가상 머신 서비스의 테스트가 가능합니다.


사용자들은 자신이 만든 환경을 올려 테스트할 수 있기 때문에 최신 버전부터 취약하게 설정된 테스트 환경까지 공유할 수있지만, 아직은 베타 환경이기 때문에 불안한 면이 있다고합니다.



이 외에도 기타 테스트 환경들이 많이 존재하지만, 일단 저는 Metasploitable V2 환경으로 공부 해볼까 합니다. 다른게 필요하다면 하나씩 더 추가하여 설치하거나 하는 식으로요.ㅎㅎ








2장에서는 칼리 리눅스를 이해하는 시간을 가졌습니다. 많은 사람들이 칼리리눅스는 단순히 툴모아놓은 운영체제 > 후딱 설치 > 그다음 어떻게 테스트하지? 로 끝나버리진 않을까 싶어서.. 


저번장과 이번장을 통해 제대로 공부해보고자 이것저것 소개해 드렸습니다.


어찌어찌해서 결국 이제 준비는 끝났군요ㅎㅎㅎ


다음장부터는 본격적으로 모의해킹순서의 첫번째! 정보수집 단계로 들어가 DNS, 호스트, 네트워크 스캔 등등에 관한 도구를 소개해 드리겠습니다.


그럼 저도이만 물러나겠습니다. 좋은 하루 되세요~

반응형
Comments