우리는 C 코드 기반을 위해 코드 분석기로 Splint를 사용할 계획입니다. 그러나 우리는 전에는 부목 도구를 사용해 본적이 없었습니다. 그래서 우리는 당신의 의견을 베니스, 찬반 양론이라고합니다.C 용 부목 코드 분석기
답변
당신을 위해 무엇을 할 수 있는지에 대한 간략한 개요는 this transcript을 참조하십시오.
보풀 도구는 일반적인 문제와 코드 검토에서 누락되는 오류를 찾는 데 유용합니다. 제 생각에는 정적 코드 분석을 할 때 잃을 것이 아무것도 없다는 것입니다. 유일한 단점은 중요하지 않을 수있는 오진 또는 경고를 많이 얻을 수 있다는 것입니다 (즉 코딩 스타일 권장 사항). 좋은 필터링 기술을 개발해야합니다. 정적 분석기는 모든 것을 포착 할 수는 없지만 아무것도없는 것보다 낫습니다. 이 도구는시 오류가있을 수 패턴을 찾습니다 http://www.sans.org/reading_room/whitepapers/securecode/secure-software-development-code-analysis-tools_389
: 여기
당신을 관심 수도 SANS 연구소에서 백서입니다. 장점은 도구가 잠복 버그를 발견 할 수 있으며 단점은 오탐 (false positive)에 대해서도 전체를 찾을 수 있다는 점입니다.waffleman은 정적 분석기가 많은 거짓 경보를 생성한다고 제안했습니다. 나는 Sparrow보다 더 나은 경보를내는 것을 막는다. 그것들은 우리가 정적 분석을 위해 사용하는 두 가지입니다.
전형적인 허위 경보 좋은 알람의 예는 다음과 같습니다
bar (char **output)
{
*output = malloc(100);
}
foo()
{
char *output=NULL;
bar(&output)
}
기능 표시 줄에서이 포인터 출력 메모리 누수를보고있다. 함수 foo에서는 함수 막대가 호출 될 때 NULL 역 참조를보고합니다. 그럼에도 불구하고 100 초의 거짓 알람 사이에서 진정한 알람을 찾는 것 중에서 선택의 여지가 있습니다.
코드 검토 중에 놓칠 수있는 메모리 누수가 있습니다. 라이센스가 비싸지 않게하고 알람이 거짓으로 표시되면 이후 분석에서 나타나지 않습니다. 그러므로 부목이 동일한 일을하는지 찾아야합니다.
Splint은 코드를 더욱 관용적으로 만들어서 (따라서 다양한 컴파일러에서 구문 분석하고, 더 이식성이 뛰어나며, 리팩터링하기 쉽습니다.) 더욱 뛰어납니다. 부목은 int와 float 사이의 암시 적 캐스트와 같은 미묘한 버그를 발견 할 수 있습니다. 부목은 메모리 누수 및 기타 보안 취약성을 추적합니다.
시험해보기 : splint hello.c
.
- 1. C 용 정적 코드 분석기
- 2. C, C#, C++ 및 Java 용 C# 코드 분석기
- 3. 코드 분석기 C# 및 VB.NET
- 4. C/C++ 용 옵션 구문 분석기?
- 5. C/C++ 프로젝트에는 Eclipse 소스 코드 분석기 플러그인이 있습니까?
- 6. 간단한 코드 분석기
- 7. HTML 코드 분석기
- 8. SPDH 용 어휘 분석기
- 9. PHP 용 정규식 분석기?
- 10. SPDH 프레임 용 분석기
- 11. .NET 용 레이스 컨디션 분석기
- 12. 인형 용 xcode 용 Clang 정적 분석기
- 13. 코드 분석기 : PMD 및 FindBugs
- 14. GAE 용 HTML 구문 분석기
- 15. iphone 용 XML 구문 분석기
- 16. iPad 용 OpenGL ES 분석기
- 17. 부목 디버깅 구문 분석 오류
- 18. C++ 용 MATLAB 코드 라이브러리
- 19. .NET 용 C 코드 컴파일
- 20. 목표 C 용 코드 생성기
- 21. objective-c 용 코드 반사기
- 22. C++ 용 동적 코드 분석
- 23. C++ dom 구문 분석기 문제
- 24. .net에 대한 정적 코드 분석기 작성 방법
- 25. Mac 용 로컬 호스트 패킷 분석기
- 26. Visual Studio 용 SQL 쿼리 분석기
- 27. Java 응용 프로그램 용 잠금 분석기
- 28. C/C++ PCM 오픈 소스 오디오 분석기
- 29. 라인 인을위한 스펙트럼 분석기?
- 30. http/http 트래픽 분석기
* 오 탐지 *를 강조 표시합니다. 주석이 달린 코드에 부목을 사용하는 것은 정말 재미 있지 않습니다 ... – eckes