Skip to main content
Version: 2512.1

issue 폴더


설명

분석에서 검출된 이슈에 대한 정보를 모아둔 폴더입니다. 폴더 안에 이슈 정보를 모아둔 다수의 json 파일이 포함되어 있습니다. 분석에 따라 제공하는 이슈 정보에 차이가 있다는 점에 유의하세요.

  • 소스코드 분석: 이슈 검출 규칙의 이름, 파일, 라인 등

  • 오픈소스 분석: 이슈 검출 규칙의 이름, 오픈소스의 이름, 라이선스 정보 등

  • 웹취약점 분석: 이슈 검출 규칙의 이름, 분석 대상 URL, 파라미터를 비롯한 요청 정보 등

파일

소스코드 분석 이슈

{
"issueId" : null,
"toolType" : "SAST",
"checkerKey" : "SAST.SW.CCPP.33",
"determinant" : "75c41dfe0f3d05ef10e835e37427d51e39aa4eb6",
"risk" : 4,
"method" : "bug",
"lineNumber" : 19,
"filePaths" : [ "FILE_PATH" ],
"startContextIdx" : 0,
"fileIdx" : 0,
"contexts" : [ {
"eventMsgs" : [ {
"type" : "source",
"fileIdx" : 0,
"line" : 18,
"messages" : [ {
"message" : "horus.COMMON.var_0_decl",
"args" : [ "'a'" ]
} ],
"prevLink" : null,
"link" : null
}, {
"type" : "sink",
"fileIdx" : 0,
"line" : 19,
"messages" : [ {
"message" : "horus.OVERRUN.STATIC.default_desc_0",
"args" : [ "'a'" ]
}, {
"message" : "horus.COMMON.size_0_index_1",
"args" : [ "10", "10" ]
} ],
"prevLink" : null,
"link" : null
} ]
} ],
"extra" : null,
"issueSimilarityGroupId" : null,
"tags" : null,
"hashes" : [ "35947faea8a2b85e3e8cde7139b8d47a05919e88" ],
"zipFileObjectPaths" : [ "/null" ]
}
  • issueId 이슈 ID

  • toolType 분석 유형 요청한 분석의 종류(TYPE)를 다음 중 하나의 값을 가집니다.

    • SAST: 소스코드 분석
    • SCA: 오픈소스 분석
    • DAST: 웹취약점 분석
  • checkerKey 이슈 검출 규칙 키 이슈를 검출한 규칙의 키입니다.

  • risk 위험도 검출된 이슈의 위험도이며 매우 높음, 높음, 보통, 낮음, 매우 낮음이라는 5단계로 구분하고 각 단계를 숫자로 표시합니다.

    • 5: 위험도가 매우 높음인 이슈
    • 4: 위험도가 높음인 이슈
    • 3: 위험도가 보통인 이슈
    • 2: 위험도가 낮음인 이슈
    • 1: 위험도가 매우 낮음인 이슈
  • lineNumber 이슈 검출 지점 이슈가 검출된 파일에서 이슈가 발생한 지점을 소스코드 라인의 숫자로 표시합니다.

  • filePaths 파일 경로 이슈가 검출된 파일의 경로입니다.

  • fileIdx 파일 인덱스 이슈가 검출된 파일의 순번입니다. 이슈가 다수의 파일에 걸쳐서 발생한 경우 파일의 순번을 확인할 수 있습니다.

  • eventMsgs 이슈 검출 정보

    • type 이슈 검출 정보의 종류

      • 싱크: 소스코드에서 이슈가 발생하는 결정적인 지점입니다.
      • 소스: 이슈가 발생하는 유입 지점, 원인입니다.
      • 분기: 이슈가 발생하는데 기여하는 실행 코드입니다.
      • 프레임워크: 이슈의 원인에서 발생 지점으로 전개되는 구조입니다.
    • fileIdx

    • line 소스코드 라인

  • issueSimilarityGroupId 유사 이슈 그룹 ID

  • tags 태그

  • hashes 해시

오픈소스 분석 이슈

{
"versionId" : "__virt_50cabe6ff1c600835ca832884c723b5c1481070318a64b1cf8adf1804796a5c8",
"matchType" : "DEPENDENCY",
"originalVersion" : null,
"targets" : [ {
"targetType" : "FILE",
"name" : "pom.xml",
"relativePath" : "spdxFullLicense.zip/pom.xml",
"hashes" : [ {
"algorithm" : "sha1",
"value" : "4a62e0f669425ffb8afdae1ec82fc01ed2da6f31"
} ],
"type" : null,
"extra" : [ "zip/etc" ]
} ],
"name" : "com.sparrow.sca:application_OpenSSL-standalone",
"version" : "1.0",
"purl" : "pkg:maven/com.sparrow.sca/application_OpenSSL-standalone@1.0",
"repository" : "Maven",
"repositoryUri" : "https://central.sonatype.com/artifact/com.sparrow.sca/application_OpenSSL-standalone/1.0",
"binaryHashes" : [ ],
"sourceTotalHashes" : [ ],
"confidenceScore" : 7.857142857142857,
"publishedDate" : null,
"licenses" : [ ],
"issues" : [ ],
"copyrights" : [ ],
"ecosystem" : {
"osInfo" : null,
"packageManager" : null,
"repository" : "Maven"
},
"supplier" : {
"name" : null,
"email" : null
}
}
  • versionId 버전 ID

  • matchType 식별 유형 컴포넌트를 식별하기 위해 사용한 대상의 유형으로 다음 중 하나의 값을 가집니다.

    • 바이너리: 분석한 대상이 바이너리 파일인 경우
    • 의존성: 분석한 대상이 의존성 파일인 경우
    • 소스코드: 소스코드를 분석 대상으로 소스코드의 해시값을 생성하고 비교한 경우
    • 스니펫: C/C++ 언어 파일 중에서 헤더 파일(.h 또는 .hpp)에서 검출한 경우
    • SBOM: 소프트웨어를 구성하는 컴포넌트를 정리한 SBOM 파일을 분석한 경우
  • targets 분석 대상

    • targetType 분석 대상 유형
    • name 분석 대상 이름
    • relativePath 분석 대상의 상대 경로
    • hashes 분석 대상의 해시
      • algorithm 해시 알고리즘
      • value 해시값
    • name 컴포넌트 이름
    • version 컴포넌트 버전
    • purl 컴포넌트의 PRUL
    • repository 컴포넌트 리포지토리
    • repositoryUri 컴포넌트 리포지토리의 URI
    • binaryHashes 식별 유형이 바이너리인 경우 해시
    • sourceTotalHashes 식별 유형이 소스코드인 경우 해시
    • confidenceScore 컨피던스 스코어
    • publishedDate 컴포넌트 출시일
    • licenses 오픈소스 라이선스
    • issues 알려진 취약점
    • copyrights 저작권 정보
    • ecosystem 에코시스템
      -osInfo OS 정보
      -packageManager 패키지 매니저
      -repository 리포지토리
    • supplier 공급자
      • name 공급자 이름
      • email 공급자 이메일

웹취약점 분석 이슈

 {
"toolType" : "DAST",
"checkerKey" : "RULE_KEY",
"determinant" : "5157498448cb712a1a8cc39691d204301cc9e59e8824b1fdb558eec5020110bd",
"risk" : 3,
"url" : "http://u306.dev.iplanbiz.co.kr:8401/home/layout/list",
"method" : "GET",
"parameter" : null,
"engineId" : "DAST_EV1_ANALYZER",
"attack" : [ {
"step" : 0,
"fragment" : [ {
"order" : 0,
"type" : "msg",
"value" : "2.http.cookie_attribute_test_same_site.not_exist.attack.s0.o0",
"args" : [ ]
}, {
"order" : 1,
"type" : "msg",
"value" : "2.http.cookie_attribute_test_same_site.not_exist.attack.s0.o1",
"args" : [ ]
} ]
}, {
"step" : 1,
"fragment" : [ {
"order" : 0,
"type" : "msg",
"value" : "2.http.cookie_attribute_test_same_site.not_exist.attack.s1.o0",
"args" : [ {
"order" : 0,
"type" : "code",
"value" : "GET http://u306.dev.iplanbiz.co.kr:8401/home/layout/list HTTP/1.1\r\nAccept-Language: en-US\r\nCookie: toolType=PC;iportal_JSESSIONID_306=F642219118936C1A91057AD26DA5467D\r\n"
} ]
}, {
"order" : 1,
"type" : "msg",
"value" : "2.http.cookie_attribute_test_same_site.not_exist.attack.s1.o1",
"args" : [ {
"order" : 0,
"type" : "code",
"value" : "Empty String"
} ]
} ]
} ],
"result" : [ {
"step" : 0,
"fragment" : [ {
"order" : 0,
"type" : "msg",
"value" : "2.http.cookie_attribute_test_same_site.not_exist.result.s0.o0",
"args" : [ ]
} ]
} ],
"solution" : [ {
"step" : 0,
"fragment" : [ {
"order" : 0,
"type" : "msg",
"value" : "2.http.cookie_attribute_test_same_site.not_exist.solution.s0.o0",
"args" : [ ]
}, {
"order" : 1,
"type" : "msg",
"value" : "2.http.cookie_attribute_test_same_site.not_exist.solution.s0.o1",
"args" : [ ]
}, {
"order" : 2,
"type" : "msg",
"value" : "2.http.cookie_attribute_test_same_site.not_exist.solution.s0.o2",
"args" : [ ]
} ]
} ],
"events" : "{\"version\":\"1.1\",\"seedUrl\":\"http://u306.dev.iplanbiz.co.kr:8401/home/layout/list\",\"dastEventList\":[{\"type\":\"http\",\"data\":{\"method\":\"GET\",\"url\":\"http://u306.dev.iplanbiz.co.kr:8401/home/layout/list\",\"headers\":[{\"name\":\"Accept-Language\",\"value\":\"en-US\"},{\"name\":\"Cookie\",\"value\":\"toolType=PC;iportal_JSESSIONID_306=F642219118936C1A91057AD26DA5467D\"}],\"body\":\"\"}}]}",
"records" : null,
"recheck" : "{\"@class\":\"com.sparrow.dast.engine.ev1.analysis.recheck.HbRecheck\",\"type\":{\"@type\":\"string\",\"@value\":\"http\"},\"checkerId\":{\"@type\":\"string\",\"@value\":\"DAST.SW.COMMON.5837\"},\"target\":{\"@type\":\"jsonType\",\"@jsonType\":\"com.sparrow.dast.engine.ev1.analysis.targets.HbTarget\",\"@value\":{\"@class\":\"com.sparrow.dast.engine.ev1.analysis.targets.HbTarget\",\"request\":{\"reqHeader\":\"GET http://u306.dev.iplanbiz.co.kr:8401/home/layout/list HTTP/1.1\\r\\nAccept-Language: en-US\\r\\nCookie: toolType=PC;iportal_JSESSIONID_306=F642219118936C1A91057AD26DA5467D\\r\\n\",\"reqBody\":\"\"}}}}",
"doms" : [ ]
}
  • toolType 분석 유형 요청한 분석의 종류(TYPE)를 다음 중 하나의 값을 가집니다.

    • SAST: 소스코드 분석
    • SCA: 오픈소스 분석
    • DAST: 웹취약점 분석
  • checkerKey 이슈 검출 규칙 키 이슈를 검출한 규칙의 키입니다.

  • risk 위험도 검출된 이슈의 위험도이며 매우 높음, 높음, 보통, 낮음, 매우 낮음이라는 5단계로 구분하고 각 단계를 숫자로 표시합니다.

    • 5: 위험도가 매우 높음인 이슈
    • 4: 위험도가 높음인 이슈
    • 3: 위험도가 보통인 이슈
    • 2: 위험도가 낮음인 이슈
    • 1: 위험도가 매우 낮음인 이슈
  • url 이슈 검출 URL

  • method 요청 메소드

  • parameter 요청 파라미터

  • attack 공격 방법

  • result 분석 결과