본문 바로가기

Web/wargame

(13)
[Webhacking.kr] old-06 view-source 를 클릭해서 소스코드를 보자. 2개의 부분으로 나눠서 보려고 한다. user 라는 쿠키 값이 존재하지 않다면, guest 와 123qwe 를 변수 val_id 와 val_pw 에 각각 대입, for문을 통해 변수 val_id 와 val_pw 를 20번 base64 인코딩, 인코딩된 val_id 와 val_pw 를 str_replace() 를 통해 문자 치환, 변환된 val_id 와 val_pw 를 user 쿠키 값과 password 쿠키 값으로 지정. base64_encode() 64진법. 0부터 63까지 각각 문자를 지정해준 후, 그에 맞게 문자를 치환하는 방식. 즉, 이진 데이터를 ASCII 문자열로 바꾸는 인코딩 방식을 의미함. 참고 https://poci.tistory.com..
[Webhacking.kr] old-18 SQL Injection을 활용하는 문제라고 생각된다. 아래의 view-source로 소스코드를 보자! 먼저, GET 방식으로 no를 전달받고, db를 연결시킨다. preg_match() -
[Webhacking.kr] old-14 onclick=ck() function ck() 를 살펴보면, 변수 ul 에 document.URL (현재 페이지의 url) 을 대입 ul 에 ul.indexOf(".kr") 을 대입 indexOf() : 문자열에서 원하는 문자열을 검색해주는 내장함수로 위치값을 index로 반환 https://webhacking.kr/challenge/js-1/ 이므로 ul 은 18 ul=ul*30 이므로 ul 은 540 콘솔 창에서 ul 확인 540을 입력해주면 해결! url 이 ?ul*pw.input_pwd.value 인 ?540*540 으로 이동했음을 알 수 있음
[Webhacking.kr] old-17 onclick 이벤트 : 사용자가 요소를 클릭할 때 발생 입력 값을 sub()에 전달 unlock 변수 만약, 입력한 value 값과 unlock 값이 일치한다면 ?unlock/10 으로 이동 일치하지 않다면 Wrong을 alert unlock 값을 알아내기 위해 개발자 도구(F12)의 콘솔 기능 활용 → unlock 값을 계산하거나 출력 → 7809297.1 입력 시 해결
[Webhacking.kr] old-16 소스코드 ↓ JavaScript 이벤트 핸들링 onload: 웹 페이지가 읽혀질 때 이벤트 발생 onkeypress: 사용자가 키보드의 키를 눌렀을 때 이벤트 발생, 대소문자 구분 가능, ASCII 값으로 사용됨 → onload 를 통해 페이지 로드 시 kk() 호출 → onkeypress 를 통해 사용자가 키를 누를 때 mv() 호출 Math.floor(): 소수점 이하를 버림 → rndc 에 난수인 정수 대입 → mv() 에서 키보드 입력된 cd 값에 따라 star 의 좌표값이 변경됨을 알 수 있음 → if(cd==124) location.href 를 통해 String.fromCharCode(cd).php 로 이동 // do it! → d 입력 시 오른쪽으로 이동 → a 입력 시 왼쪽으로 이동 → w..