{"action":"opened","issue":{"url":"https://api.github.com/repos/mpgn/CRIME-poc/issues/1","repository_url":"https://api.github.com/repos/mpgn/CRIME-poc","labels_url":"https://api.github.com/repos/mpgn/CRIME-poc/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/mpgn/CRIME-poc/issues/1/comments","events_url":"https://api.github.com/repos/mpgn/CRIME-poc/issues/1/events","html_url":"https://github.com/mpgn/CRIME-poc/issues/1","id":320896759,"number":1,"title":"Add C&C server (client <-> proxy)","user":{"login":"mpgn","id":5891788,"avatar_url":"https://avatars2.githubusercontent.com/u/5891788?v=4","gravatar_id":"","url":"https://api.github.com/users/mpgn","html_url":"https://github.com/mpgn","followers_url":"https://api.github.com/users/mpgn/followers","following_url":"https://api.github.com/users/mpgn/following{/other_user}","gists_url":"https://api.github.com/users/mpgn/gists{/gist_id}","starred_url":"https://api.github.com/users/mpgn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mpgn/subscriptions","organizations_url":"https://api.github.com/users/mpgn/orgs","repos_url":"https://api.github.com/users/mpgn/repos","events_url":"https://api.github.com/users/mpgn/events{/privacy}","received_events_url":"https://api.github.com/users/mpgn/received_events","type":"User","site_admin":false},"labels":[{"id":925605423,"url":"https://api.github.com/repos/mpgn/CRIME-poc/labels/exploit","name":"exploit","color":"4735ba","default":false}],"state":"open","locked":false,"assignee":{"login":"mpgn","id":5891788,"avatar_url":"https://avatars2.githubusercontent.com/u/5891788?v=4","gravatar_id":"","url":"https://api.github.com/users/mpgn","html_url":"https://github.com/mpgn","followers_url":"https://api.github.com/users/mpgn/followers","following_url":"https://api.github.com/users/mpgn/following{/other_user}","gists_url":"https://api.github.com/users/mpgn/gists{/gist_id}","starred_url":"https://api.github.com/users/mpgn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mpgn/subscriptions","organizations_url":"https://api.github.com/users/mpgn/orgs","repos_url":"https://api.github.com/users/mpgn/repos","events_url":"https://api.github.com/users/mpgn/events{/privacy}","received_events_url":"https://api.github.com/users/mpgn/received_events","type":"User","site_admin":false},"assignees":[{"login":"mpgn","id":5891788,"avatar_url":"https://avatars2.githubusercontent.com/u/5891788?v=4","gravatar_id":"","url":"https://api.github.com/users/mpgn","html_url":"https://github.com/mpgn","followers_url":"https://api.github.com/users/mpgn/followers","following_url":"https://api.github.com/users/mpgn/following{/other_user}","gists_url":"https://api.github.com/users/mpgn/gists{/gist_id}","starred_url":"https://api.github.com/users/mpgn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mpgn/subscriptions","organizations_url":"https://api.github.com/users/mpgn/orgs","repos_url":"https://api.github.com/users/mpgn/repos","events_url":"https://api.github.com/users/mpgn/events{/privacy}","received_events_url":"https://api.github.com/users/mpgn/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2018-05-07T17:57:35Z","updated_at":"2018-05-07T17:57:35Z","closed_at":null,"author_association":"OWNER","body":"Add a **C&C server** on the proxy side to send command to the client.\r\n\r\nThe command allow an attacker to know what byte is send and inform the client when a byte is found.\r\n\r\nUnless the [poodle exploit I already made](https://github.com/mpgn/poodle-poc) a C&C is mandatory. On the poodle poc, to inform the client of something, I sent an HMAC error to the response of the AJAX request by altering the last byte of the encrypted request. Therefore, the client knew something was discovered on the proxy side and he could to something else. (this technique was used to find the length of a block, yes it's very binary but it allow me to simplify the exploit maximally).\r\n\r\nHow it works ?\r\n\r\n1. On the client side :\r\n    - send byte to C&C\r\n    - send byte to the remote server\r\n\r\n2. On the C&C side :\r\n    - byte recieve\r\n    - check the length of the request from the proxy\r\n    - send response to the client (ok, nok)\r\n\r\n3. On the client side :\r\n    - receive response from the server\r\n    - receive response from the C&C\r\n    - regarding the response, add another byte or next byte\r\n\r\n💥🔥💀\r\n \r\n\r\n\r\n\r\n"}}
{"actor":{"display_login":"mpgn"}}