이번 포스팅은 7단계, orge 풀이 포스팅이다.
사실 이것도 블라인드 인젝션인데, 4단계와 핵심 함수와 과정이 같으니 4단계가 아직 이해가 되지 않은 사람들은
4단계로 다시 돌아가길 바란다.
그럼 코드부터 확인하자.
6단계와 마찬가지로 preg_match문을 통해 or와 and가 막혀있다. 이것이 4단계와의 차이점이고,
나머지 과정은 전부 같다.
잘 알고 있지만 아주 잠깐 헷갈리는 사람들을 위해 덧붙이자면,
<이용되는 함수>
1. ascii() : 입력받은 인자를 아스키 코드 10진수로 변환하는 함수
2. length() : 문자열의 길이를 반환한다.
3. substring(문자열, 시작위치, 길이) : 문자열의 시작위치에서 잘라낼 문자 개수를 지정하여 반환하는 함수
ex) substr('1234',2,2)= 23
<비밀번호 유추과정>
1. 패스워드 길이 확인 (length 활용)
2. 패스워드의 첫 번째 글자부터 유추
웬만한 것은 이제 다 기억이 났으리라 생각한다.
자세한 풀이과정은 클릭클릭!
?pw=' || id='admin' %26%26 length(pw)=8%23
여기서 &&를 쓰지 않는 이유는, url창에서 먹히지 않아서다.
시도해봤더니 안돼서 url 인코딩 된 값을 집어넣었더니 실행되었다.
길이는 8이라는 것을 알 수 있다.
이후 ?pw=' || id='admin' %26%26 ascii(substr(pw,1,1))=54%23
과 같은 구문으로 한 자리씩 알아가면 된다.
다 알아보면 결국 pw 값은 6c864dec 라는 것을 알 수 있다.
'Archive > Hacking' 카테고리의 다른 글
Lord of SQL Injection 9단계, vampire풀이 (2) | 2019.10.31 |
---|---|
Lord of SQL Injection 8단계, troll풀이 (0) | 2019.10.30 |
Lord of SQL Injection 6단계, darkelf 풀이 (0) | 2019.10.29 |
Lord of SQL Injection 5단계, wolfman 풀이 (0) | 2019.10.29 |
Lord of SQL Injection 4단계, orc 풀이 (0) | 2019.10.29 |