리눅스 커널 해킹을 언젠간 해보고 싶습니다.

ka0r1의 이미지

자료구조, 운영체제, 네트워크, 컴퓨터구조등등
이런걸 공부하고 있는데요.
리눅스 커널 취약점을 찾아내는 위치까지 올라가고 싶습니다.
예전에 C언어 문법 다 때고 무작정 커널관련 책을 구입했다가
시작부터 막혀버려서 낭패를 본 경험이 있습니다.
현재는 위의 기본적인 과목말고도 Windows Reverse Engineering을 공부하고 있습니다만,
윈도우 운영체제를 알고난 후 리눅스 커널을 분석해보는 것을 하고 싶습니다.
리눅스 설치 및 서버 운영까진 배웠는데 커널 영역은 다르더라구요.
커널을 공부하기 위해 어떤 사전지식이 필요한가요?
존귀하신 선배님들의 조언을 얻고자 합니다.

황병희의 이미지

리눅스커널메인테이너/해커:
잘하기만 하면 앤간한 직종보다 돈을 훨씬더 잘 벌수 있다고 IRC 대화방에서 들었어유.
잘하는게 그런데 참 쉽지 않아요~
그래도 화이팅요!!!

[크롬북에서 적었어유]

--
^고맙습니다 감사합니다_^))//

joone의 이미지

AustinKim의 이미지

리눅스 설치 및 서버 운영까진 배웠다고 하시니 언급하신 커널은 리눅스 커널을 의미하는 것 같은데요.
리눅스 커널을 해킹하신다고 가정하고 답신을 드리면요.

일단 간단한 디바이스 드라이버를 하나 짜서 돌려보시고 커널에서 제공하는 함수를 사용해보면서 그 영역을 확대해 나가시길 권장드립니다. 혹시 처음 시작할 때 참고할만한 책으로 아래 추천 도서 목록을 참고하세요.

* 임베디드 OS 개발 프로젝트
http://www.yes24.com/Product/Goods/84909414

운영체제와 ARM 프로세서의 원리를 직접 구현하면서 실습할 수 있는 책입니다. 각 코드를 짜보면서 해킹하고 싶은 커널은 어떻게 구현됐는지 비교해보시면 좋습니다. 정말 좋은 책이니 꼭 읽어 보셨으면 합니다.

* 코드로 알아보는 ARM 리눅스 커널
http://www.yes24.com/Product/Goods/60856943

국내 개발자가 쓴 리눅스 커널 책 중에 가장 난이도가 높은 축에 속합니다. 리눅스 커널의 소스를 하나 하나 보면서 세세한 동작 원리를 파악하시려면 필독할만한 책입니다.

* 리눅스 커널 패치와 커밋
http://www.yes24.com/Product/Goods/18488713

리눅스 커널 커뮤니티에서 기여(Contribution)하는 자세한 방법을 기술한 책입니다.
커널 해킹을 하기 위한 최고의 방법은 직접 커널 코드를 수정하고 Contribution하는 겁니다.

(개인블로그)
http://rousalome.egloos.com