mirror of
https://github.com/sqlmapproject/sqlmap.git
synced 2026-01-29 19:55:48 +03:00
Removing some deprecated components
This commit is contained in:
parent
72fcb66fe8
commit
1a97d9e296
|
|
@ -1,151 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
|
|
||||||
<!-- https://angrytools.com/bootstrap/editor/ -->
|
|
||||||
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<title>DEMO</title>
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet">
|
|
||||||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap-theme.min.css" rel="stylesheet">
|
|
||||||
|
|
||||||
<!--[if lt IE 9]><script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script><script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script><![endif]-->
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<style>
|
|
||||||
#wrapper { width: 100%; }
|
|
||||||
|
|
||||||
#page-wrapper {
|
|
||||||
padding: 0 15px;
|
|
||||||
min-height: 568px;
|
|
||||||
background-color: #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media(min-width:768px) {
|
|
||||||
#page-wrapper {
|
|
||||||
position: inherit;
|
|
||||||
margin: 0 0 0 250px;
|
|
||||||
padding: 0 30px;
|
|
||||||
border-left: 1px solid #e7e7e7;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.sidebar .sidebar-nav.navbar-collapse { padding-right: 0; padding-left: 0; }
|
|
||||||
.sidebar .sidebar-search { padding: 15px; }
|
|
||||||
.sidebar ul li { border-bottom: 1px solid #e7e7e7; }
|
|
||||||
|
|
||||||
.sidebar ul li a.active { background-color: #eee; }
|
|
||||||
|
|
||||||
.sidebar .arrow { float: right;}
|
|
||||||
.sidebar .fa.arrow:before { content: "f104";}
|
|
||||||
.sidebar .active>a>.fa.arrow:before { content: "f107"; }
|
|
||||||
.sidebar .nav-second-level li,
|
|
||||||
.sidebar .nav-third-level li {
|
|
||||||
border-bottom: 0!important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sidebar .nav-second-level li a { padding-left: 37px; }
|
|
||||||
.sidebar .nav-third-level li a { padding-left: 52px; }
|
|
||||||
|
|
||||||
@media(min-width:768px) {
|
|
||||||
.sidebar {
|
|
||||||
z-index: 1;
|
|
||||||
position: absolute;
|
|
||||||
width: 250px;
|
|
||||||
margin-top: 51px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<div id="wrapper">
|
|
||||||
|
|
||||||
<nav class="navbar navbar-default navbar-static-top" role="navigation" style="margin-bottom: 0">
|
|
||||||
<div class="navbar-header">
|
|
||||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
|
||||||
<span class="sr-only">Toggle navigation</span>
|
|
||||||
<span class="icon-bar"></span>
|
|
||||||
<span class="icon-bar"></span>
|
|
||||||
<span class="icon-bar"></span>
|
|
||||||
</button>
|
|
||||||
<a class="navbar-brand" href="index.html">sqlmap</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="navbar-default sidebar" role="navigation">
|
|
||||||
<div class="sidebar-nav navbar-collapse">
|
|
||||||
<ul class="nav" id="side-menu">
|
|
||||||
<li>
|
|
||||||
<a href="#"><em class="glyphicon glyphicon-home"></em> Options<span class="arrow"></span></a>
|
|
||||||
<ul class="nav nav-second-level">
|
|
||||||
<li><a>Target</a></li>
|
|
||||||
<li><a>Request</a></li>
|
|
||||||
<li><a>Optimization</a></li>
|
|
||||||
<li><a>Injection</a></li>
|
|
||||||
<li><a>Detection</a></li>
|
|
||||||
<li><a>Techniques</a></li>
|
|
||||||
<li><a>Fingerprint</a></li>
|
|
||||||
<li><a>Enumeration</a></li>
|
|
||||||
<li><a>Brute force</a></li>
|
|
||||||
<li><a>User-defined function injection</a></li>
|
|
||||||
<li><a>File system access</a></li>
|
|
||||||
<li><a>Operating system access</a></li>
|
|
||||||
<li><a>Windows registry access</a></li>
|
|
||||||
<li><a>General</a></li>
|
|
||||||
<li><a>Miscellaneous</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
<div id="page-wrapper">
|
|
||||||
<div class="row">
|
|
||||||
<h4>DEMO</h4>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<script>
|
|
||||||
/*
|
|
||||||
* metismenu - v1.0.3
|
|
||||||
* Easy menu jQuery plugin for Twitter Bootstrap 3
|
|
||||||
* https://github.com/onokumus/metisMenu
|
|
||||||
*
|
|
||||||
* Made by Osman Nuri Okumuş
|
|
||||||
* Under MIT License
|
|
||||||
*/
|
|
||||||
!function(a,b,c){function d(b,c){this.element=b,this.settings=a.extend({},f,c),this._defaults=f,this._name=e,this.init()}var e="metisMenu",f={toggle:!0};d.prototype={init:function(){var b=a(this.element),c=this.settings.toggle;this.isIE()<=9?(b.find("li.active").has("ul").children("ul").collapse("show"),b.find("li").not(".active").has("ul").children("ul").collapse("hide")):(b.find("li.active").has("ul").children("ul").addClass("collapse in"),b.find("li").not(".active").has("ul").children("ul").addClass("collapse")),b.find("li").has("ul").children("a").on("click",function(b){b.preventDefault(),a(this).parent("li").toggleClass("active").children("ul").collapse("toggle"),c&&a(this).parent("li").siblings().removeClass("active").children("ul.in").collapse("hide")})},isIE:function(){for(var a,b=3,d=c.createElement("div"),e=d.getElementsByTagName("i");d.innerHTML="<!--[if gt IE "+ ++b+"]><i></i><![endif]-->",e[0];)return b>4?b:a}},a.fn[e]=function(b){return this.each(function(){a.data(this,"plugin_"+e)||a.data(this,"plugin_"+e,new d(this,b))})}}(jQuery,window,document);
|
|
||||||
|
|
||||||
$(function() {
|
|
||||||
|
|
||||||
$('#side-menu').metisMenu();
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
//Loads the correct sidebar on window load,
|
|
||||||
//collapses the sidebar on window resize.
|
|
||||||
// Sets the min-height of #page-wrapper to window size
|
|
||||||
$(function() {
|
|
||||||
$(window).bind("load resize", function() {
|
|
||||||
topOffset = 50;
|
|
||||||
width = (this.window.innerWidth > 0) ? this.window.innerWidth : this.screen.width;
|
|
||||||
if (width < 768) {
|
|
||||||
$('div.navbar-collapse').addClass('collapse')
|
|
||||||
topOffset = 100; // 2-row-menu
|
|
||||||
} else {
|
|
||||||
$('div.navbar-collapse').removeClass('collapse')
|
|
||||||
}
|
|
||||||
|
|
||||||
height = (this.window.innerHeight > 0) ? this.window.innerHeight : this.screen.height;
|
|
||||||
height = height - topOffset;
|
|
||||||
if (height < 1) height = 1;
|
|
||||||
if (height > topOffset) {
|
|
||||||
$("#page-wrapper").css("min-height", (height) + "px");
|
|
||||||
}
|
|
||||||
})
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
|
|
||||||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.0/js/bootstrap.min.js"></script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
@ -1,4 +1,3 @@
|
||||||
39a8a35d730f49daf657fa58903a9cd309813b275df29a86439297a10a15261a data/html/index.html
|
|
||||||
e70317eb90f7d649e4320e59b2791b8eb5810c8cad8bc0c49d917eac966b0f18 data/procs/mssqlserver/activate_sp_oacreate.sql
|
e70317eb90f7d649e4320e59b2791b8eb5810c8cad8bc0c49d917eac966b0f18 data/procs/mssqlserver/activate_sp_oacreate.sql
|
||||||
6a2de9f090c06bd77824e15ac01d2dc11637290cf9a5d60c00bf5f42ac6f7120 data/procs/mssqlserver/configure_openrowset.sql
|
6a2de9f090c06bd77824e15ac01d2dc11637290cf9a5d60c00bf5f42ac6f7120 data/procs/mssqlserver/configure_openrowset.sql
|
||||||
798f74471b19be1e6b1688846631b2e397c1a923ad8eca923c1ac93fc94739ad data/procs/mssqlserver/configure_xp_cmdshell.sql
|
798f74471b19be1e6b1688846631b2e397c1a923ad8eca923c1ac93fc94739ad data/procs/mssqlserver/configure_xp_cmdshell.sql
|
||||||
|
|
@ -189,7 +188,7 @@ a033f92d136c707a25927c2383125ddb004d4283db62c004dcd67c3fc242bb1c lib/core/dump.
|
||||||
48797d6c34dd9bb8a53f7f3794c85f4288d82a9a1d6be7fcf317d388cb20d4b3 lib/core/replication.py
|
48797d6c34dd9bb8a53f7f3794c85f4288d82a9a1d6be7fcf317d388cb20d4b3 lib/core/replication.py
|
||||||
0b8c38a01bb01f843d94a6c5f2075ee47520d0c4aa799cecea9c3e2c5a4a23a6 lib/core/revision.py
|
0b8c38a01bb01f843d94a6c5f2075ee47520d0c4aa799cecea9c3e2c5a4a23a6 lib/core/revision.py
|
||||||
888daba83fd4a34e9503fe21f01fef4cc730e5cde871b1d40e15d4cbc847d56c lib/core/session.py
|
888daba83fd4a34e9503fe21f01fef4cc730e5cde871b1d40e15d4cbc847d56c lib/core/session.py
|
||||||
d6577e20ed58d058dcde4341010e3ea26240cc959185ce9471eda0fab17a21cf lib/core/settings.py
|
2259cd254a49009d258ba1aee0e6b3e07792264992cac11779767ef89915b59e lib/core/settings.py
|
||||||
cd5a66deee8963ba8e7e9af3dd36eb5e8127d4d68698811c29e789655f507f82 lib/core/shell.py
|
cd5a66deee8963ba8e7e9af3dd36eb5e8127d4d68698811c29e789655f507f82 lib/core/shell.py
|
||||||
bcb5d8090d5e3e0ef2a586ba09ba80eef0c6d51feb0f611ed25299fbb254f725 lib/core/subprocessng.py
|
bcb5d8090d5e3e0ef2a586ba09ba80eef0c6d51feb0f611ed25299fbb254f725 lib/core/subprocessng.py
|
||||||
d35650179816193164a5f177102f18379dfbe6bb6d40fbb67b78d907b41c8038 lib/core/target.py
|
d35650179816193164a5f177102f18379dfbe6bb6d40fbb67b78d907b41c8038 lib/core/target.py
|
||||||
|
|
@ -251,7 +250,6 @@ a94958be0ec3e9d28d8171813a6a90655a9ad7e6aa33c661e8d8ebbfcf208dbb lib/utils/deps
|
||||||
366e6fd5356fae7e3f2467c070d064b6695be80b50f1530ea3c01e86569b58b2 lib/utils/har.py
|
366e6fd5356fae7e3f2467c070d064b6695be80b50f1530ea3c01e86569b58b2 lib/utils/har.py
|
||||||
ca82ddc36d660c479bb47201182f47411b1f75a847a556229987f2d005fc5832 lib/utils/hashdb.py
|
ca82ddc36d660c479bb47201182f47411b1f75a847a556229987f2d005fc5832 lib/utils/hashdb.py
|
||||||
84bf572a9e7915e91dbffea996e1a7b749392725f1ad7f412d0ff48c636a2896 lib/utils/hash.py
|
84bf572a9e7915e91dbffea996e1a7b749392725f1ad7f412d0ff48c636a2896 lib/utils/hash.py
|
||||||
dc68b7fdb2ae0e958f2a553984a94a06832d216a3209f632ad9ff53f17554524 lib/utils/httpd.py
|
|
||||||
1966ca704961fb987ab757f0a4afddbf841d1a880631b701487c75cef63d60c3 lib/utils/__init__.py
|
1966ca704961fb987ab757f0a4afddbf841d1a880631b701487c75cef63d60c3 lib/utils/__init__.py
|
||||||
22ba65391b0a73b1925e5becf8ddab6ba73a196d86e351a2263509aad6676bd7 lib/utils/pivotdumptable.py
|
22ba65391b0a73b1925e5becf8ddab6ba73a196d86e351a2263509aad6676bd7 lib/utils/pivotdumptable.py
|
||||||
c1dfc3bed0fed9b181f612d1d747955dd2b506dbe99bc9fd481495602371473a lib/utils/progress.py
|
c1dfc3bed0fed9b181f612d1d747955dd2b506dbe99bc9fd481495602371473a lib/utils/progress.py
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ from lib.core.enums import OS
|
||||||
from thirdparty import six
|
from thirdparty import six
|
||||||
|
|
||||||
# sqlmap version (<major>.<minor>.<month>.<monthly commit>)
|
# sqlmap version (<major>.<minor>.<month>.<monthly commit>)
|
||||||
VERSION = "1.10.1.60"
|
VERSION = "1.10.1.61"
|
||||||
TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable"
|
TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable"
|
||||||
TYPE_COLORS = {"dev": 33, "stable": 90, "pip": 34}
|
TYPE_COLORS = {"dev": 33, "stable": 90, "pip": 34}
|
||||||
VERSION_STRING = "sqlmap/%s#%s" % ('.'.join(VERSION.split('.')[:-1]) if VERSION.count('.') > 2 and VERSION.split('.')[-1] == '0' else VERSION, TYPE)
|
VERSION_STRING = "sqlmap/%s#%s" % ('.'.join(VERSION.split('.')[:-1]) if VERSION.count('.') > 2 and VERSION.split('.')[-1] == '0' else VERSION, TYPE)
|
||||||
|
|
|
||||||
|
|
@ -1,141 +0,0 @@
|
||||||
#!/usr/bin/env python
|
|
||||||
|
|
||||||
"""
|
|
||||||
Copyright (c) 2006-2026 sqlmap developers (https://sqlmap.org)
|
|
||||||
See the file 'LICENSE' for copying permission
|
|
||||||
"""
|
|
||||||
|
|
||||||
from __future__ import print_function
|
|
||||||
|
|
||||||
import mimetypes
|
|
||||||
import gzip
|
|
||||||
import os
|
|
||||||
import re
|
|
||||||
import sys
|
|
||||||
import threading
|
|
||||||
import time
|
|
||||||
import traceback
|
|
||||||
|
|
||||||
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "..")))
|
|
||||||
|
|
||||||
from lib.core.enums import HTTP_HEADER
|
|
||||||
from lib.core.settings import UNICODE_ENCODING
|
|
||||||
from lib.core.settings import VERSION_STRING
|
|
||||||
from thirdparty import six
|
|
||||||
from thirdparty.six.moves import BaseHTTPServer as _BaseHTTPServer
|
|
||||||
from thirdparty.six.moves import http_client as _http_client
|
|
||||||
from thirdparty.six.moves import socketserver as _socketserver
|
|
||||||
from thirdparty.six.moves import urllib as _urllib
|
|
||||||
|
|
||||||
HTTP_ADDRESS = "0.0.0.0"
|
|
||||||
HTTP_PORT = 8951
|
|
||||||
DEBUG = True
|
|
||||||
HTML_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "..", "data", "html"))
|
|
||||||
DISABLED_CONTENT_EXTENSIONS = (".py", ".pyc", ".md", ".txt", ".bak", ".conf", ".zip", "~")
|
|
||||||
|
|
||||||
class ThreadingServer(_socketserver.ThreadingMixIn, _BaseHTTPServer.HTTPServer):
|
|
||||||
def finish_request(self, *args, **kwargs):
|
|
||||||
try:
|
|
||||||
_BaseHTTPServer.HTTPServer.finish_request(self, *args, **kwargs)
|
|
||||||
except Exception:
|
|
||||||
if DEBUG:
|
|
||||||
traceback.print_exc()
|
|
||||||
|
|
||||||
class ReqHandler(_BaseHTTPServer.BaseHTTPRequestHandler):
|
|
||||||
def do_GET(self):
|
|
||||||
path, query = self.path.split('?', 1) if '?' in self.path else (self.path, "")
|
|
||||||
params = {}
|
|
||||||
content = None
|
|
||||||
|
|
||||||
if query:
|
|
||||||
params.update(_urllib.parse.parse_qs(query))
|
|
||||||
|
|
||||||
for key in params:
|
|
||||||
if params[key]:
|
|
||||||
params[key] = params[key][-1]
|
|
||||||
|
|
||||||
self.url, self.params = path, params
|
|
||||||
|
|
||||||
if path == '/':
|
|
||||||
path = "index.html"
|
|
||||||
|
|
||||||
path = path.strip('/')
|
|
||||||
|
|
||||||
path = path.replace('/', os.path.sep)
|
|
||||||
path = os.path.abspath(os.path.join(HTML_DIR, path)).strip()
|
|
||||||
|
|
||||||
if not os.path.isfile(path) and os.path.isfile("%s.html" % path):
|
|
||||||
path = "%s.html" % path
|
|
||||||
|
|
||||||
if ".." not in os.path.relpath(path, HTML_DIR) and os.path.isfile(path) and not path.endswith(DISABLED_CONTENT_EXTENSIONS):
|
|
||||||
content = open(path, "rb").read()
|
|
||||||
self.send_response(_http_client.OK)
|
|
||||||
self.send_header(HTTP_HEADER.CONNECTION, "close")
|
|
||||||
self.send_header(HTTP_HEADER.CONTENT_TYPE, mimetypes.guess_type(path)[0] or "application/octet-stream")
|
|
||||||
else:
|
|
||||||
content = ("<!DOCTYPE html><html lang=\"en\"><head><title>404 Not Found</title></head><body><h1>Not Found</h1><p>The requested URL %s was not found on this server.</p></body></html>" % self.path.split('?')[0]).encode(UNICODE_ENCODING)
|
|
||||||
self.send_response(_http_client.NOT_FOUND)
|
|
||||||
self.send_header(HTTP_HEADER.CONNECTION, "close")
|
|
||||||
|
|
||||||
if content is not None:
|
|
||||||
for match in re.finditer(b"<!(\\w+)!>", content):
|
|
||||||
name = match.group(1)
|
|
||||||
_ = getattr(self, "_%s" % name.lower(), None)
|
|
||||||
if _:
|
|
||||||
content = self._format(content, **{name: _()})
|
|
||||||
|
|
||||||
if "gzip" in self.headers.get(HTTP_HEADER.ACCEPT_ENCODING):
|
|
||||||
self.send_header(HTTP_HEADER.CONTENT_ENCODING, "gzip")
|
|
||||||
_ = six.BytesIO()
|
|
||||||
compress = gzip.GzipFile("", "w+b", 9, _)
|
|
||||||
compress._stream = _
|
|
||||||
compress.write(content)
|
|
||||||
compress.flush()
|
|
||||||
compress.close()
|
|
||||||
content = compress._stream.getvalue()
|
|
||||||
|
|
||||||
self.send_header(HTTP_HEADER.CONTENT_LENGTH, str(len(content)))
|
|
||||||
|
|
||||||
self.end_headers()
|
|
||||||
|
|
||||||
if content:
|
|
||||||
self.wfile.write(content)
|
|
||||||
|
|
||||||
self.wfile.flush()
|
|
||||||
|
|
||||||
def _format(self, content, **params):
|
|
||||||
if content:
|
|
||||||
for key, value in params.items():
|
|
||||||
content = content.replace("<!%s!>" % key, value)
|
|
||||||
|
|
||||||
return content
|
|
||||||
|
|
||||||
def version_string(self):
|
|
||||||
return VERSION_STRING
|
|
||||||
|
|
||||||
def log_message(self, format, *args):
|
|
||||||
return
|
|
||||||
|
|
||||||
def finish(self):
|
|
||||||
try:
|
|
||||||
_BaseHTTPServer.BaseHTTPRequestHandler.finish(self)
|
|
||||||
except Exception:
|
|
||||||
if DEBUG:
|
|
||||||
traceback.print_exc()
|
|
||||||
|
|
||||||
def start_httpd():
|
|
||||||
server = ThreadingServer((HTTP_ADDRESS, HTTP_PORT), ReqHandler)
|
|
||||||
thread = threading.Thread(target=server.serve_forever)
|
|
||||||
thread.daemon = True
|
|
||||||
thread.start()
|
|
||||||
|
|
||||||
print("[i] running HTTP server at '%s:%d'" % (HTTP_ADDRESS, HTTP_PORT))
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
try:
|
|
||||||
start_httpd()
|
|
||||||
|
|
||||||
while True:
|
|
||||||
time.sleep(1)
|
|
||||||
except KeyboardInterrupt:
|
|
||||||
pass
|
|
||||||
Loading…
Reference in New Issue
Block a user