Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
lazenca0x0@ubuntu:~/Kernel/Exploit/Null$ sudo insmod ./chardev.ko 
lazenca0x0@ubuntu:~/Kernel/Exploit/Null$ sudo chmod 666 /dev/chardev0 
lazenca0x0@ubuntu:~/Kernel/Exploit/Null$ 

...

Proof of Concept

PoC code

  • 다음 코드를 이용하여 "Null pointer dereference" 취약성을 확인할 수 있습니다.
    • mmap() 함수를 이용하여 0x0 영역에 읽기,쓰기,실행이 가능한 영역을 매핑합니다.
    • memcpy() 함수를 이용하여 0x0 영역에 payload 변수의 값을 복사합니다.
      • payload 변수에는 call 명령어를 이용하여 "0xdeadbeef" 영역을 호출하는 shellcode가 저장되어 있습니다.
    • open() 함수를 이용하여 취약성이 존재하는 드라이버 파일을 엽니다.
    • write() 함수를 이용하여 chardev_write() 함수가 호출 되도록 합니다.

...