C8 CERT C - FIO 규칙 목록 FIO Input Output (FIO) - 입출력 파일 입출력에 관련된 내용을 다루는 카테고리입니다. 파일 조작 시의 안전한 접근 방법과 오류 처리에 대한 규칙이 포함되어 있습니다. RuleNumber Rule Definition 설명 FIO08-C열려 있는 파일에서 remove() 함수를 호출할 때 주의하세요.열린 파일에 대해 remove() 함수를 호출하는 것은 구현에 따라 정의됩니다.공격받기 쉬운 임시 파일의 이름을 숨기기 위해 열려 있는 파일을 제거하는 것이 권장되는 경우도 있습니다. (FIO21-C를 참고하세요. 공유 디렉터리에 임시 파일을 생성하지 마세요.)열린 파일을 제거해야 하는 경우 POSIX unlink() 함수와 같이 보다 강력하게 정의된 함수를 고려해야 합니다.엄격하게 준수.. 2024. 11. 14. CERT C - 규칙 목록 MEM Memory Management (MEM) - 메모리 관리 메모리 할당과 해제에 관련된 내용을 다루는 카테고리입니다. 동적 메모리 할당 시의 안전한 사용 방법과 메모리 누수 방지에 대한 규칙이 포함되어 있습니다. Rule NumberRule Definition설명MEM01-Cfree() 바로 뒤에 포인터에 새 값을 저장합니다.Dangling 포인터는 악용 가능한 double-free 및 access-freed 메모리 취약점으로 이어질 수 있습니다.Dangling 포인터를 제거하고 많은 메모리 관련 취약점을 방지하는 간단하면서도 효과적인 방법은 포인터가 해제된 후 포인터를 NULL로 설정하거나 다른 유효한 개체로 설정하는 것입니다.MEM30-C해제된 메모리에 액세스하지 마십시오.포인터 역참조, .. 2024. 11. 13. CERT C - STR 규칙 목록 STRCharacters and Strings (STR) - 문자와 문자열 문자열 조작에 관련된 내용을 다루는 카테고리입니다. 문자열 조작 함수의 안전한 사용과 버퍼 오버플로우(buffer overflow) 방지에 대한 규칙이 포함되어 있습니다. Rule NumberRule Definition설명STR03-C실수로 문자열을 자르지 마십시오.버퍼 오버플로 취약성을 완화하기 위해 복사된 바이트 수를 제한하는 대체 기능이 권장되는 경우가 많습니다. strncpy() instead of strcpy()strncat() instead of strcat()fgets() instead of gets()snprintf() instead of sprintf() 이러한 함수는 지정된 제한을 초과하는 문자열을 자릅니다... 2024. 11. 12. CERT C - ARR 규칙 목록 ARR Arrays (ARR) - 배열배열과 관련된 내용을 다루는 카테고리입니다. 배열의 안전한 사용을 위한 규칙이 포함되어 있습니다. Rule NumberRule Definition설명ARR02-C암시적으로 초기화된 경우라도 배열의 경계를 명시적으로 지정하라배열의 경계를 명시적으로 지정해야 합니다.암시적으로 초기화된 경우라도 배열의 경계를 벗어나지 않도록 주의해야 합니다.배열의 크기를 명시적으로 지정하는 측면에 초점을 두고 있습니다.ARR30-C배열의 인덱스가 유효한 범위 안에 있음을 보장하라배열의 인덱스가 유효한 범위 내에 있음을 확인해야 한다고 강조합니다.배열의 인덱스가 유효하지 않으면, 예를 들어 배열의 경계를 벗어난 경우, 정의되지 않은 동작이 발생할 수 있습니다.배열의 인덱스를 검사하여 유효.. 2024. 11. 11. 이전 1 2 다음 728x90