설명
github_organization_webhook의 configuration.insecure_ssl = true는 HTTPS 수신 서버의 인증서 검증을 끕니다. 통신이 암호화되더라도 올바른 서버인지 확인할 수 없습니다.
잠재적 영향
통신 경로의 공격자가 수신 서버를 사칭해 이벤트 데이터를 가로채거나 변조할 수 있습니다.
해결 방법
configuration.insecure_ssl = false를 설정하고 수신 서버에 유효한 인증서를 설치하세요. 수신 측에서는 웹훅 서명도 검증하세요.
예시
같은 HTTPS 수신 주소에서 인증서 검증을 활성화하는 예시입니다. 서명에 사용할 공유 비밀값은 별도로 안전하게 관리하세요.
변경 전
hcl
resource "github_organization_webhook" "webhook" {
name = "web"
configuration {
url = "https://example.com/webhook"
content_type = "form"
insecure_ssl = true
}
events = ["issues"]
}
변경 후
hcl
resource "github_organization_webhook" "webhook" {
name = "web"
configuration {
url = "https://example.com/webhook"
content_type = "form"
insecure_ssl = false
}
events = ["issues"]
}