전체 글 94

웹 해킹 6차시 과제

문제 portswigger SQL injection UNION attack, retrieving data from other tables 풀이 카테고리를 눌렀더니, category를 파라미터로 넘겨주는 것을 확인할 수 있었습니다. 여기서 sql injection을 확인해보려고 '를 넣어줬습니다. Internal Server Error를 통해서 sql injection에 취약하다는 것을 확인해줄 수 있다. null을 두 개까지 넣었더니 정상적으로 처리된다. 그러니 문제에서 제공한 users테이블의 username과 password를 가져올 수 있다. ?category=Accessories%27union%20select%20username,password%20from%20users%20where%20user..

JS 함수 괄호 () 사용 여부

1 2 3 4 5 6 7 8 9 window.onload = function() { setInterval(a, 1000); }; function a() { console.log("123"); } cs 1 2 3 4 5 6 7 8 9 window.onload = function() { setInterval(a(), 1000); }; function a() { console.log("123"); } cs 위 코드는 1초 뒤에 a함수를 실행하지만, 아래 코드는 바로 a함수가 실행되고 오류를 반환한다. 이는 콘솔에 찍어보면 쉽게 이해할 수 있다. ()가 붙는 순간 자바스크립트는 함수를 실행한다. 하지만 없다면 그건 함수의 레퍼런스를 뜻한다. 저기서 괄호를 넣어주지 않는 이유는 저 코드가 읽히면서 함수를 실행하는..

webhacking.kr old-15 풀이

문제 풀이 들어가면 Access_Denied라면서 나가진다. 그래서 python requests로 대충 코드만 읽어와봤다. 1 2 3 4 import requests url = 'https://webhacking.kr/challenge/js-2/'; re = requests.get(url); print(re.text); cs alert로 Access_Denied를 뜨게 하고, /로 다시 리다이렉션해줘서 나가지게 되어 있다. 만약 둘이 없었다면 [Get Flag]가 써질 것이다. 상대경로이니 뒤에 ?getFlag를 붙여주고 접속하면 풀린다.