@@ -21,9 +21,9 @@ def initialize(info = {})
2121 'SSD Secure Disclosure' # Discovery and PoC
2222 ] ,
2323 'References' => [
24- [ 'URL' , 'https://ssd-disclosure.com/ssd-advisory-samsung-magicinfo-unauthenticated-rce/' ] ,
25- [ 'URL' , 'https://security.samsungtv.com/securityUpdates' ] ,
26- [ 'CVE' , '2024-7399' ] # SVE-2024-50018
24+ [ 'URL' , 'https://ssd-disclosure.com/ssd-advisory-samsung-magicinfo-unauthenticated-rce/' ] ,
25+ [ 'URL' , 'https://security.samsungtv.com/securityUpdates' ] ,
26+ [ 'CVE' , '2024-7399' ] # SVE-2024-50018
2727 ] ,
2828 'DisclosureDate' => '2025-04-30' ,
2929 'DefaultOptions' => {
@@ -41,6 +41,7 @@ def initialize(info = {})
4141 ]
4242 ] ,
4343 'DefaultTarget' => 0 ,
44+ 'Privileged' => true ,
4445 'Notes' => {
4546 'Stability' => [ CRASH_SAFE ] ,
4647 'Reliability' => [ REPEATABLE_SESSION ] ,
@@ -67,7 +68,7 @@ def check
6768
6869 js_object = res . body . to_s [ /window\. globalConfig = (\{ .+\} )/m , 1 ]
6970
70- fail_with ( Failure :: UnexpectedReply , 'Could not extract globalConfig object from response.' ) unless js_object
71+ return CheckCode :: Safe ( 'Could not extract globalConfig object from response.' ) unless js_object
7172
7273 json_b = js_object . gsub ( /'/ , '"' ) # replace ' with " so that we can use JSON.parse on the response body
7374 data = JSON . parse ( json_b )
0 commit comments