Canaries Canaries 또는 Canary word는 버퍼 오버 플로우를 모니터하기 위해 버퍼와 제어 데이터 사이에 설정된 값이다. 버퍼 오버플로가 발생하면 Canary 값이 손상되며, Canaries 데이터의 검증에 실패하여 오버플로에 대한 경고가 출력되고, 손상된 데이터를 무효화 처리한다. Types of canaries Terminator canaries Terminator Canaries는 Canary의 값을 문자열의 끝을 나타내는 문자들을 이용해 생성한다. Terminator Canaries의 값은 NULL(0x00), CR(0x0d), LF(0x0a) 및 EOF(0xff)로 구성됨. 공격자는 canaries를 우회하기 위해 return address를 쓰기 전에 null 문자를 써야 한..