목록전체 글 (11)
Study for me

이번 문제는 게임 점수를 조작해보는 것 같습니다. 31337점에 도달해야 플래그를 얻을 수 있는데, 일반적인 방법으로는 얻을 수 없습니다. f12를 눌러서 소스를 확인해보겠습니다. 자바스크립트 문제 같습니다. head 태그 가장 밑에 난독화된 자바스크립트가 있는 것을 확인할 수 있습니다. 정상적인 방법으로는 읽을수 없으므로, beautifier.io 사이트를 이용해서 읽을 수 있게 변환시킵니다. function secureGame() { var _0x8618x2 = this; var _0x8618x3 = true; function _0x8618x4() { _0x8618x3 = false; return true }; function _0x8618x5() { return _0x8618x3 }; this['k..

문제를 확인해보면 아이디와 패스워드 칸이, 그리고 로그인 버튼이 있습니다. 소스 버튼을 눌러서 이 페이지의 소스를 확인해봐야 할 것 같습니다. php 문제 같습니다. php를 활용해서 풀려고 했으나, 아래 주석 부분에 blocked accounts라고 쓰인 곳이 눈에 띄어서 확인해보기로 했습니다. 계정이 막혔다고 나옵니다. 이 부분을 우회하면 문제를 풀 수 있을 것 같아서 코드를 자세히 살펴보겠습니다. 정직하게 id칸에 guest나 blueh4g라고 칠 경우 로그인을 할 수 없게 설정해둔 것 같습니다. MySQL에서는 쿼리를 전송할 때 대소문자를 구별하지 않습니다. 즉 guest나 Guest나 GUEST나 쿼리 상으로는 모두 같은 뜻입니다. 하지만 저 코드에서는 오로지 소문자로 된 guest만 예외처리를..

거의 모든 애플리케이션은 애플리케이션 내에서 처리되는 데이터를 관리하기 위해 데이터 저장소(데이터베이스)에 의존합니다. 이 데이터는 주로 사용자 계정, 권한, 애플리케이션 구동 설정 등과 관련돼 있으며, 핵심 애플리케이션 로직을 구동합니다. 일반적으로 애플리케이션은 다른 애플리케이션 사용자와 관련된 데이터를 처리할 때 데이터 저장소에 접근하는 모든 유형에 대해 일반적인 권한 수준을 사용합니다. 공격자가 데이터 저장소를 사용해서 다른 데이터를 검색하거나 수정할 수 있게 애플리케이션의 상호 작용을 방해할 수 있다면 공격자는 일반적으로 애플리케이션 계층에서 제공하는 데이터 접근을 통해 모든 통제를 무시할 수 있습니다. 이번 포스팅에서는 데이터베이스에 접근하는 가장 널리 알려진 공격 방법인 SQL Injecti..