| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- sql injection
- pentest
- bandit #밴딧 #웹해킹 #해킹 #화이트해커 #공부 #스터디 #IT #hacking #linux #openssl #nmap
- 리눅스
- Bandit
- 모의해킹
- 밴딧
- Linux
- error-based
- msfconsole #heartbleed #247ctf #misc #webhacking
- 안드로이드 모의해킹
- 쿠키변조
- androidhacking
- androGoat
- 취약점 진단
- time-based
- Today
- Total
d0r1
[webhacking] old-02 본문

들어가면 다음과 같은 페이지가 뜨낟.
IP가 로깅되고 있다고 알려준다

소스를 확인해보면, admin.php에 접속하면 엉덩이를 걷어찬다고 알려준다
admin.php에 접속해보자

접속하였더니, 비밀번호를 입력하라고 한다.
sql injection을 통해 풀어보려 하였으나, 공격이 불가능하였다
그럼 다른 단서를 찾아야한다

해당 주석부분이 조금 이상했다.
시간이 지금과 맞지 않다는 점이 이상해서
해당 페이지를 살펴보는 과정에서

cookie에 time이라는 값이 존재하고 있음을 확인할 수 있었고
해당 값을 바꿔보았더니
0 -> 1699..로 회귀
1 -> 1 유지
2 -> 2 유지
또한

입력한 값에 맞게 시간이 변했음을 확인할 수 있었다
time은 초를 의미하고 있는 듯 하다
그럼 여기서 sql injection이 일어나고 있지 않을까해서
0 and 1=2 을 넣어보았다 (거짓)

그랬더니 초가 0으로 나옴을 확인할 수 있었다.
0 or 1=1 은?

그랬더니 1이 나왔다.
즉, time을 통해 sql injection이 가능하다는 것을 알아냈다.
| (select count(table_name) from information_schema.tables where table_schema=database()) |
해당 구문을 통해, 몇개의 테이블이 존재하는지 알아보자

2초로 바뀌었으므로, 해당 DB에는 2개의 테이블이 존재하고 있음을 확인할 수 있다
그럼 각각의 테이블 정보를 획득해야한다

첫번째 테이블은 13자리임을 확인할 수 있었고

2번째 테이블은 3자리 임을 확인할 수 있었다.
이제 한개씩 알아봐야한다
코드를 짜서 돌리고 싶었지만, request의 cookie 수정방법을 잘 모르기에
우선 노가다를 통해 문제를 풀었다


~

시간이 01:40 이면 100 이므로 아무래도 ascii인 거 같아서
모인 정보들을 ascii 코드표를 참조하였더니
"admin_area_pw"
라는 테이블이 나왔다.
즉 첫번째 테이블에 값이 존재할 것이라는 것을 알 수 있었다
이제 테이블 안의 컬럼 갯수를 확인하여야 한다

다행이다,, 1개만 존재한다
해당 컬럼의 길이와 이름을 확인해보자

다행이도,, 컬럼 길이도 2글자이다


112, 119

pw 라는 컬럼이 존재하고 있음을 확인할 수 있었다
이제는 해당 컬럼의 값을 알아보자

컬럼의 갯수는 1개이며

길이는 17자임을 확인할 수 있다
이제 blind sqli 을 통해 값을 알아보자


~

변환을 수행하면
kudos_to_beistlab
임을 확인할 수 있다
해당 패스워드를 입력하면

풀리는 모습을 확인할 수 있다
'webhacking' 카테고리의 다른 글
| [webhacking] old-56 (0) | 2023.11.07 |
|---|---|
| [webhacking] old-49 (0) | 2023.11.07 |
| [webhacking.kr] old-23 (0) | 2023.08.29 |
| [webhacking.kr] old-42 (0) | 2023.08.29 |
| [webhacking.kr] old-36 (0) | 2023.08.29 |