본문 바로가기

스캔

[PYTHON] Python을 이용한 웹사이트 스캐너 만들기 - 7. 완결편 이번 시간에는 그동안 만들어 둔 함수들을 가지고 종합적으로 다루어 보도록 하겠습니다. 1편 소개편에서 말씀드린것 처럼 이것을 가지고 자신에게 보다 더 유용한 방향으로 수정, 편집해서 사용하시면 도움이 되리라 봅니다. 그럼 시작해보겠습니다. 1. 가장 처음 만들어 둔 main.py로 이동을 합니다. 여기에서 위와 같이 앞에서 만든 함수들을 불러옵니다. 2. ROOT_DIR 를 'sites' 라는 이름으로 지정을 해주었습니다. 향후 이 'sites' 폴더 밑에 각 사이트의 정보가 쌓이게 될 것입니다. 3. ROOT_DIR을 만들어 줄 것입니다. 아직 create_dir 함수를 정의하지 않았는데, 이는 아래에서 다룰 예정입니다. 4. 이제까지 만든 함수들을 종합적으로 다룰 함수 'gather_info'를 정의.. 더보기
[PYTHON] Python을 이용한 웹사이트 스캐너 만들기 - 5. robots.txt 이번 시간에는 robots.txt 에 대해 알아보려고 합니다. robots.txt 파일이 어떤 역할을 하냐면, 웹을 만들때 구글이나, 야후, 네이버, 다음과 같은 검색엔진에서 크롤링(사이트를 프로그램으로 자동 저장하는것)을 하는데 이때 민감한 페이지나 관리자 페이지 같은것은 크롤링 하지 못하게 텍스트 파일 형태로 작성해 둔 것입니다. 보다 자세한 사항은 Robots.txt 링크를 참조하시면 이해하실 수 있을것 입니다. 자 그럼 시작해 보겠습니다. 1. 우선 robots_txt.py 파일을 만들어 주고 import urllib.request 를 작성해 줍니다. urllib 와 request 는 웹과 관련된 파이썬 모듈입니다. 2. io 또한 임포트 해줍니다. 3. get_robots_txt 함수를 정의하고.. 더보기
[PYTHON] Python을 이용한 웹사이트 스캐너 만들기 - 4. Nmap Port Scan 이제 타겟 서버의 아이피 주소까지 얻었습니다. 이제부터는 nmap을 사용하여 타겟 서버의 포트 개방 여부를 확인하고, 어떤 프로세서가 러닝되고 있는지 확인하려고 합니다. 그러기 위해서는 'NMAP' 이 설치가 되어 있어야 합니다. 맥을 사용하시는 분들이라면 homebrew 를 설치하신 이후에 brew install nmap 을 하시면 설치하실수 있습니다. 물론 리눅스를 설치하고 계신분은 바로 인스톨 하시면 됩니다. NMAP 으로 확인하려고 하는 결과를 먼저보여 드리면 아래 그림과 같습니다. 앞에서 얻은 tistory.com 의 아이피 주소인 180.70.93.117 을 넣어보니 http 프로토콜의 포트번호인 80번과, https의 포트번호인 443만 개방되어 있는것을 확인하실 수 있습니다. 자 그럼 본격.. 더보기