리버스 프록시로 HTTP 기본 인증 우회

dev | 2024-10-09

HTTP 기본 인증(HTTP basic authentication)이 보안에 좋지 않다고 하지만 편리하기 때문에 널리 사용된다. 이름만 대면 모르는 DS가 없을 툴 중에도 인증 기능이 HTTP 기본 인증으로 되어 있는 경우가 있다.

location /auth {
	auth_basic "Authentication required";
	auth_basic_user_file /path/to/basic-auth;
}

이렇게 /auth에 기본 인증 설정이 되어 있다고 할 때,

location /freepass {
	proxy_set_header Authorization "Basic bmFtZTpwYXNzd29yZA==";
	proxy_pass http://localhost:8080/auth;
}

리버스 프록시에서 proxy_set_headerAuthorization헤더에 name:pass의 base64 인코딩 문자열을 설정해주면 기본 인증 없이 바로 접근이 가능하다. 요 부분을 잘 제어(Lua?)하면 될 것 같은데 일단 되는 것 까지만 확인했다.

Comments

Post a comment

:

: 공개 되지 않습니다. Gravatar를 표시 합니다.

:

: HTML 태그를 사용할 수 없습니다.