Web Hacking

퍼센트 인코딩, uri 인코딩 이외에 html 인코딩도 있다. xss에서 src 필드 같은데에 사용되는데 예를들어 소괄호 '(' 는 html entity로 &#x28이다. x28은 16진수이므로 &#40과 똑같다. 아래 링크에 특수문자를 자세히 정리한 글이 있다. https://johngrib.github.io/wiki/special-chars/ 특수문자 모음 특수문자 검색하다 빡쳐서 작성한 문서 johngrib.github.io
우리가 사용하는 웹 HTTP 프로토콜은 Connectionless와 Stateless하다. 즉, 하나의 요청에 하나의 응답만 하고(Connectionless) 상태를 계속 저장하지 못한다.(Stateless) 그래서 웹 서버는 수많은 클라이언트 등을 구별하기 위해 Cookie와 Session을 사용한다. 1. Cookie (쿠키) 쿠키는 Key와 Value로 이뤄진 일종의 단위로, 서버가 클라이언트에게 쿠키를 발급하면 클라이언트는 서버에 요청을 보낼 때 쿠키를 같이 전송한다. 예를 들어, 드림핵 서버에서 로그인을 해본 후 개발자도구로 확인하 cookie에 sessionid가 추가된 걸 볼 수 있다. 서버는 저 sessionid 쿠키 값을 기반으로 사용자를 인증할 것이다. 이 쿠키값을 그대로 복사해서 다른..
디버그 하라고 한다. 개발자 도구에 있는 script를 갖고오면은 var a = [ "RcOhTDV1Ew==", "McOVwqpRBg==", "c8K/w43DvcK8", "SsOrTCF1CVDCgcKLEsKc", "NsK/w4Bc", "G1TDpwk=", "AcKtwqfDlW7Dsw==", "e3kkcQJfwoNFDEU9", "QMOXDBo=", "w5bCsWlh", "eWY6bg8=", "FnbDoEvDtl1LUkB7w4Q=", "esOZTiPDsg==", "bzfCkFfCtA==", "ZmzDjHcn", "PxLCm3LDvA==", "IcKlVy9pw57DgMK3w6kmwpvCiUnDhcOKw4A=", "LMKnwqECawEeEMOZQsK7wrLCscKpSG1AwqvDvjnDpMKhOSDCqQfDmV..
요상한 게임이 나온다. rank페이지로 접속하면은 insert문으로 점수를 매긴다는 걸 알 수 있다. * trim 함수는 앞과 뒤 공백을 삭제시킴 일단 insert문이여서 할 수 있는게 제한적이다. score 점수를 클릭하면 저렇게 뜨는데 score인자에 다르게 값을 줘서 injection이 되는지 확인해 보겠다. 각각 score 뒤에 true와 false값을 줘보니 결과값이 달랐다. 그러면 flag확인을 위해 blind sql injection 정도 사용해볼 수 있긴한데 flag의 테이블 필드명을 모르니 필드명을 뽑아보겠다. limit 0,1 procedure analyse() sql절 뒤에는 limit를 사용할 수 있는데 원래 limit는 아이템 수 제한을 위해 사용되지만 뒤에 procedure an..
admin page에 접속해야하는 문제이다. admin page를 눌러보면은 login 하는 팝업 창이 뜬다. 일단 아이디를 모르기 때문에 아무거나 쳐보고 들어가겠다. 몇번 아이디를 틀리고 Cancel을 눌러보면은 source 코드를 볼 수 있는 링크를 준다. view-source 위에서부터 차근히 코드 분석을 해보겠다. 이 코드는 /admin/ 주소를 기준으로 한다. 1. logout = 1 이면은 logout을 한다. 2. login Session이 존재할 시 2-1. 만약 login Session이 어드민이고 SERVER[Remote_Addr]이 172.17.0. ~ 으로 시작하는 주소이면은 flag를 출력한다. 3. login Session이 없을 시 3-1. SERVER[HTTP_REFERER]..
프레딕
'Web Hacking' 카테고리의 글 목록 (12 Page)