Some sources says that the web browser generates the session key. Now if the web browser generates it then its vulnerable for replay attacks.
Also some sources says that the server generates a part of it and the rest the client generates. How does HTTPS generate session keys?