eli_ez3r
eli_ez3r
eli_ez3r
전체 방문자
오늘
어제
  • 분류 전체보기 (202)
    • 0x01 끄적끄적 :) (57)
      • Network (5)
      • Security (14)
      • Reversing (2)
      • Forensic (5)
      • Operation System (10)
      • Development (10)
      • Solution (7)
      • 보안 상식 (3)
    • 0x02 Study :) (127)
      • Pwnable (59)
      • Webhacking (56)
      • Reversing (11)
      • Machine Learning (1)
    • 0x03 ETC :) (16)
      • IT Unpacking (5)
      • IT Information (1)
      • Enjoy (4)
      • Etc (6)
    • Admin :) (0)
      • 0x01 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • github.io 블로그 개설

인기 글

태그

  • 풀이
  • overflow
  • 해커
  • hack
  • 해킹
  • buffer
  • 설명
  • web
  • LOB
  • 과정
  • Up
  • password
  • 메모리
  • 오버플로우
  • BOF
  • attack
  • pwnable
  • hakcing
  • 문제풀이
  • school
  • 패스워드
  • 스쿨
  • 공격
  • LEVEL
  • webhacking.kr
  • write
  • hacker
  • 문제
  • 암호
  • hacking

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
eli_ez3r

eli_ez3r

webhacking.kr Level 27 문제풀이
0x02 Study :)/Webhacking

webhacking.kr Level 27 문제풀이

2018. 7. 29. 09:48

Level 27



<?
if($_GET[no])
{

if(eregi("#|union|from|challenge|select|\(|\t|/|limit|=|0x",$_GET[no])) exit("no hack");

$q=@mysql_fetch_array(mysql_query("select id from challenge27_table where id='guest' and no=($_GET[no])")) or die("query error");

if($q[id]=="guest") echo("guest");
if($q[id]=="admin") @solve();

}

?>

 

입력 값에 1을 넣고 제출 하니 "Guest"라는 문자열이 출력 되었다.


no의 값을 admin의 값으로 바꾸면 될 듯 하다.


보통 admin의 값은 0 또는 2인 점을 바탕으로 접근하였다.


1) or no = 2 라고 보내면 no=(1) or no = 2 라고 쿼리가 보내진다.


이때 '='는 필터링 되므로 '=' 대신 'like'를 사용하면 된다.

 

1) or no like 2 라고 보내면 "query error"라고 뜬다. 이유는 뒤에 ')'가 남아이있기 때문에 뒷 부분을 주석 처리 해 주어야 한다.

 

정답 : 1) or no like 2 --

저작자표시 비영리 변경금지 (새창열림)
    '0x02 Study :)/Webhacking' 카테고리의 다른 글
    • webhacking.kr Level 32 문제풀이
    • webhacking.kr Level 31 문제풀이
    • webhacking.kr Level 26 문제풀이
    • webhacking.kr Level 25 문제풀이
    eli_ez3r
    eli_ez3r

    티스토리툴바