정보보안공부

[Root-Me] SQL injection - Error 본문

Web/RootMe

[Root-Me] SQL injection - Error

Steady_sp 2020. 2. 19. 17:26

위 문제가 에러 기반의 SQL Injection으로 알고있어서 floor와 rand를 결합한 인젝션 쿼리를 날렸는데 Hint를 보여주어 형변환과 관련된 함수를 찾아본 결과 cast 함수를 이용해 쿼리를 작성했다.

 

[floor, rand 에러구문]

에러 구문 쿼리를 입력한 결과  명시 적 유형 캐스트를 추가해야 할 수도 있습니다. 힌트 확인

 

[테이블 조회]

- cast 함수를 사용하여 쿼리 작성

- where table_type='base+table' 작성 시 쿼리가 실행되지 않아 우회하려 했으나, 실패함.. ( 방법을 찾는중 )

- 문제는 풀어야하므로 가장 수상한 첫번째 테이블 "m3mbr35t4bl3" 확인

테이블을 조회하기 위한 에러구문

 

[컬럼 조회]

- cast 함수를 사용하여 쿼리 작성

- where table_name='m3mbr35t4bl3' 작성 시 쿼리가 실행되지 않아 우회하려 했으나, 실패함.. ( 방법을 찾는중 )

- 비밀번호로 유력한 컬럼명 "p455w0rd_c0l" 확인

컬럼을 조회하기 위한 에러구문

 

[데이터 조회]

- limit 를 통해 유저명 컬럼 "us3rn4m3_c0l" 조회 시 첫번째 열이 admin 이 출력되어 관리자의 비밀번호도 첫번째 열로 유추함

- 조회한 테이블, 컬럼을 통해 관리자 계정의 비밀번호 획득

획득한 테이블, 컬럼을 이용해 관리자의 비밀번호 조회

 

 

 

'Web > RootMe' 카테고리의 다른 글

[Root-Me] SQL injection - Time based  (0) 2020.02.26
[Root-Me] SQL injection - Authentication - GBK  (0) 2020.02.24
[Root-Me] SQL injection - Filter bypass  (0) 2020.02.18
[Root-Me] SQL injection - Blind  (0) 2020.02.18
[Root-Me] SQL injection - String  (0) 2020.02.18
Comments