-
Blind SQL Injection 자동화 스크립트 Code RefactoringWeb/Lord of SQLInjection 2022. 3. 15. 22:02
Blind SQL Injection 문제 수가 많아지면서 스크립트 실행의 빈도 수도 점점 늘어나 코드 유지보수를 한 번 하고 넘어가기로 했다. 대상으로 Lord of SQLInjection-12(darkknight)번 풀이의 자동화 스크립트를 선정했다.

초본 기존의 코드를 살펴보니 조건문에 break가 빠져 있어 문자를 추출한 이후에도 나머지 문자를 찾기위한 패킷을 전송하고 있었다.

코드 수정 후 - 1 (break) break를 추가해 원하는 문자를 추출한 이후 곧바로 다음 글자로 넘어갈 수 있도록 코드를 수정했다.
약간의 코드 변경으로 시간이 90% 가까이 단축된 것을 볼 수 있다.

코드 수정 후 - 2 (스레드 적용) 여기서 그치지 않고 좀 더 빠르게 값을 추출하기 위해 멀티 스레드를 적용했다. 원하는 문자를 추출했을 때 스레드의 실행을 중단하고 다음 글자로 넘어가기 위해 is_found 변수를 추가했다.
728x90'Web > Lord of SQLInjection' 카테고리의 다른 글
Lord of SQLInjection-14 (giant) (0) 2022.03.21 Lord of SQLInjection-13 (bugbear) (0) 2022.03.20 Lord of SQLInjection-12 (darkknight) (0) 2022.03.14 Lord of SQLInjection-11 (golem) (0) 2022.03.13 Lord of SQLInjection-10 (skeleton) (0) 2022.03.13