반응형

자바 스크립트 문제이다.

 

문제에 들어가보니, 로그인 폼이 있어서 그냥 아무 값이나 넣어서 로그인 시도를 해보았다.

 

음... 당연히 로그인이 안되네요..ㅎ

 

우클릭해서 소스보기를 해보았습니다!! 그랬더니 소스 상에 login.js 파일을 참조한다고 나오는군요.

 

login.js 파일 분석을 해봅니다. id가 4dm1n이고 password가 sh.org일 경우 정상적으로 로그인이 된다는 로직입니다.

 

로그인을 시도해보면,

 

패스워드가 Flag 값이라는 소리군요. 대충.. 사실 이 과정 필요없이 바로 login.js에서 패스워드 확인 후 Flag 인증을 해도 아무 상관 없습니다!ㅎㅎ 

반응형

'Study > Wargame' 카테고리의 다른 글

[root-me] Javascript - Authentication2  (0) 2019.04.15
[root-me] Javascript - Source  (0) 2019.04.15
[root-me] HTML - disabled buttons  (0) 2019.04.15
[root-me] Path Truncation  (0) 2019.02.26
[root-me] SQL Injection - GBK  (0) 2019.02.21
반응형

아직 웹 서버 문제도 못 풀었지만, 클라이언트 문제라도 빨리 풀어버리고 싶어서... 시작해보았다.

 

첫번째 문제는 HTML 문제이다.

 

문제에 들어가보면 비활성화된 입력 폼과 버튼이 있는 화면이 뜨는데, 아마 이걸 활성화해서 보내면 되는 거겠지?

 

웹 프록시 도구에서 전송된 응답 값에서 입력 폼과 버튼 부분을 찾아, 그 곳에 "disabled" 속성이 있길래 이걸 그냥 삭제해보았다.

 

그랬더니, 정상적으로 입력 창과 버튼이 활성화 되었다. 그냥 임의의 값을 써서 보내보니,

 

Flag 값이 나왔다!

 

반응형

'Study > Wargame' 카테고리의 다른 글

[root-me] Javascript - Source  (0) 2019.04.15
[root-me] Javascript - Authentication  (0) 2019.04.15
[root-me] Path Truncation  (0) 2019.02.26
[root-me] SQL Injection - GBK  (0) 2019.02.21
[root-me] Server-side Template Injection  (0) 2019.02.08
반응형

우선, 엔디언이란  컴퓨터 메모리 같은 1차원의 공간에 여러 개의 연속된 대상을 배열하는 방법이다.(출처-위키백과)

 

그 중에서 바이트 순서(바이트 오더)를 설명하는 용어를 "빅엔디언", "리틀엔디언"으로 나눌 수 있다.

 

엔디언(Big-Endian)은 바이트 열에서 가장 값이 먼저 저장되고,

리틀엔디언(Little-Endian)은 바이트 열에서 가장 작은 값이 먼저 저장된다.

 

위의 그림과 같이 빅엔디언 형식은 상위 바이트의 값(바이트 열에서 가장 큰 값)이 메모리의 시작주소에 먼저 저장되고,

리틀엔디언 형식은 하위 바이트의 값(바이트 열에서 가장 작은 값)이 메모리의 시작주소에 먼저 저장된다.

 

우리가 자주 사용하는 인텔(Intel)계열 프로세스는 리틀엔디언 형식으로 데이터를 저장하고 있으나, CPU간 데이터 전송을 위해 데이터를 전송할 경우에는 빅엔디언 형식으로 변환하여 전송한다.

 


01111011 10010101

 

예를 들어 위와 같이 2Byte, 즉 16bit의 값이 있다고 가정했을 때,

 

빅엔디안 순서로 읽으면 0x7B95 이고, 리틀엔디안 순서로 읽으면 0x957B가 되는 거죠.

반응형

+ Recent posts

반응형
반응형