Season 1
-
[WEB] funjs 문제풀이 자바스크립트(Javascript)는 아주 강력한 프로그래밍 언어이다. HTML은 웹페이지의 큰 뼈대를 제공하고, CSS는 색깔이나 글씨체, 모양과 같은 디자인적인 요소를 관리하며, 자바스크립트는 웹 페이지의 동작을 담당한다. 즉, 자바스크립트는 동적으로 콘텐츠를 바꾸고, 멀티미디어나 움직이는 이미지 등 웹페이지를 꾸며주도록 도와준다. 크롬 개발자 도구(DevTools)는 크롬 브라우저에 내장된 개발 관련 도구입니다. 웹 어플리케이션을 개발하고 수정/최적화하는데 필요한 다양한 기능을 제공한다다. 자바스크립트 디버깅뿐 아니라 모바일 기기 시뮬레이터, 네트워크 분석, 최적화에 대해 검사도 해줍니다. 전체 기능은 공식 홈페이지에서 확인할 수 있다. 디버깅에는 주로 Elements,..
[dreamhack] funjs 문제풀이[WEB] funjs 문제풀이 자바스크립트(Javascript)는 아주 강력한 프로그래밍 언어이다. HTML은 웹페이지의 큰 뼈대를 제공하고, CSS는 색깔이나 글씨체, 모양과 같은 디자인적인 요소를 관리하며, 자바스크립트는 웹 페이지의 동작을 담당한다. 즉, 자바스크립트는 동적으로 콘텐츠를 바꾸고, 멀티미디어나 움직이는 이미지 등 웹페이지를 꾸며주도록 도와준다. 크롬 개발자 도구(DevTools)는 크롬 브라우저에 내장된 개발 관련 도구입니다. 웹 어플리케이션을 개발하고 수정/최적화하는데 필요한 다양한 기능을 제공한다다. 자바스크립트 디버깅뿐 아니라 모바일 기기 시뮬레이터, 네트워크 분석, 최적화에 대해 검사도 해줍니다. 전체 기능은 공식 홈페이지에서 확인할 수 있다. 디버깅에는 주로 Elements,..
2021.07.06 -
- 디컴파일 문제 - Start - 파이썬~, python~, 현재 시각, bughela.pyc 파일 - 외 특이사항은 보이지 않음 - bughela.pyc 파일 - .pyc파일에 대해 알아본 결과 간단히 파이썬 임시파일이라고 보면 될 것 같다. - 파이썬 언어로 작성된 코드를 컴파일하게 되면 실행파일이 생성되고 프로그램이 실행되는데, 이러한 컴파일 과정을 효율적으로 하기위해 임시파일을 생성하여 반복적인 작업을 줄인다고 한다. - 따라서 .pyc파일을 디컴파일 하면 파이썬 코드를 확인할 수 있다. - bughela.pyc (디컴파일) - 온라인 디컴파일러를 사용한 결과 위와 같은 코드 확인. - flag 는 http://wargame.kr:8080/pyc_decompile/?flag=FLAG - 여기서 ..
Wargame - pyc decompile- 디컴파일 문제 - Start - 파이썬~, python~, 현재 시각, bughela.pyc 파일 - 외 특이사항은 보이지 않음 - bughela.pyc 파일 - .pyc파일에 대해 알아본 결과 간단히 파이썬 임시파일이라고 보면 될 것 같다. - 파이썬 언어로 작성된 코드를 컴파일하게 되면 실행파일이 생성되고 프로그램이 실행되는데, 이러한 컴파일 과정을 효율적으로 하기위해 임시파일을 생성하여 반복적인 작업을 줄인다고 한다. - 따라서 .pyc파일을 디컴파일 하면 파이썬 코드를 확인할 수 있다. - bughela.pyc (디컴파일) - 온라인 디컴파일러를 사용한 결과 위와 같은 코드 확인. - flag 는 http://wargame.kr:8080/pyc_decompile/?flag=FLAG - 여기서 ..
2021.07.05 -
- 치트방지 시스템을 우회하는 javascript 문제 - Start - 비행기 게임 - 시작하면 양 옆에서 공격을 하며 공격에 맞으면 게임이 종료되고, 31337점을 획득해야 한다는 문구가 나온다. - 정상적인 플레이로 31337점 획득이 불가능한 상황 - script를 확인 - 문제 내용답게 javascript로 작동하는 게임인데.. 스크립트가 난독화되어있다. - 난독화를 풀어서 해결하는 문제인듯 싶다.. - 난독화를 풀어야 하나 귀찮아 하던 도중 게임이 오버되면 브라우저에서 발생하는 요청메시지를 확인했다. - 게임이 오버되면 high-scores.php 페이지를 요청하며, post메소드로 변수 'token', 'score'를 전송한다. - 저 값을 조작하여 전송하면 될 듯하다. - 그런데 'toke..
Wargame - fly me to the moon- 치트방지 시스템을 우회하는 javascript 문제 - Start - 비행기 게임 - 시작하면 양 옆에서 공격을 하며 공격에 맞으면 게임이 종료되고, 31337점을 획득해야 한다는 문구가 나온다. - 정상적인 플레이로 31337점 획득이 불가능한 상황 - script를 확인 - 문제 내용답게 javascript로 작동하는 게임인데.. 스크립트가 난독화되어있다. - 난독화를 풀어서 해결하는 문제인듯 싶다.. - 난독화를 풀어야 하나 귀찮아 하던 도중 게임이 오버되면 브라우저에서 발생하는 요청메시지를 확인했다. - 게임이 오버되면 high-scores.php 페이지를 요청하며, post메소드로 변수 'token', 'score'를 전송한다. - 저 값을 조작하여 전송하면 될 듯하다. - 그런데 'toke..
2021.07.05 -
Gremlin 문제와 문제 풀이는 같으므로, 현재 코드 상에서 문제점 설명과 방어 방법을 설명하겠다. include "./config.php"; login_chk(); $db = dbconnect(); DB 연결에 필요한 정보와 로그인이 되었는지 확인하는 함수, DB 연결하는 코드이다. if(preg_match('/prob|_|\.|\(\)/i', $_GET[id])) exit("No Hack ~_~"); // do not try to attack another table, database! if(preg_match('/prob|_|\.|\(\)/i', $_GET[pw])) exit("No Hack ~_~"); GET 메소드로 id와 pw를 받고 있다. 또한 입력받은 값은 prob, _, ., ()이라는..
[Lord of SQLInjection] Coblt Write UPGremlin 문제와 문제 풀이는 같으므로, 현재 코드 상에서 문제점 설명과 방어 방법을 설명하겠다. include "./config.php"; login_chk(); $db = dbconnect(); DB 연결에 필요한 정보와 로그인이 되었는지 확인하는 함수, DB 연결하는 코드이다. if(preg_match('/prob|_|\.|\(\)/i', $_GET[id])) exit("No Hack ~_~"); // do not try to attack another table, database! if(preg_match('/prob|_|\.|\(\)/i', $_GET[pw])) exit("No Hack ~_~"); GET 메소드로 id와 pw를 받고 있다. 또한 입력받은 값은 prob, _, ., ()이라는..
2021.07.05 -
문제를 보니, Webhacking.kr에서 풀이하였던 문제와 굉장히 유사하여 쉽게 풀 수 있었다. 코드를 분석하자면, include "./config.php"; login_chk(); $db = dbconnect(); DB 연결에 필요한 정보와 로그인이 되었는지 확인하는 함수, DB 연결하는 코드이다. if(preg_match('/prob|_|\.|\(\)/i', $_GET[id])) exit("No Hack ~_~"); // do not try to attack another table, database! if(preg_match('/prob|_|\.|\(\)/i', $_GET[pw])) exit("No Hack ~_~"); GET 메소드로 id와 pw를 받고 있다. 또한 입력받은 값은 prob, _,..
[Lord of SQLInjection] Gremlin Write UP문제를 보니, Webhacking.kr에서 풀이하였던 문제와 굉장히 유사하여 쉽게 풀 수 있었다. 코드를 분석하자면, include "./config.php"; login_chk(); $db = dbconnect(); DB 연결에 필요한 정보와 로그인이 되었는지 확인하는 함수, DB 연결하는 코드이다. if(preg_match('/prob|_|\.|\(\)/i', $_GET[id])) exit("No Hack ~_~"); // do not try to attack another table, database! if(preg_match('/prob|_|\.|\(\)/i', $_GET[pw])) exit("No Hack ~_~"); GET 메소드로 id와 pw를 받고 있다. 또한 입력받은 값은 prob, _,..
2021.07.05 -
보호되어 있는 글입니다.
[Try - 4][Webhacking.kr] sliping beauty Write Up보호되어 있는 글입니다.
2021.07.05