본문 바로가기

 

몇달전에 학교에서 학생 관리 시스템을 만들어서 릴리즈를 했더라고요.

웹이더라고요????

 

왠만한건 다 해킹 못하게 막아놨다고 하길래 재미로 한번 취약점을 찾으려 삽질을 해봤어요.

아 그리고 저기 학교 내부망이라서 외부에서 접근은 불가능

 

 

기능중에 자신이 뭘 잃어버렸는지, 자신이 뭘 습득했는지를 올릴수 있는 게시판같은게 있어요.

 

 

안에다가 분실물인지, 습득물인지를 체크할수있는 체크박스가 있고,

제목, 장소, 내용 입력과

파일 업로드가 있네요?

 

 

 

이런식으로 빈칸을 채우고 확인을 누르면 업로드가 되는데

 

여기에다가 이미지가 아닌 이상한걸 집어넣으면?

 

 

이미지만 올려주세요. 라면서 프론트에서 걸러내버리네요.

 

그러면 나와라 피들러

 

 

피들러를 이용해서 프론트 인증을 싹 우회해버리면?

 

서버에서 걸러내버리네요.

 

진짜로요.

 

Content-Type 에 맞게 헤더까지 검사를 하나보네요.

 

그러면 헥스에디터를 꺼내서

 

 

정상적인 PNG 파일에다가

 

맨 뒤에

<script>alert("X55 I3Y D0C70R_CH01");</script>

를 때려박아놓고

업로드를 시도하면?

 

 

놀랍게도 올라가지만

 

.png 이기때문에 이미지로 보여지죠.

 

 

그리고 파일이름도 임의로 바뀌어버리는데

 

내용은 원본 그대로에요.

다운로드 받아서 헥스에디터로 뜯어봤는데 맨 뒤에있는 스크립트가 남아있더라고요.

정말로 다 막아놨나 싶어서 피들러로 하나하나 다 찾아보던중

 

 

????

임의로 바뀌어버리는 파일이름을 프론트에서 정해주네요????

 

그러면 파일이름(과 아마도 경로)을 마음대로 바꿔버릴수 있다는거고...

 

 

Content-Type 에서 확장자를 때다가 프론트에서 정해준 파일이름과 합쳐서
api/image/{확장자}/{바뀐파일이름}.{확장자}

에다가 저장하는것같은데

 

 

 

파일이름을 임의의 무언가로 바꾸고

 

Content-Type 를 image/html

로 바꿔버리고 업로드를 시도해보면?

 

위에서 만들었던 png파일을 html로 열수 있겠네요.

 



 

 

엥 안되네

 

진짜 안되는건가 하고

직접

api/image/html/xss.html

로 접근을 해봤더니

 

 

들어가지더군요.

 

 저 alert를 봤을때

엥???? 이게 왜들어가져?????????????????????

였어요.

 

 

그리고 발견한 다른 취약점중에 저기 저부분을 건들여서 글이 로드된순간

해커가 지정해놓은 웹서버 내부의 위치에 GET를 날려 페이지를 로드하게 만드는 취약점이 있어요.

 

api에서 이미지를 가져올때 api/image/{type}/{uploadName}.{type}

로 가져오더라고요

그걸 이용해서 type를 ../../../ 같은걸 집어넣어서 원하는파일을 로드해올수 있더라고요.

 

위에 심어둔 XSS와 이거를 합치면????

 

빠밤!

 

Stored XSS 네요.

 

바로 서버팀 대장한테 제보하니깐 막으라고 서버팀한테 시켰다고 하더라고요.

 

옆에서 열심히 웹개발을 하는 친구들한테 항상 웹은 사람x끼가 하는거 아니라고 맨날 그랬었는데,

이런식으로 또 증명을 해내게 되네요.

 

여러분들도 웹해킹을 배워서 친구가 만든 서비스를 털어서 일거리를 늘려주도록해요.

ㅈㅅ

 

안그래도 저거 서버팀 일 많다고 하던데... 화이팅!

 

????: 웹은 사람x끼가 하는거 아니다.

????: 아니 내가 해킹을 한게 잘못이 아니라 취약점을 만든사람이 잘못한거라니깐?

 

 

+

저거가지고 메인페이지의 베너를 저걸로 바꿔버리려고 했지만,

API서버랑 메인페이지의 베너 이미지가 들어있는 서버가 다른서버였는지 안올라가지더라고요.

 

++

07001lab.tistory.com/entry/2020%EB%85%84-7%EC%9B%94-10%EC%9D%BC-%EC%98%A4%ED%9B%84-2%EC%8B%9C-57%EB%B6%84%EC%97%90-%EC%A0%80%EC%9E%A5%ED%95%9C-%EA%B8%80%EC%9E%85%EB%8B%88%EB%8B%A4

 

2020년 7월 10일 오후 2시 57분에 저장한 글입니다.

07001lab.tistory.com/entry/dodamb1ndcom-stored-xss dodam.b1nd.com / stored xss 몇달전에 학교에서 학생 관리 시스템을 만들어서 릴리즈를 했더라고요. 웹이더라고요???? 왠만한건 다 해킹 못하게 막아놨다고..

07001lab.tistory.com

 

댓글