Skip to content

Commit 760fac5

Browse files
committed
Minor patch of max connection total size
1 parent 15c65d0 commit 760fac5

File tree

3 files changed

+10
-9
lines changed

3 files changed

+10
-9
lines changed

data/txt/sha256sums.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,7 @@ fb0a08ac6f8bb07711e4e895eebf9fb3c8d452cc7aaebcdf78d926cdf051550d lib/core/patch
189189
73ef0895d728fe76bf9abda94d4b97951069532a088d603a064e793bb2ae45d9 lib/core/replication.py
190190
3574639db4942d16a2dc0a2f04bb7c0913c40c3862b54d34c44075a760e0c194 lib/core/revision.py
191191
888daba83fd4a34e9503fe21f01fef4cc730e5cde871b1d40e15d4cbc847d56c lib/core/session.py
192-
e9cdbf4991b1f19fb367133c85ea8fe6c189ac03b9db516fa58de9c5e41376fe lib/core/settings.py
192+
b38f42c65a2cdb32bb82234dc48b041c054a0291ce6b51ade0cf19da72b6f6ff lib/core/settings.py
193193
cd5a66deee8963ba8e7e9af3dd36eb5e8127d4d68698811c29e789655f507f82 lib/core/shell.py
194194
00dc9e87db2c13d7eaf18edd503267430460d91baf76760350be545d4a387a9f lib/core/subprocessng.py
195195
d35650179816193164a5f177102f18379dfbe6bb6d40fbb67b78d907b41c8038 lib/core/target.py
@@ -209,7 +209,7 @@ c5b258be7485089fac9d9cd179960e774fbd85e62836dc67cce76cc028bb6aeb lib/parse/hand
209209
4ca378496510a02c0184b45107889625dc7faf459073e83b3520c66674049af4 lib/parse/payloads.py
210210
80d26a30abe948faf817a14f746cc8b3e2341ea8286830cccaae253b8ac0cdff lib/parse/sitemap.py
211211
1be3da334411657461421b8a26a0f2ff28e1af1e28f1e963c6c92768f9b0847c lib/request/basicauthhandler.py
212-
a30f18e52463c7c483430201b194350b55a54855507b253af826992e7e5c8435 lib/request/basic.py
212+
d04feda1063f643fda30b9c444d5950561143d18fa6ee822967d3ad3101483f9 lib/request/basic.py
213213
bc61bc944b81a7670884f82231033a6ac703324b34b071c9834886a92e249d0e lib/request/chunkedhandler.py
214214
2daf0ce19eacda64687f441c90ef8da51714c3e8947c993ba08fb4ecdc4f5287 lib/request/comparison.py
215215
626bb6f3316a906a4629c0feb8ecbbcf473fb59e5bc532603c35b6b8f63f1deb lib/request/connect.py

lib/core/settings.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
from thirdparty import six
2020

2121
# sqlmap version (<major>.<minor>.<month>.<monthly commit>)
22-
VERSION = "1.10.1.5"
22+
VERSION = "1.10.1.6"
2323
TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable"
2424
TYPE_COLORS = {"dev": 33, "stable": 90, "pip": 34}
2525
VERSION_STRING = "sqlmap/%s#%s" % ('.'.join(VERSION.split('.')[:-1]) if VERSION.count('.') > 2 and VERSION.split('.')[-1] == '0' else VERSION, TYPE)

lib/request/basic.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
import io
1111
import logging
1212
import re
13-
import struct
1413
import zlib
1514

1615
from lib.core.common import Backend
@@ -291,14 +290,16 @@ def decodePage(page, contentEncoding, contentType, percentDecode=True):
291290

292291
try:
293292
if contentEncoding == "deflate":
294-
data = io.BytesIO(zlib.decompress(page, -15)) # Reference: http://stackoverflow.com/questions/1089662/python-inflate-and-deflate-implementations
293+
obj = zlib.decompressobj(-15)
294+
page = obj.decompress(page, MAX_CONNECTION_TOTAL_SIZE + 1)
295+
page += obj.flush()
296+
if len(page) > MAX_CONNECTION_TOTAL_SIZE:
297+
raise Exception("size too large")
295298
else:
296299
data = gzip.GzipFile("", "rb", 9, io.BytesIO(page))
297-
size = struct.unpack("<l", page[-4:])[0] # Reference: http://pydoc.org/get.cgi/usr/local/lib/python2.5/gzip.py
298-
if size > MAX_CONNECTION_TOTAL_SIZE:
300+
page = data.read(MAX_CONNECTION_TOTAL_SIZE + 1)
301+
if len(page) > MAX_CONNECTION_TOTAL_SIZE:
299302
raise Exception("size too large")
300-
301-
page = data.read()
302303
except Exception as ex:
303304
if b"<html" not in page: # in some cases, invalid "Content-Encoding" appears for plain HTML (should be ignored)
304305
errMsg = "detected invalid data for declared content "

0 commit comments

Comments
 (0)