게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
보안과 IoT, 그리고 Rust 관련 그냥 생각
게시물ID : programmer_8496짧은주소 복사하기
작성자 : 상상속동물
추천 : 2
조회수 : 1327회
댓글수 : 3개
등록시간 : 2015/03/09 08:33:13

보안쪽 흐름은 크게 둘로 나뉠 수 있습니다.

버그가 발생하지 않도록 검수할 수 있도록 하는 방향과
버그가 발생해도 문제없도록 안전장치를 만드는 방향입니다.

해외 컨퍼런스에서 발표되는 논문들의 추세로 볼때, 
검수 측면은 잘 모르겠고 버그가 있더라도 
99% 정도는 버그(취약점)를 막을 수 있습니다. 

이것은 스택 프로텍션과 비슷한 원리로 사실상 DEP가 적용되었다면 
공격할 수 있는 마지막 수단인 ROP와 같은 공격방법도 원천적으로 막을 수 있습니다. 
단 스택프로텍션과 마찬가지로 시스템 자원이 소모되는게 문제죠. 

DEP, 스택프로텍션, CFI와 같은 안전장치들이 모두 시스템 리소스를 소비합니다. 

요즘 공유기 관련 보안 문제가 대두되어 이슈되고 있는데, 사실 이것은 공유기에 국한된 문제가 아닙니다. 
IT기기들은 모두 펌웨어를 탐재하고 있고, 펌웨어들은 그동안 보안의 사각지대였기 때문에 
해커들이 목표로하면 100이면 100 뚫리게 되어있습니다. 
(이해를 돕자면 지문인식 출입통제 장비 같은 경우가 있습니다.) 

요즘 IoT라는 말이 뜨고 있는데, 초소형 임베디드 장치를 일컫습니다. 블루투스 beacon같은 장비가 여기 속하죠. 
IoT 장비는 성능도 낮고 저전력이 필수이기 때문에 위에서 언급한 안전장치를 넣긴 애매합니다. 
하지만 네트웍과 연관되어 보안 문제가 발생되면 엄청난 파급력을 가져올 분야입니다. 

때문에 보안 쪽에는 앞으로 버그가 발생하지 않도록 검수하는 방향이 매우 각광을 받을거고 (그래봤자 마이너리그지만)
그 방법을 살펴보면 결국은 static, dynamic, symbolic 세 가지 방향으로 모든 소스코드를 분해해서 
바운더리 체크, 댕글링 포인터 체크 등을 하는 겁니다.  

Rust는 C, C++과 유사한 시스템 프로그래밍 언어로서 앞서 소스를 분해해서 검수하는 방법을
언어측면에서 구현하여 사용자에게 옳바른 코딩을 강제할 수 있으므로 검수를 하지 않더라도 
안전하게 시스템 프로그래밍을 할 수 있죠. 이게 참 좋아보입니다. 

꼬릿말 보기
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호