문제 풀고 AUTH창에 푼 키를 적으면 된다.
1.
ami
ami
aadmin
이므로 admin 입력
결과 나온다.
mid 이거 다시 보기
https://www.oppadu.com/%EC%97%91%EC%85%80-mid-%ED%95%A8%EC%88%98/
엑셀 MID 함수 사용법 및 실전예제 :: 텍스트 함수 - 오빠두엑셀
엑셀 MID 함수 요약 선택한 문자열의 지정한 위치부터 원하는 문자수만큼 문자열을 반환합니다. 설명 MID 함수는 선택된 문자열 또는 셀에 포함된 문자열에서 사용자가 지정한 위치로부터 지정한
www.oppadu.com
mid에서 = MID ( 추출할_문자열, 시작위치, 추출할_문자수 )
시작위치는 1부터 시작
aadmin 이렇게 추출된다.
&는 문자열 이어주는 함수
https://veredongce.tistory.com/203
엑셀 &(앰퍼샌드)와 ""(큰따옴표) 활용방법
엑셀 &(앰퍼샌드)와 ""(큰따옴표) 활용방법 안녕하세요 VERE입니다. 오늘은 간단하지만 응근히 쓰임새가 많은것에 대해서 설명을 드리려고 합니다. 그것은 바로 &(앰퍼샌드)와 ""(큰따옴표) 이것들
veredongce.tistory.com
2.
id===pw가 같다고 한다.
"1 or "1
하니까 안되네
여기를 보면 id와 pw가 같을 때라고 하는데 조건문 보면 id==pw일때 값을 초기화한다.
콘솔창을 통해 우회한다
id와 pw를 같게 아무거나 치고 콘솔창에 document.web02.submit()을 친다
3.
글자 그대로 notice board에 articles을 적으라는 뜻이다.
근데 write 버튼이 없다.
FREE 게시판에는 Write버튼이 있다.
자바스크립트를 봐보면
경로가 지정되어있다. 누르면 저 링크로 가는 것이다.
/board/notice/write 로 경로를 바꿨더니 쓰는 칸이 나온다.
4.
스크립트를 보면
50까지 만들라고한다.
근데 25에서 멈춘다 그리고
plus를 눌러도 점수는 오르지않는다.
User-agent란? 사용하는 브라우저 등의 정보
웹 브라우저 속 숨겨진 중요 기능, 사용자 에이전트(User Agent)란? - Wishket
사용자 에이전트 (User Agent)란, 우리가 사용하는 웹 브라우저 속에 숨겨진 중요한 기능 중 하나를 말합니다. 간단히 말해 내가 어떤 OS를 쓰고 있고, 버전은 어떤 버전인지 웹 브라우저의 정보는
blog.wishket.com
Burp Suite를 사용하여 (프록시 켜고) repeater를 이용하여 send를 보내면 된다.(클릭 수 주의)
혹시 넘어가면 쿠키 삭제하면 초기화된다
5.
코드 난독화 문제
이해할 수 없는(의도된) 것들이 있고
힌트는
난독화 해제 사이트
https://www.strictly-software.com/unpack-javascript
Javascript Unpacker Tool - Strictly Software
This Javascript unpacker tool has now been upgraded to allow it to unpack multiple eval statements. So if your packed code has itself been packed a few times it will loop through until it finds the original source code. If you want to test this multiple ev
www.strictly-software.com
eval(function(p,a,c,k,e,r){e=function(c){return c.toString(a)};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('g l=m o(\'0\',\'1\',\'2\',\'3\',\'4\',\'5\',\'6\',\'7\',\'8\',\'9\',\'a\',\'b\',\'c\',\'d\',\'e\',\'f\');p q(n){g h=\'\';g j=r;s(g i=t;i>0;){i-=4;g k=(n>>i)&u;v(!j||k!=0){j=w;h+=l[k]}}x(h==\'\'?\'0\':h)}',34,34,'||||||||||||||||var|result||start|digit|digitArray|new||Array|function|PASS|true|for|32|0xf|if|false|return'.split('|'),0,{}))
의 난독화를 해제해보았다.
var digitArray = new Array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
function PASS(n) {
var result = '';
var start = true;
for (var i = 32; i > 0;) {
i -= 4;
var digit = (n >> i) & 0xf;
if (!start || digit != 0) {
start = false;
result += digitArray[digit]
}
}
return (result == '' ? '0': result)
}
PASS()에 힌트값을 넣어보았다.
PASS(12342046413275659)
"9c43c20c"
키 값 넣으면 된다.
두번째 방법
eval()을 이용하여 난독화한것은 alert()로 복호화도 가능하다
여기 부분 복사해서 eval을 alert로 바꿔주면
복호화된다.
근데 저건 드래그가 안되니까 document.write(여기에 값) 하면 된다.!!
https://kwangguevara.tistory.com/10
[1] 자바스크립트 난독화 기초
[1] 자바스크립트 난독화 기초 1. 난독화란? 프로그래밍 언어로 작성된 코드를 읽기 어렵게 만드는 작업 2. 난독화의 기본 예 예제) ⇒ 3. 난독화 해제(복호화)의 원리 1) 난독
kwangguevara.tistory.com
굿굿 !!
'보안공부 > 워게임' 카테고리의 다른 글
dreamhack- command injection (0) | 2021.07.23 |
---|---|
dreamhack - csrf -1 (0) | 2021.07.23 |
LordofSQLInjection 4,5 (0) | 2021.07.16 |
mongoboard (0) | 2021.07.10 |
Mango (0) | 2021.07.03 |