Java 환경만 구성되어 있을 경우 C/C++ 도 컴파일 할 수 있도록 설정해 명령을 실행하도록 합니다.
1. 윈도우용 C/C++ 컴파일러인 MinGW를 설치합니다.
http://sourceforge.net/projects/mingw/files/ 에서 최신 버전 설치 하시면 됩니다.
2. 환경 변수를 설정해 g++.exe 가 어느 경로에서도 동작하도록 합니다.
* 재부팅을 해야 적용됨
또는 cmd 에서
C:>set PATH=%PATH%;C:MinGWbin
위와 같이 설정하여, 사용 가능하도록 하고,
C:>gcc --version
gcc (GCC) 4.6.2
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
정상작동 확인함.
3. fortify에서 제공하는 예제 test
C:Program FilesFortify SoftwareHP Fortify v3.40Samplesbasiccpp
경로에 sample.cpp 를 제공함
C: 에서 컴파일 하면, permission denied error 가 발생할 수 있으므로, D: 나 다른 드라이브에서 test
O:>sourceanalyzer -b sample-cpp g++ sample.cpp
O:>sourceanalyzer -b sample-cpp -scan -f sample.fpr
Header 파일이 없어서 error 가 발생함.
if (strncmp(cmd, safe, strlen(safe)) != 0) {
를
if (1 != 0) {
returnCode = system(cmd);
를
returnCode = 123;
로 변경하여, test
4. Audit Workbench 에서 결과 확인
5. 진단 대상 소스를 위와 같은 방법으로 확인
각종 해더파일이나 링크 에러는 이러한 방법으로 진단이 어려움.
6. Visual Studio 에서 개발된 경우 fortify 설치시, 해당 버전 plugin을 추가 설치해 진단하기를 권장함.
* 설치시 플러그인 선택
댓글 달기