본문 바로가기
반응형

Security/[리얼] System4

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.
간단한 바이너리를 통한 ROP 공격 ROP( Return Oriented Programing )에 관하여 문서화해여보았습니다. 대상 바이너리는 간단하게 했으며 로컬 환경에서 작업이 이루어집니다. 2014. 8. 15.
페이징(Paging) 페이지 - 가상메모리를 동일한 크기로 분할프레임- 물리적 메모리를 동일한 크기로 분할 페이지의 가상 주소는 V=(p,d)(p = 페이지 번호, d = 블록내 페이지의 변위) 1. 사용가능한 메모리의 페이지 프레임에 적재되고 프레임을 할당받음2. 할당 후 물리메모리에 올라감 페이지 크기에 따라 디스크의 접근횟수가 결정된다.(페이징 시스템 효율성을 좌우한다.) 참고 : http://snowwiki.fuzewire.com/wiki/applied_sciences/computer_science/infor_science/read.html?psno=*D30ACDF27AEAFC44D3AF426EF24F0DA54E784B89 기억 장치 내에 원하는 장소를 접근할수있다. 여기서 본것처럼 i번지에 있는 정보를 액세스하기 위.. 2014. 5. 29.
바인딩 타임(binding time) 바인딩 타임이란? 바인딩은 프로그램의 각종 변수값들이 실제 값으로 묶여 버리는 것으로, 개념적으로는 설계, 코딩, 컴파일, 실행, 번역, 언어의 구현, 정의 등 프로그래밍 전 과정에 걸쳐 일어나나 일반적으로는 컴파일 시간에 일어나는 정적 바인딩과, 실행 시간에 일어나는 동적 바인딩을 의미한다. 따라서 바인딩 타임이란 프로그램에서 변수들이 갖는 속성이나 값이 완전히 결정되는 시간을 말하며, 이름에 속성이 연결되는 시간을 뜻한다. 바인딩 타임의 종류 1) Language Implementation time :: data type(ex:int, float, char..)에 대해서 표현 범위나 자리수가 정해진다.. 2) language definition time :: data type을 정의한다. 예를들면 i.. 2013. 9. 16.