본문 바로가기

반응형

전체 글

(170)
Python/파이썬 암호 모듈 설치(Windows) # pycrypto- 더 이상 유지보수 하지 않음. - 2015년https://github.com/dlitz/pycrypto/issues/16(리눅스 설치법은 많아서 windows환경)- 설치(windows) : py -2 -m pip install pycrypto- 오류 해결 : http://aka.ms/vcpython27 설치Microsoft Visual C++ Compiler for Python 2.7 # pycryptodome- 설치 : py -m pip install pycryptodome # cryptography - 설치 : py -m pip install pycryptodome
Python/IPython 설치 # IPython- python 쉘에서 시스템 명령과 각종 편의 기능을 추가한 강력한 파이썬 실행 환경 # 장점- 대화형 컴퓨팅으로 분석 프로그래밍 최적합- 운영체제의 쉘 파일 시스템과 통합되어 있음- 웹기반의 대화형 노트북 지원으로 수식, 표, 그림 등을 표현 가능- 가볍고 빠른 병렬컴퓨팅 엔진 이용- 코딩과 문서화, 테스트까지 한화면 - Code assist 기능 # 기본 키 기능 - 출처 : http://studymake.tistory.com/600 # 설치- sudo pip install ipython # 의존성 해결- sudo pip install requests- sudo pip install jinja2 sphinx pyzmq pygments tornado nose readline- sudo..
C/GCC/최적화 및 디버깅 옵션 추가 # gcc 최적화 옵션- O : 최적화 전체 수준 제어 , 최적화 레벨이 올라갈 수록 컴파일 실행 시간과 메모리 소비율이 증가합니다.- O0 : 최적화x- O, O1 : 코드 크기와 실행 시간 감소- O2 : 메모리 공간과 속도의 희생을 제외하고 최적화 (loop unrlloing, function inlining에 대한 최적화 수행 x)- O3 : O2 최적화GDB API - 레퍼런스 정리에 인라인 함수와 레지스터에 대한 최적화를 추가로 수행- Os : O2 최적화 기능을 사용하지만, 코드 크기를 증가시키지 않음- Og : (GCC4.8++) 디버깅에 혼란을 주는 최적화 기능을 제거합니다.- Ofast : (GCC4.7++) : -O3, -ffast-math, -no-protect-arens, -fst..
C/Pointer/C포인터의 이해와 활용 - 3 ※ 본 자료는 위 책을 읽고 개인적으로 정리한 포스트임을 알려드립니다. # 포인터와 함수- 포인터는 함수로 데이터를 전달하거나 함수에 의해 데이터를 수정할 수 있게함.복잡한 데이터 역시 구조체의 포인터 형태로 함수에 전달되거나 반환될 수 있음.포인터가 데이터 타입이 아닌 함수의 주소를 가리키는 경우프로그램의 실행 흐름을 동적으로 제어하는 데 사용될 수 있음. - 프로그램 스택 이해현대의 블록 구조 언어에서 함수의 실행을 지원하기 위해 사용함수가 호출되면 함수의 스택 프레임이 생성되고 프로그램 스택에 추가(push) - 함수가 반환될 때프로그램 스택은 C언어와 같은 현대의 블록 구조 언어에서 함수의 실행을 지원하기 위해 사용함수는 함수에 의해 참조되는 데이터를 수정할 수 있음.덩치가 큰 데이터를 효과적으로..
C/Pointer/C포인터의 이해와 활용 - 2 ※ 본 자료는 위 책을 읽고 개인적으로 정리한 포스트임을 알려드립니다. # 동적 메모리 관리- 포인터의 강력한 기능의 대부분은 동적으로 할당된 메모리를 추적할 수 있는 포인터의 능력에서 기인한다.동적 메모리 관리는 복잡한 데이터 구조를 조작하는 일을 포함한 많은 일의 핵심이다.- C 프로그램은 런타임 시스템(runtime system) 안에서 실행된다.런타임 시스템 : 운영체제에서 제공되는 환경많은 프로그램 기능들과 함께 스택(stack), 힙(heap)을 지원 - 메모리 관리 : 프로그램의 핵심자동 관리 : 자동 변수의 메모리 할당정적 변수와 전역 변수의 경우는 프로그램 시작 시 0으로 초기화되는 애플리케이션의 다른 데이터 세그먼트에 위치함 - 메모리를 할당하고 해제하는 능력메모리를 더 효율적이며 유연..
C/Pointer/C포인터의 이해와 활용 - 1 ※ 본 자료는 위 책을 읽고 개인적으로 정리한 포스트임을 알려드립니다. #포인터와 메모리- 정적(Static)/전역(Global)정적으로 선언된 변수는 정적/전역 메모리에 할당 -> Data영역이나 BSS영역시작될 때 할당되며 종료될 때까지 메모리에 남아있음.전역 변수는 모든 범위에서 접근, 정적 변수는 선언한 함수 범위내에서 접근- 자동(Automatic)/로컬(Local)함수 안에서 선언되고 함수가 호출될 때 생성됨접근 범위는 선언한 함수 범위내블록문안의서에 선언은 범위가 블록문 안으로 좁혀짐- 동적(Dynamic)동적 메모리는 힙 영역에 하당 되고 필요할 경우 해제됨포인터를 사용하여 메모리 영역을 참조해제하지 않는한 메모리 영역에 존재 # 포인터를 잘알아야 하는 이유- 용도빠르고 효율적인 코드작성다..
Python/자료 목록/Python Exploit Development # 목록- PeachPy- Peda- moneyshot- libformatstr : 포맷스트링 exploit - Sulley, PaiMei : fuzzing suites- riusksk/ shellsploit-library- Python Haystack : Heap FrameWork- Radium keylogger : 키로거- kitty- PEDAL- hexdump- angr - shellnoob- one_gadget- libc-database- checksec- xrop- ROPgadget- pwntools- QIRA- pwndbg- hugsy / gef - svenito / exploit-pattern-mgeeky / Exploit-Development-Tools- roissy / IOI- amons..
System/Linux/Angr 정리 # 설치- 종속성 해결 sudo apt-get install virtualenvwrapper python2.7-dev build-essential libxml2-dev libxslt1-dev git libffi-dev cmake libreadline-dev libtool debootstrap debian-archive-keyring libglib2.0-dev libpixman-1-dev libqt4-dev graphviz-dev binutils-multiarch nasm libc6:i386 libgcc1:i386 libstdc++6:i386 libtinfo5:i386 zlib1g:i386- 경로 찾기1find / -name virtualenvwrapper.shcs - ~/.bashrc 파일에 추가12ex..

반응형