ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [버그 관리] 보안 검수 방법
    카테고리 없음 2020. 2. 14. 16:23

    정의

    • 서비스의 보안 상 문제가 없는지 확인하기 위함. 
    • 기존 코드에 이미 수행 했던 동일한 보안 평가를 서비스에 새로 추가된 코드에 반복적으로 수행해야 하는 경우
    • 개발자가 코드를 작성하는 과정에서 보안에 취약점을 자동으로 발견하게 해주는 도구

    정적분석과 동적분석

    1.정적분석

    •  프로그램을 실행하지 않은 상태에서 소스 코드나 컴파일된 코드를 이용해 코드를 분석
    •  실행할 때에만 알 수 있는 데이터가 필요한 경우엔 정확히 분석할 수 없다.

    2.동적분석

    • 실제로 실행해 보면서 분석하기에 실행 환경에서의 상태를 잘 알 수 있다. 
    • 실행할 수 동일한 보안 평가를 서비스에 새로 추가된 코드에 반복적으로 수행해야 하는 경우
    • 개발자가 코드를 작성하는 과정에서 보안에 취약점을 자동으로 발견하게 해주는 도구
    • 정적분석과 동적분석

     

    1.정적분석

     

    •   프로그램을 실행하지 않은 상태에서 소스 코드나 컴파일된 코드를 이용해 코드를 분석
    •   실행할 때에만 알 수 있는 데이터가 필요한 경우엔 정확히 분석할 수 없다.

    2.동적분석

     

    • 실제로 실행해 보면서 분석하기에 실행 환경에서의 상태를 잘 알 수 있다. 
    • 개발을 진행할 땐 코드를 실행 할 수 있는 환경을 만드는데 어려움이 있다.

    분석 대상 소스 코드 또는 컴파일된 코드 프로그램 실행 환경
    테스트 범위 소스 코드의 모든 부분 실행 가능한 경로
    활용 코드 상의 문제나 실수를 찾음 테스트, 모니터

     

    SpotBugs

    • 정적 분석을 도와주는 도구 
    • 바이트 코드로 컴파일된 자바 소스 코드를 분석하는 방식으로 되어있어 소스 파일이 없는 외부 패키지도 분석 가능
    • 코드의 정확도,스타일,성능 등 코드 품질에 관련된 패턴을 분석해서 알려준다.
    • 사용자가 원하는 패턴을 추가하여 사용할 수 있도록 프러그인 방식을 지원한다.

    장점

    • Coverity,SonarQube와 같은 다른 정적 분석 도구에 SpotBugs를 추가로 붙여 사용할 수 있다.
      -새로운 패턴을 추가하면 다른 도구에서도 쉽게 해당 패턴을 적용할 수 있다.- 
    • 웹 애플리케이션의 보안을 검수할 수 있는 FSB(Find Security Bugs)플러그인이 있다.
      -다양한 프레임워크를 사용한 자바 어플리케이션을 수월하게 분석하기 위해선 각 프레임 워크의 구조에 맞게 
      처리하는 것이 중요한데 FSB가 구조파악을 하고 SpringBugs가 그것을 바탕으로 분석한다-
    • 애플리케이션 테스트를 각종 빌드도구,개발 도구에 연동하여 쉽게 진행할 수 있다.

    SpotBugs 설치 

    1.FindBugs 설치하기

    • 버그를 발견해 정적 분석을 하는 도구
    • Help->MarketPlace에서 spotbugs 검색 후 Install

    • Preferences ->findbugs-> Reported bug categories에서 Securiy 체크 

     

     

    2.FindSecurityBugs 설치

    • 자바 웹 어플리케이션에 대한 보안감사를 지원하는 FindBugs의 플러그인
    • mvnrepository에서 findsecbugs 검색후 OWASP Find Security Bugs Plugin의 dependency 복사 후 등록

    • pom.xml에 삽입

    • Open Perspective에서 SpotBugs등록 한다.

     

    SpotBugs 사용

    • 프로젝트 우클릭 ->spotbugs ->Find Bugs 클릭 -> 오른쪽 상단 벌레 모양 클릭 ->BugExplorer 버그 확인

    클릭하면 해당 코드로 이동한다.

    • 버그가 있는 코드에 벌레모양이 생긴다.

     

    댓글

Designed by Tistory.