markdown # 사용 가능한 CI/CD 변수
이들 CI/CD 변수는 브라우저 기반 DAST 분석기에 특화되어 있습니다. 이들은 DAST를 요구에 맞게 사용자 정의하는 데에 활용될 수 있습니다. 인증 CI/CD 변수는 인증(Authentication)을 참조하세요.
CI/CD 변수 명 | 유형 | 예시 | 설명 |
---|---|---|---|
DAST_ACTIVE_SCAN_TIMEOUT
| 지속 시간 문자열 | 3h
| 스캔의 활성 스캔 단계가 완료되기까지 대기할 최대 시간. 기본값은 3h 입니다.
|
DAST_ACTIVE_SCAN_WORKER_COUNT
| 숫자 | 3
| 병렬로 실행될 활성 확인 횟수. 기본값은 3 입니다.
|
DAST_AUTH_AFTER_LOGIN_ACTIONS
| 문자열 | click(on=id:remember-me),click(on=css:.continue)
| 로그인 이후 로그인 확인 전에 실행될 작업의 쉼표로 구분된 목록. 현재 “click” 작업만 지원합니다. |
DAST_AUTH_BEFORE_LOGIN_ACTIONS
| 선택기 | css:.user,id:show-login-form
|
DAST_AUTH_USERNAME 및 DAST_AUTH_PASSWORD 를 로그인 양식에 입력하기 전에 클릭할 요소를 나타내는 선택기의 쉼표로 구분된 목록.
|
DAST_AUTH_CLEAR_INPUT_FIELDS
| 부울 | true
| 수동으로 로그인을 시도하기 전에 사용자 이름 및 비밀번호 필드를 삭제하는 것을 비활성화합니다. 기본값은 false 입니다.
|
DAST_AUTH_COOKIE_NAMES
| 문자열 | sessionID,groupName
| 인증에 사용되는 쿠키 이름의 쉼표로 구분된 목록. |
DAST_AUTH_FIRST_SUBMIT_FIELD
| 선택기 | css:input[type=submit]
| 다단계 로그인 프로세스에서 사용자 이름 양식을 제출하기 위해 클릭되는 요소를 나타내는 선택기. |
DAST_AUTH_PASSWORD_FIELD
| 선택기 | name:password
| 로그인 양식에서 비밀번호를 입력하는 데 사용되는 요소를 나타내는 선택기. |
DAST_AUTH_PASSWORD
| 문자열 | P@55w0rd!
| 웹 사이트에 인증하기 위한 비밀번호. |
DAST_AUTH_REPORT
| 부울 | true
| 인증 프로세스 중에 수행된 단계의 세부 정보를 생성하기 위해 gl-dast-debug-auth-report.html 을 CI 작업 artifact로 정의해야 합니다. 이러한 보고서의 콘텐츠는 디버깅 인증 실패 시 도움이 됩니다. 기본값은 false 입니다.
|
DAST_AUTH_SUBMIT_FIELD
| 선택기 | css:input[type=submit]
| 단일 페이지 로그인 양식 또는 다단계 로그인 양식에서 비밀번호 양식을 제출하기 위해 클릭되는 요소를 나타내는 선택기. |
DAST_AUTH_SUCCESS_IF_AT_URL
| URL | https://www.site.com/welcome
| 로그인 양식이 제출된 후 인증이 성공했는지 여부를 결정하기 위해 브라우저의 URL과 비교되는 URL. |
DAST_AUTH_SUCCESS_IF_ELEMENT_FOUND
| 선택기 | css:.user-avatar
| 로그인 양식이 제출된 후 인증이 성공했는지 여부를 결정하기 위해 사용된 존재하는 요소를 나타내는 선택기. |
DAST_AUTH_SUCCESS_IF_NO_LOGIN_FORM
| 부울 | true
| 로그인 양식이 제출된 후 로그인 양식이 없음을 확인하여 성공적인 인증을 검증합니다. 이 성공 검사는 기본적으로 활성화됩니다. |
DAST_AUTH_TYPE
| 문자열 | basic-digest
| 사용할 인증 유형. |
DAST_AUTH_URL
| URL | https://site.com/login
| 대상 웹 사이트의 로그인 양식이 포함된 페이지의 URL. DAST_AUTH_USERNAME 및 DAST_AUTH_PASSWORD 은 인증된 스캔을 생성하기 위해 로그인 양식으로 제출됩니다.
|
DAST_AUTH_USERNAME_FIELD
| 선택기 | name:username
| 로그인 양식에서 사용자 이름을 입력하는 데 사용되는 요소를 나타내는 선택기. |
DAST_AUTH_USERNAME
| 문자열 | user@email.com
| 웹 사이트에 인증하기 위한 사용자 이름. |
DAST_BROWSER_SCAN
| 부울 | true
| 브라우저 기반 스캔을 실행하려면 true 로 설정해야 합니다.
|
DAST_CHECKS_TO_EXCLUDE
| 문자열 | 552.2,78.1
| 스캔에서 제외할 확인자 식별자의 쉼표로 구분된 목록. 식별자에 대해서는 취약점 확인을 참조하세요. |
DAST_CHECKS_TO_RUN
| 문자열 목록 | 16.1,16.2,16.3
| 스캔에 사용될 확인자 식별자의 쉼표로 구분된 목록. 식별자에 대해서는 취약점 확인을 참조하세요. |
DAST_CRAWL_EXTRACT_ELEMENT_TIMEOUT
| 지속 시간 문자열 | 5s
| 브라우저가 새로 발견된 요소 또는 탐색을 추출하는 데 허용된 최대 시간. 기본값은 5s 입니다.
|
DAST_CRAWL_GRAPH
| 부울 | true
| 스캔의 탐색 단계에서 방문한 탐색 경로의 SVG 그래프를 생성하기 위해 gl-dast-crawl-graph.svg 을 CI 작업으로 정의해야 합니다. 기본값은 false 입니다.
|
DAST_CRAWL_MAX_ACTIONS
| 숫자 | 10000
| 크롤러가 수행하는 최대 작업 수. 예시 작업으로는 링크 선택 또는 양식 작성이 포함됩니다. 기본값은 10000 입니다.
|
DAST_CRAWL_MAX_DEPTH
| 숫자 | 10
| 크롤러가 수행하는 최대 연결 작업 수. 예시로는 클릭 -> 양식 입력 -> 클릭 이 3입니다. 기본값은 10 입니다.
|
DAST_CRAWL_SEARCH_ELEMENT_TIMEOUT
| 지속 시간 문자열 | 3s
| 브라우저가 새로운 요소나 사용자 작업을 찾는 데 허용된 최대 시간. 기본값은 3s 입니다.
|
DAST_CRAWL_TIMEOUT
| 지속 시간 문자열 | 5m
| 스캔의 크롤링 단계가 완료되기까지 대기할 최대 시간. 기본값은 24h 입니다.
|
DAST_CRAWL_WORKER_COUNT
| 숫자 | 3
| 사용할 최대 브라우저 인스턴스 수. 예시로 GitLab.com의 인스턴스 러너의 경우 최대 3개를 권장합니다. 리소스가 더 많은 사설 러너에서는 더 높은 수의 인스턴스를 추천하지만, 5~7개 이후의 이점은 미미할 것으로 보입니다. 기본값은 동적이며, 사용 가능한 논리 CPU 수와 동일합니다. |
DAST_FULL_SCAN
| 부울 | true
| 패시브 및 활성 확인 모두를 실행하려면 true 로 설정해야 합니다. 기본값: false
|
DAST_LOG_BROWSER_OUTPUT
| 부울 | true
| Chromium의 STDOUT 및 STDERR 을 기록하기 위해 true 로 설정해야 합니다.
|
DAST_LOG_CONFIG
| 문자열 목록 | brows:debug,auth:debug
| 콘솔 로그에서 사용되는 모듈과 해당 의도된 로깅 수준의 목록. |
DAST_LOG_DEVTOOLS_CONFIG
| 문자열 | Default:messageAndBody,truncate:2000
| DAST와 Chromium 브라우저 간의 프로토콜 메시지를 기록하기 위해 설정합니다. |
DAST_LOG_FILE_CONFIG
| 문자열 목록 | brows:debug,auth:debug
| 파일 로그에서 사용되는 모듈과 해당 의도된 로깅 수준의 목록. |
DAST_LOG_FILE_PATH
| 문자열 | /output/browserker.log
| 파일 로그의 경로를 설정합니다. 기본값은 gl-dast-scan.log
|
DAST_PAGE_DOM_READY_TIMEOUT
| 지속 시간 문자열 | 7s
| 탐색이 완료되고 분석을 시작하기 전에 브라우저가 페이지를로드하고 준비하기를 기다리기 위한 최대 시간. 기본값은 6s 입니다.
|
DAST_PAGE_DOM_STABLE_WAIT
| 지속 시간 문자열 | 200ms
| 페이지가 안정화되기 전에 DOM 업데이트를 대기할 시간을 정의합니다. 기본값은 500ms 입니다.
|
DAST_PAGE_ELEMENT_READY_TIMEOUT
| 지속 시간 문자열 | 600ms
| 분석 준비가 된 요소를 확인하기 전에 대기할 최대 시간을 정의합니다. 기본값은 300ms 입니다.
|
DAST_PAGE_IS_LOADING_ELEMENT
| 선택기 | css:#page-is-loading
| 페이지에서 더 이상 표시되지 않을 때 분석기에 페이지가 로드되었으며 스캔을 계속할 수 있다고 알리는 선택자. DAST_PAGE_IS_READY_ELEMENT 과 함께 사용할 수 없습니다.
|
DAST_PAGE_IS_READY_ELEMENT
| 선택기 | css:#page-is-ready
| 페이지에서 확인되었을 때 페이지가 로드되었으며 스캔을 계속할 수 있다고 알리는 선택자. DAST_PAGE_IS_LOADING_ELEMENT 과 함께 사용할 수 없습니다.
|
DAST_PAGE_MAX_RESPONSE_SIZE_MB
| 숫자 | 15
| HTTP 응답 본문의 최대 크기. 이보다 큰 본문을 갖는 응답은 브라우저에서 차단됩니다. 기본값은 10 MB입니다.
|
DAST_PAGE_READY_AFTER_ACTION_TIMEOUT
| 지속 시간 문자열 | 7s
| 페이지가로드되어 분석 준비가 되기까지 브라우저가 기다리는 최대 시간. 기본값은 7s 입니다.
|
DAST_PAGE_READY_AFTER_NAVIGATION_TIMEOUT
| 지속 시간 문자열 | 15s
| 브라우저가 한 페이지에서 다른 페이지로 이동하기까지의 최대 시간. 기본값은 15s 입니다.
|
DAST_PASSIVE_SCAN_WORKER_COUNT
| 정수 | 5
| 병렬로 수행하는 패시브 스캔의 작업자 수. 기본값은 사용 가능한 CPU 수와 동일합니다. |
DAST_PKCS12_CERTIFICATE_BASE64
| 문자열 | ZGZkZ2p5NGd...
| 상호 TLS가 필요한 사이트에 사용되는 PKCS12 인증서. Base64 텍스트로 인코딩해야 합니다. |
DAST_PKCS12_PASSWORD
| 문자열 | password
|
DAST_PKCS12_CERTIFICATE_BASE64 에서 사용되는 인증서의 비밀번호. GitLab UI를 사용하여 민감한 사용자 정의 CI/CD 변수를 생성하세요.
|
DAST_REQUEST_ADVERTISE_SCAN
| 부울 | true
| GitLab DAST 스캔의 일부로 전송된 모든 요청에 Via 헤더를 추가하려면 true 로 설정하세요. 기본값: false
|
DAST_REQUEST_COOKIES
| 사전 | abtesting_group:3,region:locked
| 모든 요청에 추가할 쿠키 이름과 값입니다. |
DAST_REQUEST_HEADERS
| 문자열 | Cache-control:no-cache
| 요청 헤더 이름과 값의 쉼표로 구분된 목록을 설정하세요. |
DAST_SCOPE_ALLOW_HOSTS
| 문자열 목록 | site.com,another.com
| 크롤링 대상으로 고려되는 호스트명입니다. 기본적으로 DAST_TARGET_URL 호스트명이 허용된 호스트 목록에 포함됩니다. DAST_REQUEST_HEADERS 를 사용하여 이러한 호스트명으로의 각 요청에 헤더를 추가합니다.
|
DAST_SCOPE_EXCLUDE_ELEMENTS
| 선택기 | a[href='2.html'],css:.no-follow
| 스캔 시 무시되는 선택자를 쉼표로 구분된 목록. |
DAST_SCOPE_EXCLUDE_HOSTS
| 문자열 목록 | site.com,another.com
| 배제되고 강제로 연결이 종료되는 호스트명을 설정하세요. |
DAST_SCOPE_EXCLUDE_URLS
| URL | https://site.com/.*/sign-out
| 인증된 스캔 동안 건너뛸 URL 목록입니다. 쉼표로 구분됩니다. 정규 표현식 구문을 사용하여 여러 URL을 |