2021. 1. 7. 19:51ㆍ문제연습/bs_Training
본 티스토리 블로그는 PC에 최적화되어 있습니다.
모바일 유저분들은 아래 네이버 블로그를 이용해 주세요
Lab: Username enumeration via subtly different responses
이번 시간에도 문제를 이어서 풀어 보도록 하겠습니다.
이전 공격 방식과 동일하니 한번 연습 겸 풀어 보는 것도 나쁘지 않습니다.
그럼 문제를 확인해 보도록 하겠습니다.
1. 문제 내용
이번 문제도 저번 문제와 마찬가지로 브루트 포싱 문제 계열입니다.
대입 후보 데이터들도 문제에서 이미 제시해 준 상황입니다.
한번 접속해 보도록 하겠습니다.
로그인 화면을 확인하였으니 추가적으로 주어지는 데이터가 존재하는지 확인해 보도록 하겠습니다.
대표사진 삭제
사진 설명을 입력하세요.
이번 문제는 저번 문제와 다르게 어떤 정보가 틀렸는지를 알려주질 않습니다.
이렇게 될 경우 2가지 시나리오로 접근이 가능합니다.
- 모든 후보군에 대한 전수조사.
이 방법이 가장 확실하지만, 저는 burp suite 커뮤니티 버전을 가지고 있기에 굉장히 많은 시간이 소요됩니다.
username 후보군 100개, password 후보군 100개 총 대입 시도 경우 수 10000개.
1개 경우 수 대입 후 처리하는데 걸리는 시간 대략 최소 0.5초
최악의 경우 0.5 * 10000 = 5000초 = 대략 84분... 어마 무시한 시간이 걸립니다.
- 각각의 케이스를 따로 시도하고 반환되는 응답 결과를 이용해
username, password를 추측하는 방식.
일단 두 번째 방법을 이용해 뭔가 걸리는 부분이 없는지 확인해 보도록 하겠습니다.
burp suite의 intruder의 sniper 기능을 이용하여 payload를 짜보도록 하겠습니다.
이제 한번 부르트 포싱을 진행해 보도록 하겠습니다.
- username
결과를 확인해본 결과 Invaild username or password. 가 출력되지 않은 케이스가 딱 한 개 존재합니다.
추출된 username인 akamai로 로그인을 시도하게 될 경우 화면에 Invalid username or password 문자열이 출력되고 로그인이 되지 않습니다.
즉, 응답 부분이 달라진 점이 존재합니다.
이 부분을 이용해 위와 같은 부르트 포싱을 다시 진행해 보도록 하겠습니다.
- password
grep match에서도 Invalid username or password가 없고 응답 코드가 200, 400번 영역이 아닌 302 반환 코드가 돌아온 결과를 확인하였습니다.
우리가 대입한 akamai, herley로 로그인을 할 경우 아래와 같이 로그인이 됨을 알 수 있습니다.
이렇게 이번 lab 문제도 성공적으로 풀어 냈습니다.
전수조사 문제를 풀면서 생각보다 전수조사 경우의 수가 적고 사이트의 특정 조건을 만족할 경우 매우 효율적인 공격이라는 것을 느낍니다.
꼭 보안을 생활 습관화 시켜야겠군요...
'문제연습 > bs_Training' 카테고리의 다른 글
Authentication - Brute forcing3 (0) | 2021.01.13 |
---|---|
Authentication - Brute forcing1 (0) | 2021.01.07 |
SQL injection - UNION3(Examining the database3) (0) | 2020.12.27 |
SQL injection - UNION3(Examining the database1) (0) | 2020.12.26 |
SQL injection - UNION3 (0) | 2020.12.25 |