.
.
.
시작에 앞서 따라 해 보시는 건 좋지만
지정된 페이지 이외 허가받지 않은 페이지에서 시행함으로써 일어나는 모든 일은
개인의 책임입니다.
.
.
.
위와 같은 인증 방식을 요구하는 절차를 보신 적 있으실 겁니다.
Captcha란?
대부분의 사이트에 가입, 비밀번호 변경 등 보안성을 높이기 위해 널리 사용되고 있습니다.
대표적으로 사진 속에서 특정 사물을 찾거나 유동적인 작업을 요구하기에 봇은 이를 인증할 수 없다고 알려져 있죠
또한 이러한 인증방법으로 Brute force 같은 공격에도 보안성을 높일 수 있습니다.
DVWA Captcha를 이용하여 어떤 식으로 동작되는지 알아보겠습니다.
DVWA페이지에서는 크게 4단계로 보안등급을 설정할 수 있습니다.
먼저 Low 단계에서 알아보겠습니다.
Low 단계에서는 step 1와 step 2로 두 번에 걸쳐 요청을 보냅니다.
step 1에서는 captcha를 확인하고 step 2에서 비밀번호를 전달하게 됩니다.
Captcha와 비밀번호를 따로 전송하기 때문에
Step 2 단계에서 전송하는 패스워드를 다른 값으로 변경하면 해당 값으로 쉽게 변경되는 모습을 보여줍니다.
그럼 Medium 단계는 어떨까요??
Medium 단계 역시 step 1 , step 2로 각각 보내지만 low 단계와는 다르게 captcha = true or false로 확인하는 부분이 생겼습니다.
한 번 더 확인하는 것은 좋지만 low단계와 크게 달라진 부분이 없음으로 같은 방식으로 변경이 가능합니다.
하지만 hight 단계에서부터 조금씩 달라집니다.
hight 단계에서는 step 1, stpe 2 단계를 한 단계로 보냅니다.
또한 소스를 보게 되면 유저를 확인하는 구문도 보입니다.
하지만
if 구문에서 문제점이 보입니다. captcha와 user_agent를 확인 하지만
이를 대체하는 항목을 넣어둠으로써 해당 부분을 수정하여 우회할 수 있을 것으로 보입니다.
Request 값에서
user-agent와 captcha 항목을 변경해주니 패스워드가 정상적으로 변경된 것을 볼 수 있습니다.
이처럼
Captcha 값과 비밀번호를 예로 들었지만 해당 정보를 함께 전달해 주는 것이 중요합니다.
보안의 시작은 Double Check에서 시작됩니다.
개발자는 완성된 코드를 배포 이전 한 번 더 확인해보는 것이 중요하며, 사용자는 사소한 것 하나하나 확인하는 것이 중요합니다.
'Security' 카테고리의 다른 글
[Kali Linux] 설치 파일을 위변조 후 백신을 우회하여 권한 탈취 (0) | 2021.05.30 |
---|---|
[Kali Linux] 설치 파일을 위변조하여 사용자 권한 탈취 (Reverse Shell) (0) | 2021.05.21 |
[Kail Linux] 파일 인클루젼 공격 알아보기 (file inclusion) (0) | 2020.02.05 |
[Kail Linux] Command Injection 알아보기 (커맨드인젝션) (0) | 2020.02.03 |
[Kail Linux] Brute force 알아보기 (0) | 2020.02.03 |
댓글