Authentication and Authorization - JWT
Authentication 로그인과 같이 사용자 또는 프로세스의 신원을 확인하는 프로세스 가장 일반적인 인증 방법으로는 비밀번호가 있고 API 인증, 생체 인증 등이 있습니다. 지식기반(비밀번호, 주민번호 등), 소유기반(인증서, OTP, 휴대폰 인증, USB 토큰 인증 등), 속성기반(지문, 홍체, 얼굴 등) factor가 있습니다. ...
Authentication 로그인과 같이 사용자 또는 프로세스의 신원을 확인하는 프로세스 가장 일반적인 인증 방법으로는 비밀번호가 있고 API 인증, 생체 인증 등이 있습니다. 지식기반(비밀번호, 주민번호 등), 소유기반(인증서, OTP, 휴대폰 인증, USB 토큰 인증 등), 속성기반(지문, 홍체, 얼굴 등) factor가 있습니다. ...
The Cross-Site Scripting Attack Attacker가 victim’s browser에 code를 inject시키면 공격을 할 수 있는데 victim이 attacker의 page에 접속할때마다 그 공격이 이루어질 수 있는 것이다. 하지만 sandbox protection 때문에 그 공격이 이루어지지 않는다. 하지만 targ...
Understanding Data Serialization Formats: XML, JSON, and YAML Explained In the world of software development and data interchange, choosing the right data format is crucial. This post explores thr...
Introduction Victim이 malicious page를 보고 있을 때 공격자가 target website에 victim 신분으로 forged request를 보낼 수 있는 공격법이다. Target website가 적절한 countermeasure가 없다면 third-party에 의해 들어온 request인지 authentic on...
Index checks /robots.txt /sitemap.xml /crossdomain.xml /clientaccesspolicy.xml /.well-known/ Check also comments in the main and secondary pages. 300 Error 301 Moved Permanently ...
Introduction Race condition vulnerability의 일종이며 Linux기반의 모든 OS에 영향을 주는 취약점이다. 공격자는 읽기 모드라도 모든 protected file을 수정할 수 있게 된다. /etc/password file을 수정하여 root 계정을 만들어 버리면 root 권한을 탈취하게 된다. Memor...
Introduction Race condition problem이란 when two concurrent threads of execution access a shared resource in a way that unintentionally produces different results depending on the sequence or timi...
Differences Between Cookies and Sessions Cookies Cookies are small pieces of data stored in the client’s local storage in key-value pairs. They are primarily used in web applications to identify u...
Introduction Stack은 주로 data가 담기는 곳이기 때문에 거기서 코드를 실행 시킬 필요는 없다. 그렇기 때문에 x86과 같은 컴퓨터 구조나 gcc에서 non-executable stack을 구현하여 stack에서 코드가 실행되지 않도록 해준다. 해커는 자신이 실행시키고 싶은 코드가 꼭 stack에 없어도 되고 이미 메모리상에...
전자서명 방식 보내는 사람이 메시지를 자신의 private key로 해시한 digest를 message와 함께 보낸다. (message + H(message + key)) 받는 사람은 signature(H(message + key))를 보낸 사람의 public key로 decrypt하고 그것을 받은 message의 해시값과 비교한다. 두개...