Dreamhack-web (2) 썸네일형 리스트형 CSRF CSRF (Cross Site Request Forgery) 임의 이용자의 권한으로 임의 주소에 HTTP 요청을 보낼 수 있는 취약점 공격자는 임의 이용자의 권한으로 서비스 기능을 사용해 이득을 취할 수 있음 @app.route('/sendmoney') def sendmoney(name): to_user = request.args.get('to') amount = int(request.args.get('amount')) success_status = send_money(to_user, amount) if success_status: return "success" else: return "fail" 이 코드는 CSRF 취약점이 존재하는 코드 코드에서 예금주와 금액을 입력받고 바로 송금을 수행하는 코드로 비.. Cookie & Session 더보기 웹 서버는 수많은 클라이언트를 어떻게 구별하고 서로 다른 결과를 반환할까? HTTP프로토콜로 웹 서버와 통신할 때에는 웹 서버에 명령을 내리기 위해 GET, POST와 같은 메소드와 자원의 위치를 가리키는 URL등이 포함됨 헤더(Header)를 통해서 웹 서버에게 요청을 보내고, 웹 서버는 헤더를 읽고 클라이언트에게 결과 값을 반환 Cookie 🍪 클라이언트의 IP주소와 User-Agent는 매번 변경될 수 있음 HTTP 프로토콜의 Connectionless와 Stateless 특징 때문에 웹 서버는 클라이언트를 기억할 수 없음 이 특징을 갖는 HTTP에서 상태를 유지하기 위해 쿠키(Cookie)가 탄생함 Connectionless와 Stateless가 뭘까? Connectionless : 통신 .. 이전 1 다음