{"action":"created","issue":{"url":"https://api.github.com/repos/rapid7/metasploit-framework/issues/4992","labels_url":"https://api.github.com/repos/rapid7/metasploit-framework/issues/4992/labels{/name}","comments_url":"https://api.github.com/repos/rapid7/metasploit-framework/issues/4992/comments","events_url":"https://api.github.com/repos/rapid7/metasploit-framework/issues/4992/events","html_url":"https://github.com/rapid7/metasploit-framework/pull/4992","id":63906936,"number":4992,"title":"Support multiple ActiveX controls for BrowserExploitServer","user":{"login":"wchen-r7","id":1170914,"avatar_url":"https://avatars.githubusercontent.com/u/1170914?v=3","gravatar_id":"","url":"https://api.github.com/users/wchen-r7","html_url":"https://github.com/wchen-r7","followers_url":"https://api.github.com/users/wchen-r7/followers","following_url":"https://api.github.com/users/wchen-r7/following{/other_user}","gists_url":"https://api.github.com/users/wchen-r7/gists{/gist_id}","starred_url":"https://api.github.com/users/wchen-r7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wchen-r7/subscriptions","organizations_url":"https://api.github.com/users/wchen-r7/orgs","repos_url":"https://api.github.com/users/wchen-r7/repos","events_url":"https://api.github.com/users/wchen-r7/events{/privacy}","received_events_url":"https://api.github.com/users/wchen-r7/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rapid7/metasploit-framework/labels/feature","name":"feature","color":"bfe5bf"},{"url":"https://api.github.com/repos/rapid7/metasploit-framework/labels/library","name":"library","color":"fad8c7"},{"url":"https://api.github.com/repos/rapid7/metasploit-framework/labels/module","name":"module","color":"eb6420"},{"url":"https://api.github.com/repos/rapid7/metasploit-framework/labels/tests","name":"tests","color":"009800"}],"state":"closed","locked":false,"assignee":{"login":"jvazquez-r7","id":1742838,"avatar_url":"https://avatars.githubusercontent.com/u/1742838?v=3","gravatar_id":"","url":"https://api.github.com/users/jvazquez-r7","html_url":"https://github.com/jvazquez-r7","followers_url":"https://api.github.com/users/jvazquez-r7/followers","following_url":"https://api.github.com/users/jvazquez-r7/following{/other_user}","gists_url":"https://api.github.com/users/jvazquez-r7/gists{/gist_id}","starred_url":"https://api.github.com/users/jvazquez-r7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvazquez-r7/subscriptions","organizations_url":"https://api.github.com/users/jvazquez-r7/orgs","repos_url":"https://api.github.com/users/jvazquez-r7/repos","events_url":"https://api.github.com/users/jvazquez-r7/events{/privacy}","received_events_url":"https://api.github.com/users/jvazquez-r7/received_events","type":"User","site_admin":false},"milestone":null,"comments":3,"created_at":"2015-03-24T05:24:03Z","updated_at":"2015-03-25T18:31:56Z","closed_at":"2015-03-25T18:31:36Z","pull_request":{"url":"https://api.github.com/repos/rapid7/metasploit-framework/pulls/4992","html_url":"https://github.com/rapid7/metasploit-framework/pull/4992","diff_url":"https://github.com/rapid7/metasploit-framework/pull/4992.diff","patch_url":"https://github.com/rapid7/metasploit-framework/pull/4992.patch"},"body":"Currently Metasploit's BrowserExploitServer cannot check multiple ActiveX controls, this patch addresses that.\r\n\r\n## The new ActiveX requirement format\r\n\r\nWhen you write a browser exploit that needs to specify an activex, this is how:\r\n\r\n```\r\n          :activex => [\r\n            {\r\n              :clsid => '{D27CDB6E-AE6D-11cf-96B8-444553540000}',\r\n              :method => 'LoadMovie'\r\n            }\r\n          ]\r\n```\r\n\r\nEach hash should contain a :clsid and :method. If you need to check multiple ActiveX controls, then you have multiple hashes.\r\n\r\nA code example is this:\r\nhttps://gist.github.com/wchen-r7/c01e18127b39b476811d\r\n\r\n## To test\r\n\r\nOne of the easiest way to test is to find existing browser exploits that need BES to check ActiveX, we have the following:\r\n\r\nadobe_flash_avm2.rb\r\nadobe_flash_filters_type_confusion.rb\r\nadobe_flash_pcre.rb\r\nadobe_flash_regex_value.rb\r\nadvantech_webaccess_dvs_getcolor.rb\r\naladdin_choosefilepath_bof.rb\r\nms13_090_cardspacesigninhelper.rb\r\nx360_video_player_set_text_bof.rb\r\n\r\nFor this PR, I am going to pick x360_video_player_set_text_bof.rb, but feel free to choose your own.\r\n\r\n- [x] You can follow the test steps for x360_video_player_set_text_bof.rb here: #4726. If you are having trouble finding IE10 (like I did before), here's a link for you: http://download.microsoft.com/download/8/A/C/8AC7C482-BC74-492E-B978-7ED04900CEDE/IE10-Windows6.1-x86-en-us.exe\r\n\r\n@jvazquez-r7 Can I assign this to you?"},"comment":{"url":"https://api.github.com/repos/rapid7/metasploit-framework/issues/comments/86161796","html_url":"https://github.com/rapid7/metasploit-framework/pull/4992#issuecomment-86161796","issue_url":"https://api.github.com/repos/rapid7/metasploit-framework/issues/4992","id":86161796,"user":{"login":"jlee-r7","id":1173675,"avatar_url":"https://avatars.githubusercontent.com/u/1173675?v=3","gravatar_id":"","url":"https://api.github.com/users/jlee-r7","html_url":"https://github.com/jlee-r7","followers_url":"https://api.github.com/users/jlee-r7/followers","following_url":"https://api.github.com/users/jlee-r7/following{/other_user}","gists_url":"https://api.github.com/users/jlee-r7/gists{/gist_id}","starred_url":"https://api.github.com/users/jlee-r7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jlee-r7/subscriptions","organizations_url":"https://api.github.com/users/jlee-r7/orgs","repos_url":"https://api.github.com/users/jlee-r7/repos","events_url":"https://api.github.com/users/jlee-r7/events{/privacy}","received_events_url":"https://api.github.com/users/jlee-r7/received_events","type":"User","site_admin":false},"created_at":"2015-03-25T18:31:56Z","updated_at":"2015-03-25T18:31:56Z","body":"New code should use the 1.9+ hash syntax, in my opinion:\r\n```ruby\r\n          activex: [\r\n            {\r\n              clsid: '{D27CDB6E-AE6D-11cf-96B8-444553540000}',\r\n              method: 'LoadMovie',\r\n            }\r\n          ]\r\n```"}}