Section 6
gets() 함수 이해하기
section 5 에서 마지막으로 했던 질의에 대해 좀더 알아보는 과정이다
gets()는 키보드로부터 문자열을 입력 받아 버퍼에 저장하는 함수이다
이때 이 함수는 주소를 파라미터로 받아 Call by reference 방식으로 입력을 받는다
즉, 엔터를 입력받은 곳까지 시작주소부터 채워나가는 것이다
이는 버퍼오버플로우를 발생시키는 취약점을 발생시키게 한다.
이렇듯 gets()가 프로그램에 큰 취약점을 야기할 수 있기 때문에
gcc에서 컴파일시 아래와 같은 경고문이 뜨게된다.
'Study > system' 카테고리의 다른 글
해커스쿨.Section 8 (0) | 2017.11.02 |
---|---|
해커스쿨.Section 7 (0) | 2017.11.02 |
해커스쿨.Section 5 (0) | 2017.11.02 |
해커스쿨.Section 4 (0) | 2017.11.02 |
해커스쿨.Section 3 (0) | 2017.10.17 |