Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit cd28eb6

Browse files
committed
minor update regarding --load-cookies
1 parent 2c87d06 commit cd28eb6

4 files changed

Lines changed: 19 additions & 8 deletions

File tree

lib/core/common.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"""
99

1010
import codecs
11+
import cookielib
1112
import copy
1213
import ctypes
1314
import httplib
@@ -3194,3 +3195,15 @@ def hashDBRetrieve(key, unserialize=False, checkConf=False):
31943195

31953196
_ = "%s%s" % (conf.url or "%s%s" % (conf.hostname, conf.port), key)
31963197
return conf.hashDB.retrieve(_, unserialize) if kb.resumeValues and not (checkConf and any([conf.flushSession, conf.freshQueries])) else None
3198+
3199+
def resetCookieJar(cookieJar):
3200+
if not conf.loC:
3201+
cookieJar.clear()
3202+
else:
3203+
try:
3204+
cookieJar.load(conf.loC)
3205+
cookieJar.clear_expired_cookies()
3206+
except cookielib.LoadError, msg:
3207+
errMsg = "there was a problem loading "
3208+
errMsg += "cookies file ('%s')" % msg
3209+
raise sqlmapGenericException, errMsg

lib/core/option.py

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
from lib.core.common import randomRange
4545
from lib.core.common import randomStr
4646
from lib.core.common import readInput
47+
from lib.core.common import resetCookieJar
4748
from lib.core.common import runningAsAdmin
4849
from lib.core.common import sanitizeStr
4950
from lib.core.common import setOptimize
@@ -152,12 +153,7 @@ def __urllib2Opener():
152153
conf.cj = cookielib.CookieJar()
153154
else:
154155
conf.cj = cookielib.MozillaCookieJar()
155-
try:
156-
conf.cj.load(conf.loC)
157-
except cookielib.LoadError, msg:
158-
errMsg = "there was a problem loading "
159-
errMsg += "cookies file ('%s')" % msg
160-
raise sqlmapGenericException, errMsg
156+
resetCookieJar(conf.cj)
161157

162158
handlers.append(urllib2.HTTPCookieProcessor(conf.cj))
163159

lib/core/target.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
from lib.core.common import intersect
1919
from lib.core.common import paramToDict
2020
from lib.core.common import readInput
21+
from lib.core.common import resetCookieJar
2122
from lib.core.convert import urldecode
2223
from lib.core.data import cmdLineOptions
2324
from lib.core.data import conf
@@ -409,7 +410,7 @@ def initTargetEnv():
409410
conf.hashDB.close()
410411

411412
if conf.cj:
412-
conf.cj.clear()
413+
resetCookieJar(conf.cj)
413414

414415
conf.paramDict = {}
415416
conf.parameters = {}

lib/request/basic.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
from lib.core.common import extractRegexResult
2020
from lib.core.common import getUnicode
2121
from lib.core.common import readInput
22+
from lib.core.common import resetCookieJar
2223
from lib.core.common import singleTimeLogMessage
2324
from lib.core.data import conf
2425
from lib.core.data import kb
@@ -71,7 +72,7 @@ def forgeHeaders(items=None):
7172
headers[HTTPHEADER.COOKIE] += "%s %s=%s" % (DEFAULT_COOKIE_DELIMITER, cookie.name, cookie.value)
7273

7374
if kb.testMode:
74-
conf.cj.clear()
75+
resetCookieJar(conf.cj)
7576

7677
if kb.redirectSetCookie and not conf.dropSetCookie:
7778
if HTTPHEADER.COOKIE in headers:

0 commit comments

Comments
 (0)