This article was written in collaboration with "Toptal".
google.com/search?&q=4060000000000000..4060999999999999
위와 같이 구글 검색에 4060000000000000..4060999999999999 형태로 검색을 하게되면..
아래와 같이 차단당한 내용이 확인됩니다. 이는 구글에서 사용자의 데이터 보호를 위해 중요한 정보가 노출될만한 검색 루틴을 차단한 것으로 보이는데요.
Gergely Kalman는 약간의 트릭을 이용해서 이 검색 차단 로직을 우회했습니다.
Bypass with hex
첫번째로 택한 방법은 hex 데이터에 대한 검색입니다.0xe6c8c69c9c000..0xe6d753e6ecfff
이런식으로 검색 쿼리를 16진수로 바꿔서 검색 시 필터링 로직에는 걸리지 않습니다. 왜냐하면... 일반적인 카드 숫자데이터는 아니니깐요. 그러나 일부 해커들이나 저장된 값들은 저런식으로 16진수 형태로 저장된 경우들이 있습니다. 인터넷에는 많은 정보가 있기 때문이죠. 그래서 검색된 결과를 다시 10진수로 바꿔서 일부 카드 정보들을 획득할 수 있습니다.
Faulty e-commerce log files.
https://www.toptal.com/web/with-a-filter-bypass-credit-card-numbers-are-still-still-google-able |
Find filter rule
두번째 방법은 규칙을 찾습니다. 음 제가 여러가지 취약점을 풀어나갈때 가장 중요시 하는 부분이기도 하죠. (규칙찾기)저 숫자 형태는 맨 앞 4060은 고정되었고, 뒤에 숫자들만 변경점이 있습니다. 고로 4060만 고정하고, 뒤에 값들을 변경하여 검색한다면..
값을 찾아낼 수 있겠죠. 단순하지만.. 저 방법으로 카드정보를 읽었다고 하네요.
Finally
물론.. 위 방법들은 지금 재현되진 않습니다. 당연히 구글에서 제어했겠죠.다만 우리는 결과에 대한 내용보단 풀어나가는 방법을 보았으니 무언가 새로운 우회 루틴이나 대응 등등 여러가지 생각을 할 수 있겠죠.
다른사람이 문제를 풀어나가는 방식을 지켜보는건 매우 흥미롭고 도움되는 일인 것 같네요.
Toptal collaboration & Reference
This post originally apperared in Toptal(https://www.toptal.com/web/with-a-filter-bypass-credit-card-numbers-are-still-still-google-able)
HAHWULSecurity engineer, Gopher and H4cker! |
440393
ReplyDelete0xe6c8c69c9c000..0xe6d753e6ecfff
ReplyDelete