webhacking.kr - old 54

2024. 3. 14. 14:14·Wargame/Webhacking.kr

 

 

문제를 포면 Password 가 '?' 칸에 한 글자씩 출력되면서 사라진다.

 

소스 코드를 확인해보자.

 

 

 

 

 

 

function run(){
  if(window.ActiveXObject){
   try {
    return new ActiveXObject('Msxml2.XMLHTTP');
   } catch (e) {
    try {
     return new ActiveXObject('Microsoft.XMLHTTP');
    } catch (e) {
     return null;
    }
   }
  }else if(window.XMLHttpRequest){
   return new XMLHttpRequest();
 
  }else{
   return null;
  }
 }
x=run();
function answer(i){
  x.open('GET','?m='+i,false);
  x.send(null);
  aview.innerHTML=x.responseText;
  i++;
  if(x.responseText) setTimeout("answer("+i+")",20);
  if(x.responseText=="") aview.innerHTML="?";
}
setTimeout("answer(0)",1000);

 

다른 태그는 중요한 게 없으니 script 태그만 확인해 보자.

 

answer 함수를 보면 XMLHttpRequest 객체를 사용해서 서버에 HTTP GET를 요청한다.

 

현재 페이지의 URL에 쿼리 문자열 '? m='와 'i'를 추가하여 요청한다 Network를 봐보자.

 

 

 

 

 

 

 

 

 

 

 

네트워크를 요청받은 URL '? m' , 'i'가 담겨있다.

 

이걸 전부 다 확인하면 Password를 알 수 있을 거 같지만 귀찮으니 기존 소스코드를 수정해 보자. 

 

'aview.innerHTML=x.responseText;'이 부분은 HTML요소 중 id가  'aview'에 한 글자씩만 출력되게 합니다

 

= 왼쪽에 '+'를 붙여 한 글자씩 출력하되 사라지지 않게 수정하자.

 

그리고

 

''if(x.responseText="") aview.innerHTML="?"' -> 서버로부터 받은 응답이 없는 경우 'aview' 내용을 '?'로 변경시킨다.

 

여기서 'aivew'은 Password='(이 부분)' 뜻한다.

 

지워버리도록 하자.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'+'를 추가하고 아까말한 부분은 지웠다.

 

실행시켜 보자.

 

 

 

 

 

 

FLAG 가 출력되고 'Auth'로 가서 FLAG 값을 넣어보자.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'Wargame > Webhacking.kr' 카테고리의 다른 글

webhacking.kr - old 25 (PHP wrapper [LFI])  (0) 2024.03.14
webhacking.kr - old 27 (SQL INJECTION)  (0) 2024.03.14
webhacking.kr - old 38 (Log Injection)  (0) 2024.03.13
webhacking.kr - old 39  (0) 2024.03.13
webhacking.kr - old 10  (0) 2024.03.13
'Wargame/Webhacking.kr' 카테고리의 다른 글
  • webhacking.kr - old 25 (PHP wrapper [LFI])
  • webhacking.kr - old 27 (SQL INJECTION)
  • webhacking.kr - old 38 (Log Injection)
  • webhacking.kr - old 39
G_OM
G_OM
최대한 설명 열심히 하려고 합니다. 궁금한 거 있으면 언제든지 물어보셔도 좋습니다.
  • G_OM
    끄적끄적
    G_OM
  • 전체
    오늘
    어제
    • 분류 전체보기 (139)
      • 모의해킹 (8)
      • Wargame (69)
        • Linux_bandit (33)
        • Webhacking.kr (36)
      • DreamHack (52)
        • WEB (14)
        • Reverising (9)
        • System (0)
        • CTF (22)
      • Android_security (5)
      • 정보보안기사 (2)
      • IT? (3)
  • 블로그 메뉴

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

  • 공지사항

    • DreamHack 에 대한 문제들...
  • 인기 글

  • 태그

    Cookie
    Dreamhack
    CTF
    lfi
    난독화
    정보보안기사
    sql injection
    webhacking
    insecurebankv2
    php
    리눅스
    drozer
    php wrapper
    bandit17
    워게임
    Android
    wargame
    url encode
    안드로이드
    webhacking.kr
    bandit20
    union
    Linux wargame
    bandit30
    overthewire
    bandit18
    리눅스 워게임
    cookies
    bandit
    Linux
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
G_OM
webhacking.kr - old 54
상단으로

티스토리툴바