Showing
1 changed file
with
71 additions
and
0 deletions
README.md
0 → 100644
1 | +[![MIT License][license-shield]][license-url] | ||
2 | + | ||
3 | + | ||
4 | +<!-- TABLE OF CONTENTS --> | ||
5 | +## Table of Contents | ||
6 | + | ||
7 | +* [About the Project](#about-the-project) | ||
8 | +* [Build](#Build) | ||
9 | +* [Usage](#usage) | ||
10 | +* [License](#license) | ||
11 | +* [Contact](#contact) | ||
12 | + | ||
13 | + | ||
14 | +<!-- ABOUT THE PROJECT --> | ||
15 | +## About The Project | ||
16 | + 최근 다양한 IoT 디바이스의 사용이 증가하고 있다. baremetal IoT 디바이스의 경우에는 운영체제가 존재하지 않는 구조로 하나의 애플리케이션이 실행되며, 운영체제가 제공하는 보안 메커니즘이 존재하지 않는다. 따라서, 운영체제가 제공해주는 I/O protection, memory protection등의 혜택을 받지 못한다. 이로인해 memory corruption attack, code reuse attack 등에 취약하며, I/O 디바이스로의 허용되지 않는 접근이 발생할 수 있다. 본 논문은 baremetal 펌웨어의 취약점을 MPU(Memory Protection Unit), load timeaddress randomization, ARM TrustZone등의 기법을 이용하여 사전에 차단할 수 있도록 하는 보안 강화기법을 연구해보고 구현해본다. | ||
17 | + | ||
18 | +<!-- BUILD --> | ||
19 | +## Build | ||
20 | + | ||
21 | +1. Clone the repo | ||
22 | +``` | ||
23 | +git clone http://khuhub.khu.ac.kr/2020-2-capstone-design2/2015104175.git | ||
24 | +``` | ||
25 | + | ||
26 | +2. Install cmake | ||
27 | +``` | ||
28 | +sudo apt install cmake | ||
29 | +``` | ||
30 | + | ||
31 | +3. Create Build folder | ||
32 | +``` | ||
33 | +mkdir ./2015104175/build | ||
34 | +``` | ||
35 | + | ||
36 | +4. Change directory | ||
37 | +``` | ||
38 | +cd ./2015104175/build | ||
39 | +``` | ||
40 | + | ||
41 | +5. Create LLVM Clang build file | ||
42 | +``` | ||
43 | +cmake -DLLVM_ENABLE_PROJECTS=clang -G "Unix Makefiles" ../llvm-project/llvm | ||
44 | +``` | ||
45 | + | ||
46 | +6. Build | ||
47 | +``` | ||
48 | +make | ||
49 | +``` | ||
50 | + | ||
51 | + | ||
52 | +<!-- USAGE EXAMPLES --> | ||
53 | +## Usage | ||
54 | +``` | ||
55 | +2015104175/build/bin/clang -emit-llvm -c -S source.c -o source.ll | ||
56 | +``` | ||
57 | +``` | ||
58 | +2015104175/build/bin/clang -load 2015104175/build//lib/LLVMBaremetalSec.so -lr source.ll -o source.ll | ||
59 | +``` | ||
60 | + | ||
61 | + | ||
62 | +<!-- LICENSE --> | ||
63 | +## License | ||
64 | +LLVM([https://github.com/llvm-mirror/llvm](https://github.com/llvm-mirror/llvm)) | ||
65 | + | ||
66 | +<!-- CONTACT --> | ||
67 | +## Contact | ||
68 | +2015104175 박우진 - amdx1254@khu.ac.kr <br> | ||
69 | + | ||
70 | +[license-shield]: https://img.shields.io/github/license/othneildrew/Best-README-Template.svg?style=flat-square | ||
71 | +[license-url]: https://github.com/othneildrew/Best-README-Template/blob/master/LICENSE.txt |
-
Please register or login to post a comment