본문 바로가기

module

남의 컴퓨터를 내 마음대로 다룬다? - Python Reverse Shell_001 - Creating a Socket (파이썬 리버스 쉘 - 소켓 만들기) 안녕하세요. 이번에는 새로운 PYTHON SERIES 를 올려볼까 합니다. REVERSE SHELL 이라고 합니다. 처음 들어보는 분들도 계시겠지만, 개략적인 내용은 대부분 알고 있는 친숙한 개념입니다. 우선 아래 그림을 먼저 살펴볼까요? ▼ 왼쪽 그림에서 A -> C 로 접속을 하려고 하는데 중간에 방화벽(Firewall)이 존재할 경우가 있습니다. 이는 사용자들이 특정 웹서버나 사이트에 접속하는데 어려움을 겪게 하는 요인이 되기도 합니다. 물론 보안상 혹은 다른 여타의 이유로 방화벽을 설정하기도 하지만, 기업체에서 단순히 접속을 막아두는 경우도 있습니다. 이럴 경우 VPN(Virtual Private Network: 가상 사설망)을 이용해서 우회하기도 하지만 이 역시 한계가 있습니다. 이럴때 사용하는.. 더보기
오디오 파일 자동 변환 시키기 by using FFMPEG, PARALLEL with CLI, Automator - (Automatic Converting FLAC files to M4A files using ffmpeg, parallel with CLI, Automator) 안녕하세요. 리눅스 시스템을 사용하는 유저라면 쉽게 접할 수 있지만, 윈도우즈나 맥을 사용하는 유저 중 대다수는 명령어를 사용해서 내가 사용하고자 하는 프로그램을 만든다는게 다소 낯설수 있을 것입니다. 그러나 많은 자동화 시스템 중 비교적 손쉽게 만들 수 있는 부분이 있는데, 그 중 하나인 homebrew 를 사용하여 오디오 자동 변환 프로그램을 구현하는 것입니다. 몇 줄의 명령어만 넣으면 오디오 파일을 변환할 수 있습니다. 여기에 맥에 있는 오토메이터(Automator)를 이용하여 특정 폴더에 변환할 파일 혹은 폴더를 투척(집어넣기)만 하면 자동으로 변환을 시켜주게 만들어 보도록 하겠습니다. 우선 이 시스템은 맥킨토시(MAC) 이기에 여기에 맞추어 작성을 하겠습니다. 오토메이터 부분만 제외한다면 윈도우.. 더보기
Xcode with Swift - 텍스트 넘겨주기(Handing Over) iOS 에서 버튼을 클릭했을 때, 텍스트에 있는 내용을 다음 창으로 전달하는 간단한 모듈을 만들어 보고자 한다. 새로운 프로젝트를 만들기 위해 아래와 같이 뉴 프로젝트를 생성한다.▼ iOS Application 에서 싱글 뷰를 선택하고 다음으로 넘어간다.▼ 프로젝트명을 적당한 이름을 기입해 준다. 여기서는 텍스트를 넘겨준다는 의미로 'HandingOver'라고 명명하였다.▼ 프로젝트를 생성해줄 폴더를 찾아 'Create'를 눌러준다.▼ 이렇게 생성된 프로젝트는 아래와 같은 창을 보여준다.▼ 애플리케이션에서 보여지는 부분을 다루는 메인스토리리 보드를 선택하면 아래와 같은 화면이 나타난다. ▼ 우측 아래에 있는 Objects에서 버튼을 찾고, 메인스토리 보드에 드랙해서 적당한 위치에 자리 잡아준다.▼ 입력할.. 더보기
[PYTHON 3] Tutorials 32. Make words counters - 1 ( words counter 만들기) 이번 시간에는 'words counter'를 만들어 보겠습니다. 말 그대로 얼마나 많은 단어들이 있는지 카운팅 하는 프로그램입니다. 일반적으로 'words counter'는 문서 작업을 할 때에 얼마나 많은 글자가 사용되어는지 확인하는 용도로 많이 활용되곤 합니다. 대신 이번에는 특정 웹 페이지에서 어떤 단어가 얼마나 많이(빈도수) 사용되어졌는지를 알아보는 프로그램을 만들어보겠습니다. 이는 빅데이터, search engine(검색엔진) 분야 등 다양한 분야에 광범위하게 사용이 되는 개념이기도 합니다. 시작을 하겠습니다. 우선 코딩에 필요한 모듈들을 import 하겠습니다. 이번에는 웹페이지 관련 모듈인 requests, HTML 코드를 예쁘게(?), 단정하게 보여주는 BeautifulSoup, 카운팅 관.. 더보기
[PYTHON 3] Tutorials 20. Modules(모듈화) 안녕하세요. 이번 시간에는 모듈(Modules)에 대해 알아보고자 합니다. 프로그래밍을 하다 보면 함수(Function)들을 사용하고 또 사용하는, 일명 재사용성이 증대되는데, 이럴때 자주 사용하는 함수들을 모아두고 불러와서 사용하면 훨씬 수월하게 프로그램을 작성할 수 있게 되겠죠? 시간도 절약하고 코드 재활용도 할 수 있게되는 것이죠. 이렇듯 자주 사용하는 함수들을 하나의 파일 형태로 모아 두는데 이를 모듈이라고 합니다. 모듈은 이미 누군가가 만들어 놓은 것도 있고 본인이 직접 만들어서 사용할 수도 있습니다. 이미 누군가 만들어 놓은것은 프로그램 상단에 'import'라는 단어를 넣고 불러오고자 하는 모듈명을 적어주면 됩니다. 만들어 놓은 모듈이 없다면 직접 만들어서 불러와서 사용할 수도 있습니다. 자.. 더보기
[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 함수를 정의하고.. 더보기