본문 바로가기

 

발단

갑자기 해시끼리 비교를 어떻게 하냐고 묻더라고요.
당연한걸 묻길래 당연하게 대답을 해줬더니
salt가 랜덤이래요.
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

MITM 막는다고 저런다는데
저러면 확실하게 평문이 뭔지 숨길수 있어요.
근데 서버도 평문이 뭔지 모른다는거에요.

doNotDoThis.js
0.00MB

코드에요.
평문끼리 비교
클라 평문 - 서버 해시
클라 해시 - 서버 평문
클라 해시 - 서버 해시
클라 해시(고정 소금) - 서버 해시(고정 소금)
클라 해시(랜덤 소금) - 서버 해시(랜덤 소금)
순이에요.
결과는 다들 알겠죠?

주작 없이 마지막줄 true 띄우고 디스코드 dm으로 인증하면 커피 사드려요.

MITM 당하는게 싫다면 HTTPS를 쓰거나
난독화로 꼬아서 'ㅅㅂ 이게뭐야' 소리가 나오게 하거나
보안장비를 사서 달면 되겠죠?

???? : 난 이렇게 안짜는데요?
아님 말고요.

+
시나리오가 어떻게 되냐면

1. 가입할때 랜덤소금으로 해싱해서 DB에 박힘
2. 클라에서 랜덤솔트로 해싱해서 전송
3. 서버에서 랜덤솔트 / 랜덤솔트 비교해서 로그인 시도
4. 로그인 실패

a. 랜덤솔트로 해싱되서 전송되는 정보를 중간에서 탈취
b. 해시크랙 해서 평문 확보
c. 서버의 DB에 박혀있는 해시의 소금이 뭔지 알아야 로그인을 하지 싯팔

인거에요.

'연구글 > ????' 카테고리의 다른 글

RegexAmateur  (2) 2021.12.28
최박사가 설명하는 해킹 입문하는법  (0) 2021.12.27
코드 이렇게 짜지 마세요 - 1  (0) 2020.11.17
wargame.kr 19 / ip log table / (실패)  (0) 2020.11.05
SQL Injection 필터 우회 정리글  (0) 2020.08.25
댓글