[t:/]$ 지식_

write_cr0 트릭.

2011/09/01

시스템 콜 하이재킹.

https://memset.wordpress.com/2011/01/20/syscall-hijacking-dynamically-obtain-syscall-table-address-kernel-2-6-x/

옛날 커널에서는 시스템 콜 후킹이 가능했다.
이걸로 루트킷이 횡행하자 막기 시작했는데.. 꼼수들이 많이 생겼다.

최근 커널을 보니까 아예 sys_call_table이 읽기 전용이다.
sys_call_table에 내가 만든 새로운 함수로 덮어쓴 후 루트권한을 획득하는 것이 시스템 콜 하이재킹.

x86에서는 CR0 트릭을 쓰면 RO를 RW로 바꿀 수 있다.

http://securex0.tistory.com/entry/Linux-kernel-26x-Write-Protection%EC%9D%84-%EC%9A%B0%ED%9A%8C%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95-1-CR0-TRICK

아직 실험은 안 해봤음. ㅋ

업데이트 / 시스템 콜 래핑에 관한 논문 http://www.seclab.cs.sunysb.edu/anupama/papers/syscall_inherit.pdf









[t:/] is not "technology - root". dawnsea, rss