본문 바로가기
기타

치명적 파이썬 (Violent Python) – 0x01 기초정리(1)

by 김태홍 2014. 10. 26.

당분간은 치명적 파이썬(Violent Python)을 공부 하면서 정리 할 예정이다.

 

일단 책은 너무 얇아서 좋다. 다만 표지가 뱀만..아니었다면 더 좋았을텐데;;

이 책을 읽기 전에 파이썬 기본서 한 권쯤은 보고 보는 것 을 추천한다.

<출처 : http://image.yes24.com/goods/8433461/L>

 

포스팅되어질 코드는 2.78 기준으로 작성을 할 예정이고 이는 대부분의 Security 관련 라이브러리들이 2.x 버전에

더 최적화 되어 있기 떄문이다.

 

이번 포스팅에서 다루게 되는 범위 : 치명적 파이썬 챕터 1(~21page)

 

변수

파이썬 언어에서 가장 큰 장점은 변수의 타입을 따로 정하지 않는 것 이 라고 생각한다.

파이썬 언어는 파이썬 인터프리터가 변수가 어떤 데이터 타입인지 그리고 메모리에서 얼마나 많은 공간을 확보할 것인지 결정한다.

 

port = 21 banner = "FreeFloat FTP Server" print "[+] Checking for" + banner + "on Port " + str(port)  ********Result******** [+] Checking forFreeFloat FTP Serveron Port21 

문자열

파이썬의 또다른 매력은 강력한 문자열 처리 메소드들을 가지고 있다는 것 이다.

각 라이브러리의 사용법은 아래 공식 홈페이지를 참고 하면 된다.

스트링 라이브러리 관련

 

banner = "FreeFloat FTP Server" print banner.upper() ********Result******** FREEFLOAT FTP SERVER  print banner.replace('FreeFloat','Ability') ********Result******** Ability FTP SERVER  print bannder.file('FTP') ********Result******** 10 

리스트

객체들을 배열로 저장 할 수 있으며, 배열 구조 이므로 당연히 인덱스를 통해 접근이 가능 하다.

추가, 삽입, 제거, 인덱스화, 카운트, 정렬 같은 작업을 하기 위해 메소드를 재정의 할 필요 없이

자체적으로 메소드를 제공하고 있으며 자세한 내용은 아래 사이트를 참고 하면 된다.

참고 자료 : https://docs.python.org/2/tutorial/datastructures.html

 

portList = [] portList.append(21) portList.append(80) portList.append(443) portList.append(25) print portList  ********Result******** [21,80,443,25]  portList.sort() print portList  ********Result******** [21,25,80,443]  pos = portList.index(80) print "[+]There are"+str(pos)+"ports to scan before 80."  ********Result******** [+]There are 2 ports to scan before 80.  portList.remove(443) print portList  ********Result******** [21,25,80]  cnt = len(portList) print "[+]Scanning "+str(cnt)+" Total Ports."  ********Result******** [+]Scanning 3 Total Ports. 

나머지 내용은 치명적 파이썬 (Violent Python) – 0x01 기초정리(2)에서 마무리 하도록 하곘습니다.

 

 

댓글