Program/Java

무료 소스 취약점 방법 (Yasca , PMD, SpotBugs)

soccerda 2023. 11. 8. 15:19
반응형

소스 레벨  취약점 점검을 진행할 일이 있어 찾아보니

 

대표적으로 Yasca, PMD, SpotBugs 등이 무료로 사용할 수 있다는 것을 알았다.

 

SpotBugs와 PMD는 이클립스 플러그인 추가로 

 

Yasca는 별도 다운로드 후 CMD(윈도)로 명령어를 실행하면 되었다.

 

Yasca가 리보트까지 html로 출력 가능하여 최종적으로 사용하게 되었고 SpotBugs는 사용하기 편리하였고

 

PMD는 공부를 해야 잘 이용 할 수 있을 정도로 옵션이 다양했다.

 

 

Yasca

아쉽게도 2011년 이후 업데이트가 되지 않고 있다.

사용할 수 잇는 언어는. NET (VB.NET, C#, ASP. NET) , ASP, C/C++, COBL, ColdFusion, CSS, HTML, JAVA, JavaScript, Perl, PHP, Python, Visual Basci

 

다운로드

https://sourceforge.net/projects/yasca/files/Yasca%202.x/Yasca%202.2/

 

Yasca - Browse /Yasca 2.x/Yasca 2.2 at SourceForge.net

A platform built for a new way of working The Work OS that lets you shape workflows, your way

sourceforge.net

기본 Yasca-core-2.1.zip을 받고 압축을 푼다. 원하는 플러그인을 받아서 core 폴더 안에 그대로 압축을 풀면 된다.

 

플러그인 종류

findbugs : class, jar 소스코드 검사

PMD : JSP 소스코드 검사

JLint : JAVA 소스코드 검사

Javascript Lint : Javascript 소스코드 검사

PHPLint : PHP4, PHP5 소스코드 검사

Cppcheck : C, C++ 소스코드 검사

Lint4j : JAVAS, CLASS 소스코드 검사

Grep : 소스코드의 간단한 패턴 검사

 

실행하기 

cmd 에서 우선 yasca-core-2.21 위치로 가서 yasca -px [플러그인]  점검소스경로 를 입력해준다

Jlint 플러그인을 쓰고 C:\api 하부 소스를 검사하고 싶다면 아래와 같이 입력

C:\yasca-core-2.21>yasca -px Jlint C:\api

하면 쭉쭉 실행되고 윈도우바탕화면에 리포트 파일 (html) 을 생성해준다.

 

 

회색 : 취약점 예외처리(검토용), 붉은색 : 취약점에 대한 간략한 설명, 파란색 : 취약점이 발생한 코드 확인 가능

PMD

이클립스 설치 ( Help -> eclipse marketplace) PMD 검색 > install

 

 

실행

SpotBugs

 

이클립스 설치 ( Help -> eclipse marketplace) SpotBugs 검색 > install

 

실행

 

결과

Window -> Show View -> Other > SpotBugs - Bug Explorer

Show Bug Info

반응형