본문 바로가기

개발/Python

(12)
Python(파이썬)으로 blind sql 공격 blind sql은 쿼리의 에러를 웹페이지에서 확인할 수 없고 단순히 쿼리를 던져서 그 응답을 확인하는 것이다. 웹페이지는 참/거짓으로 반응할 것이다. (예) 참일 경우 기존 데이터를 보여줄 것이고 거짓일 경우 아무런 데이터도 보여주지 않을 것이다. 좀더 빠르게 파이썬으로 구현할 경우 응답에 특이 문자열이 있다는 조건을 넣고 해당 조건이 나올 때 이 쿼리는 참이라고 생각하고 아닐 경우 거짓이라고 생각한다 1. 우선 로그인을 한후 세션을 생성한 뒤 넣어준다. 2. 프록시가 필요할 경우(버프에서 입력받고자할 경우) 주석을 풀어준다 3, 뭐든지 공격은 길이부터 알아야한다. 4. 여기서는 Get방식으로 통신한다. 5. 웹페이지의 검색어가 특수문자 입력제한으로 막혀있을 경우 기본적엔 테이블을 확인하자. 6. 예를..
Python(파이썬)으로 7z 한번에 압축하기 # 사용방법 : fielist.txt 파일에 쉼표를 구분자로 폴더이름,파일이름 작성 # 사용 예 : 2016-11-13,압축할파일 # 사용 결과 : 2016-11-13폴더에 압축할파일.7z로 파일이 만들어짐 # # -*- coding: utf8 -*- import zipfile import os zipPassword = "압축암호" with open('fielist.txt') as f: lines = f.readlines() for line in lines : lineArray = line.split(',') folderName = lineArray[0] hashValue = lineArray[1].replace("\n","") if not os.path.exists("./" + folderName): ..
Python(파이썬)으로 Whois(후이즈) import sys import re from ipwhois import IPWhois from pprint import pprint file = open("domains.txt", "r") ips = [] cnt = 0 for text in file.readlines(): text = text.rstrip() regex = re.findall(r'(?:[\d]{1,3})\.(?:[\d]{1,3})\.(?:[\d]{1,3})\.(?:[\d]{1,3})$', text) if regex is not None and regex not in ips: cnt += 1 ips.append(regex) file.close() print 'ip count : ' + str(cnt) file_w = open("resul..
Python(파이썬)으로 Port Scan (포트 스캔) from socket import * from threading import Thread import re import time global ThreadCnt ThreadCnt = 0 PortList = {20:'FTP', 21:'FTP', 22:'SSH', 23:'Telnet', 24:'mail', 25:'SMTP', 80:'HTTP', 443:'HTTPS', 3306:'MySQL',} def ConnScan(Target_Host, Target_Port): try: connskt = socket(AF_INET, SOCK_STREAM) connskt.connect((Target_Host, Target_Port)) connskt.send('hello') result = connskt.recv(1024) f..
Python(파이썬)으로 URL, IP 추출 import sys import re class FindString : def __init__(self) : print 'Start Find String\n' self.lines = [] def __del__(self) : print '\nEnd Find String' def readfile(self, filePath): try: self.file = open(filePath, 'r') while True: line = self.file.readline() if not line: break self.lines.append(line) self.file.close() except IOError : print 'Cannot read file : ' + filePath sys.exit() def parseFil..
matplotlib 이용해 파일 사용 흔적 확인 프로그램의 실행흔적을 확인하고 싶을 때 여러가지 방법이 있겠지만 참고 : http://moaimoai.tistory.com/136 그 프로그램이 생성하는 파일로 해당 프로그램의 사용흔적을 추정할 수 있다. 이는 파이썬을 통해 쉽게 추적이 가능하며 본 프로그램에서는 추적뿐만 아니라 그래프로 쉽게 표현해주는 기능을 추가하였다. 지금은 파일 확장자로 파일을 탐색하지만, 더 정확하게 파일이 가지는 고유 시그니처를 통해 파일의 확장자를 구별할 수 있다. 아래 코드에서 확장자를 더 추가하고 싶으면 extList = [".hwp", ".doc", ".pdf", ".txt"]
python nmap 모듈 분석 윈도우즈 환경에서 nmap 파이썬 모듈을 사용하기 위해 인터넷 자료를 찾아보았지만 잘 정리된 문서가 없는 것 같다. 그래서 직접 실행을 하면서 정리해보았다. 1. 설치 방법 http://xael.org/norman/python/python-nmap/ 다음의 사이트에서 모듈 파일을 다운받는다. 참고로 파이썬 2.7 버전을 쓰시는 사용자는 다음 파일을 다운받으면 된다. 압축을 푼 뒤 다음 명령어를 사용해 모듈을 설치한다. python setup.py install 2. 모듈 분석 1) nmap.PortScanner - 예제 : >>> import nmap >>> nm = nmap.PortScanner() >>> nm.scan('127.0.0.1', '22-443') >>> nm.command_line() u..
py2exe 를 사용해 파이썬 코드를 exe 실행파일로 만들기 내가 이 블로그에 올리는 exe의 대부분은 파이썬을 이용해 제작한 것이다. 아무래도 파이썬을 설치해야 하는 번거로움 때문에 exe로 제작하는 경우가 많다. 그런 py 코드를 exe 로 만들어주는 모듈 중 하나가 py2exe 이다 먼저 py2exe 모듈을 설치해야 한다. 다음의 프로그램을 다운 받고 설치 한다. 만약 다른 버전의 파이썬을 사용하고 있는 경우 http://sourceforge.net/projects/py2exe/files/py2exe/0.6.9/ 링크에서 찾아 다운받으면 된다. py2exe.py 코드를 수정한다. 위의 파일을 다운받고 압축을 해제한다. py2exe.py 코드를 메모장을 사용해 내용을 수정한다. console = [ "작성한 코드.py" ] 여기서 작성한 코드 이름을 넣어주면 ..