728x90
가설 1 sign in 할 때 우회할 수 있는 방법이 있다
>char 32를 넘어가서 다르게 넣을 때 실질적으로 다른 admin을 같게 인식하는 취약점 이용
가설 2 sign up 할 때 admin으로 교묘하게 바꾸어서 sign up 할 수 있는 방법이 있다
가설 3 그냥 일반적인 login을 한 이후에 xss를 통해서 admin을 얻을 수 있다
위에 나오는 것처럼 여러 가지 공격벡터를 생각했다
실제 웹사이트에서는 굉장히 많은 공격 벡터가 발생할 수 있다
다만 이 문제에서는 자세히 보면 char 과 join with라는 내용이 나오는데
나는 이 굉장히 중요한 힌트를 놓침으로써 어떤 가설에 무게추가 치우치는지 완전히 놓쳤다고 볼 수 있다 이 문제에서 원했던 것은 admin으로 sign up하라는 것이었다
admin 비밀번호나 cookie값을 알 수는 없다 추론할 수도 없다
그러나 char(32)를 넘어갈 때 뒷 부분이 무시되는 취약점을 이용해서
admin으로 공백을 넣고 뒤에 아무 값이나 구분되는 값을 넣게되면
admin으로 sign up을 할 수 있게 된다 실질적으로는 다른 값이지만 결과적으로 웹은 같은 admin으로 인식한다(뒤에 값이 결국엔 사라지기 때문)
물론 그냥으로는 32를 넘는 값을 입력할 수 없기 때문에 개발자 도구를 이용해서 인위적으로 넣을 수 있는 값을 늘려주어야 한다
728x90
'호그와트' 카테고리의 다른 글
드림핵 tomcat manager (0) | 2022.01.18 |
---|---|
드림핵 jff3_magic (0) | 2022.01.18 |
드림핵 you shall pass (0) | 2022.01.18 |
드림핵 web-deserialize python (0) | 2022.01.18 |
드림핵 linux forest (0) | 2022.01.18 |