[dreamhack] simple sqli

2024. 10. 4. 16:37·W3B H4CK1NG

상단 바에 Home, About, Contact가 있지만 실제 페이지는 Login만 존재

 

 

데이터베이스 파일명을 database.db로 설정

userid, userpassword가 각각 guest, guest인데 admin의 경우에는

{binascii.hexlify(os.urandom(16)).decode(“utf8”)}: 랜덤 16바이트 문자열을 16진수로 표현하도록 되어있다.

 

 

POST 메소드 요청 전달한 경우, users 테이블에서 입력한 userid와 userpassword가 일치하는 정보를 불러온다.

존재하면 로그인할 계정을 해당 쿼리 결과에서 불러와 사용하고 존재하지 않으면 wrong 메시지 출력

로그인하는 계정이 관리자 계정이면 flag 출력, 아니면 hello 출력

 

해결 방법 - SQL injection

 

userid와 userpassword를 입력 받고 동적으로 쿼리를 생성한 후 query_db 함수에서 SQLite에 질의

동적으로 생성한 쿼리: Rawquery

Rawquery를 생성할 때 이용자의 입력값이 쿼리문에 포함되면 injection 취약점에 노출될 수 있다.

 

 

userid 검색 조건만 받아들일 수 있도록 패스워드 부분은 주석 처리하는 방식

 

SELECT * FROM users WHERE userid="{userid}" AND userpassword="{userpassword}"; → 로그인 쿼리

SELECT * FROM users WHERE userid=“admin”-- AND userpassword=”1234(아무거나)"; →패스워드 부분 주석 처리

 

 

 

 

 

 

저작자표시 비영리 변경금지 (새창열림)

'W3B H4CK1NG' 카테고리의 다른 글

[dreamhack] Lecture. XSS  (0) 2024.10.08
[dreamhack] Lecture. Same Origin Policy, SOP  (1) 2024.10.08
[dreamhack] csrf-2  (0) 2024.10.04
[dreamhack] PHPreg_step1  (0) 2024.09.09
[dreamhack] Lecture. Cookie  (0) 2023.11.28
'W3B H4CK1NG' 카테고리의 다른 글
  • [dreamhack] Lecture. XSS
  • [dreamhack] Lecture. Same Origin Policy, SOP
  • [dreamhack] csrf-2
  • [dreamhack] PHPreg_step1
hauni
hauni
  • hauni
    200 OK
    hauni
  • 전체
    오늘
    어제
    • 분류 전체보기 (54)
      • W3B H4CK1NG (15)
      • reversing (10)
      • python (19)
      • project (1)
        • WHS (0)
        • network (1)
      • 동아리_I.Sly() (9)
      • something... (0)
  • 블로그 메뉴

    • 홈
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    이것이리눅스다
    보안
    방화벽
    리눅스
    방화벽 구현
    VMware
    록키리눅스
    네트워크
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
hauni
[dreamhack] simple sqli
상단으로

티스토리툴바