메뉴 건너뛰기

app

[fortify] C/C++ 진단하기

suritam92013.04.25 02:26조회 수 5853댓글 0

  • 5
    • 글자 크기

Java 환경만 구성되어 있을 경우 C/C++ 도 컴파일 할 수 있도록 설정해 명령을 실행하도록 합니다.

 

1. 윈도우용 C/C++ 컴파일러인 MinGW를 설치합니다.

http://sourceforge.net/projects/mingw/files/ 에서 최신 버전 설치 하시면 됩니다.

 

2. 환경 변수를 설정해 g++.exe 가 어느 경로에서도 동작하도록 합니다.

 1.png

* 재부팅을 해야 적용됨

또는 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


 3.png

4. Audit Workbench 에서 결과 확인

 

2.png

 

5. 진단 대상 소스를 위와 같은 방법으로 확인

각종 해더파일이나 링크 에러는 이러한 방법으로 진단이 어려움.

 

6. Visual Studio 에서 개발된 경우 fortify 설치시, 해당 버전 plugin을 추가 설치해 진단하기를 권장함.


2010.png

* 설치시 플러그인 선택


plugin.png

suritam9 (비회원)
  • 5
    • 글자 크기
[바코드] 모든 바코드는 패리티를 갖는다. (by 박영식) [문제] 넥슨 입사 문제 (by 박영식)

댓글 달기

이전 1 ... 4 5 6 7 8 9 10 11 12 13 14다음
첨부 (5)
2010.png
43.5KB / Download 85
plugin.png
44.8KB / Download 64
2.png
42.8KB / Download 46
1.png
19.3KB / Download 45
3.png
2.2KB / Download 45
위로