-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathhttp_server.py
executable file
·35 lines (24 loc) · 954 Bytes
/
http_server.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import http.server
import environment # noqa
env = environment.sql_env.SQLEnv()
class WebServerHandler(http.server.BaseHTTPRequestHandler):
def __init__(self, request, client_address, server):
super().__init__(request, client_address, server)
def do_GET(self):
query = self.path.split("/?id=", 1)[1]
obs, reward, done, infos = env.step(query)
if done:
env.reset()
self.send_response(200)
self.send_header('Content-type', 'text/html')
self.end_headers()
output = obs
self.wfile.write(output._text_to_token_idx())
# self.send_error(404, 'File Not Found: %s' % self.path)
def main():
server_address = ('', 8000)
httpd = http.server.HTTPServer(server_address, WebServerHandler)
httpd.serve_forever()
if __name__ == "__main__":
print('run python ~/sqlmap-dev/sqlmap.py --technique=U -u "localhost:8000/?id=123" --dump')
main()