모의해킹 스터디 8주차 정리

2024. 12. 10. 16:17·모의해킹/모의해킹 스터디

SQLInjection: 우리가 원하는 질의문을 실행하는 것

  • Union SQLi: SQL 질의 결과가 화면에 출력되는 경우
  • Error Based SQLi: SQL 에러가 발생하는 경우
  • Blind SQLi: 만능, SQLInjection이 가능한 모든 곳에서 가능

SQL Injection Point 찾기

  • SQL Injection이 일어나는 곳(DB에게 SQL 질의문을 사용하는 곳)
  • 입력란만 SQL Injection이 가능한 것 아님
  • 질의를 하고있다면 SQL Injection의심해보기
  • SQL 쿼리 예상하고 쿼리 생성 후 실행
  • 결과가 참 / 거짓 부분을 찾으면 됨

SQL Injection Point

쿠키 정보,Http 요청 헤더

  • Cookie: user=yytest

column 명

  • select * from board where ‘test’ like ‘%test%’

order by절

  • where username like ‘%test%’ order by ‘title’
  • case when (조건) then (참일 때) else (거짓일 때) end → 조건문임
    • case when (1=1) then 1 else 2 end →1
    • case when (1=2) then 1 else 2 end →2
  • case when (1=1) then 1 else (select 1 union select 2) end ⇒ order by 에 행이 2개 출력됨
  • (select 1 union select 2 where (1=1))
    • 두개의 행의 데이터가 나옴 → 에러 발생
  • (select 1 union select 2 where (1=2))
    • where 이 거짓이기 때문에 정상 출력 됨
  • 참과 거짓 조건의 결과가 똑같이 나올때 에러를 유발 방법
    • yytest' and (select 1 union select 2 where (1=2)) and '1'='1

SQL Injection 대응 방법

  • Prepared Statement
    • 파라미터를 빈칸으로 둔 후 SQL 질의문을 컴파일 해둠
      • 질의문 파라미터 빈칸 ‘?’ 로 놔둠
    • 컴파일 해둔 질의문에 입력값을 빈칸 ‘?’에 넣음
    • SQL Injection을 배우는 이유
      • Prepared Statement를 잘 못 쓴 경우
      • Prepared Statement를 못 쓰는 경우(적용이 안되는 곳)
        • order by절
        • table 이름, column 이름
  • White List Filtering
    • 단어를 필터링 하면 됨
      • 화이트: 특정 단어만 쓸 수 있게 하는 것
      • 블랙: 특정 단어를 못 쓰게 하는 것
if(sort == "title"){

} elif (sort == "username"){

}else{
	sort = "title";
}
728x90
반응형
저작자표시 비영리 동일조건 (새창열림)

'모의해킹 > 모의해킹 스터디' 카테고리의 다른 글

모의해킹 스터디 9주차 정리  (0) 2025.01.08
모의해킹 스터디 CTF 문제 - SQL Injection Point 1 ~ 4  (0) 2025.01.07
모의해킹 스터디 CTF 문제 - SQL Injection 5  (0) 2024.12.10
모의해킹 스터디 CTF 문제 - SQL Injection 4  (0) 2024.12.06
모의해킹 스터디 CTF 문제 - SQL Injection 3  (0) 2024.12.04
'모의해킹/모의해킹 스터디' 카테고리의 다른 글
  • 모의해킹 스터디 9주차 정리
  • 모의해킹 스터디 CTF 문제 - SQL Injection Point 1 ~ 4
  • 모의해킹 스터디 CTF 문제 - SQL Injection 5
  • 모의해킹 스터디 CTF 문제 - SQL Injection 4
BPM37093
BPM37093
luna의 IT기술 정리
  • BPM37093
    IT Study Log
    BPM37093
  • 링크

  • 글쓰기 관리
    • 분류 전체보기 (43)
      • 모의해킹 (37)
        • 웹해킹 (1)
        • 모의해킹 스터디 (36)
      • Web (5)
        • 웹 보안 (1)
        • 웹 크롤링 (1)
      • Data (0)
      • Cloud (0)
      • Network (1)
  • 인기 글

  • 방문자 수

    방문자수Total

    • Today :
  • 태그

    HTML
    mysql
    티스토리챌린지
    웹개발
    Chrome
    웹해킹
    sqlinjection
    오블완
    WEB
    Network
    메서드
    모의해킹스터디
    burpsuite
    NAT
    상태코드
    HttpResponse
    httprequest
    hash
    php
    SQL
    javascript
    HTTP
  • hELLO· Designed By정상우.v4.10.1
BPM37093
모의해킹 스터디 8주차 정리
상단으로

티스토리툴바