From d17623b8ec070a10387e1fe90c209af48ace55c4 Mon Sep 17 00:00:00 2001 From: cavoq Date: Thu, 3 Oct 2024 21:10:22 +0200 Subject: [PATCH 1/2] Fixed deps to avoid further issues --- requirements.txt | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/requirements.txt b/requirements.txt index 266024d..f721f1e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,12 +1,12 @@ -scrapy -pybloomfilter -requests -bs4 -twisted==16.6.0 -w3lib -lxml -six -cssselect -pyopenssl -cryptography -queuelib +scrapy==1.8.4 +pybloomfilter==1.0 +requests==2.27.1 +beautifulsoup4==4.9.3 +twisted==20.3.0 +w3lib==1.22.0 +lxml==5.0.1 +six==1.16.0 +cssselect==1.1.0 +pyopenssl==21.0.0 +cryptography==3.3.2 +queuelib==1.5.0 From f29b9c9422116569041e0157f81cb65fe9fa60d4 Mon Sep 17 00:00:00 2001 From: cavoq Date: Thu, 3 Oct 2024 21:10:41 +0200 Subject: [PATCH 2/2] Fixed outdated deps --- libs/libcalg.so | Bin 0 -> 134880 bytes libs/libcalg.so.0.0.0 | Bin 0 -> 134880 bytes xsscrapy/bloomfilter.py | 119 +++++++++++++++++++++++++++++++++++++++ xsscrapy/bloomfilters.py | 6 +- xsscrapy/middlewares.py | 44 ++++++++------- xsscrapy/pipelines.py | 6 +- 6 files changed, 148 insertions(+), 27 deletions(-) create mode 100644 libs/libcalg.so create mode 100644 libs/libcalg.so.0.0.0 create mode 100644 xsscrapy/bloomfilter.py diff --git a/libs/libcalg.so b/libs/libcalg.so new file mode 100644 index 0000000000000000000000000000000000000000..a7664db2819e710837c1f93c6de381ce12980e80 GIT binary patch literal 134880 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 +# +# 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 2 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, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, +# MA 02110-1301, USA. + + + +__all__=["BloomFilter"] + + +from ctypes import * +import os + +lib_path = os.path.abspath("libs/libcalg.so") +calg = CDLL(lib_path) +if not calg: + print "Error loading libcalg.so" + exit(1) + +string_hash=calg.string_hash +string_hash.restype=c_ulong +string_hash.argstype=[c_void_p] + +int_hash=calg.int_hash +int_hash.restype=c_ulong +int_hash.argstype=[c_void_p] + +# bloomfilter c-definitions + +bloomfilter_value=c_void_p +HASH_FUNC=CFUNCTYPE(c_ulong, bloomfilter_value) + +class BloomFilterStruct(Structure): + __fields__=[ + ("hash_func", HASH_FUNC), + ("table", POINTER(c_ubyte)), + ("table_size", c_uint ), + ("num_functions",c_uint ), + ] + +bloomfilter_p = POINTER(BloomFilterStruct) + +bf_new = calg.bloom_filter_new +bf_new.restype = bloomfilter_p +bf_new.argstype = [c_uint, HASH_FUNC, c_uint] + +bf_free=calg.bloom_filter_free +bf_free.restype=None +bf_free.argstype=[bloomfilter_p] + +bf_insert = calg.bloom_filter_insert +bf_insert.restype = None +bf_insert.argstype = [bloomfilter_p, bloomfilter_value] + +bf_query = calg.bloom_filter_query +bf_query.restype = c_int +bf_query.argstype = [bloomfilter_p, bloomfilter_value] + +# python wrapper + +class BloomFilter: + + def __init__(self, table_size=128, hash_func=string_hash, num_functions=1): + """ + A bloom filter is a space efficient data structure that can be used to test whether a given element is part of a set. + Lookups will occasionally generate false positives, but never false negatives. + """ + self._bloomfilter = bf_new(table_size, hash_func, num_functions) + + def insert(self, val): + """ + Insert a value into the bloom filter. + """ + bf_insert(self._bloomfilter, str(val)) + + def query(self, val): + """ + Query a bloom filter for a particular value. + """ + return bf_query(self._bloomfilter, str(val)) + + def __contains__(self, val): + """ + Check if a value is in the bloom filter. + """ + return self.query(val) + + def __del__(self): + """ + Explicitly free the resources allocated by the bloom filter. + """ + if self._bloomfilter: + bf_free(self._bloomfilter) + + +if __name__=="__main__": + + b=BloomFilter() + b.insert("ahmed") + b.insert("ayman") + print "ahmed" in b + print "ayman" in b + print "memo" in b + + del b diff --git a/xsscrapy/bloomfilters.py b/xsscrapy/bloomfilters.py index a0d9efb..c31d5b4 100644 --- a/xsscrapy/bloomfilters.py +++ b/xsscrapy/bloomfilters.py @@ -1,4 +1,4 @@ -from pybloomfilter import BloomFilter +from xsscrapy.bloomfilter import BloomFilter from scrapy.utils.job import job_dir from scrapy.dupefilters import BaseDupeFilter from xsscrapy.settings import bloomfilterSize @@ -8,7 +8,7 @@ class BloomURLDupeFilter(BaseDupeFilter): def __init__(self, path=None): self.file = None - self.fingerprints = BloomFilter(bloomfilterSize*10, 0.0001) + self.fingerprints = BloomFilter(bloomfilterSize) @classmethod def from_settings(cls, settings): @@ -18,7 +18,7 @@ def request_seen(self, request): fp = request.url if fp in self.fingerprints: return True - self.fingerprints.add(fp) + self.fingerprints.insert(fp) def close(self, reason): self.fingerprints = None diff --git a/xsscrapy/middlewares.py b/xsscrapy/middlewares.py index 3693811..903ca8b 100644 --- a/xsscrapy/middlewares.py +++ b/xsscrapy/middlewares.py @@ -1,26 +1,24 @@ from scrapy.exceptions import IgnoreRequest -from urllib.parse import unquote -from pybloomfilter import BloomFilter +from urlparse import unquote +from xsscrapy.bloomfilter import BloomFilter import random import re from xsscrapy.settings import bloomfilterSize -# Filter out duplicate requests with Bloom filters since they're much easier on memory -#URLS_FORMS_HEADERS = BloomFilter(3000000, 0.00001) -URLS_SEEN = BloomFilter(bloomfilterSize, .0001) -FORMS_SEEN = BloomFilter(bloomfilterSize, .0001) -HEADERS_SEEN = BloomFilter(bloomfilterSize, .0001) -USER_AGENT_LIST = ['Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.131 Safari/537.36', - 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.131 Safari/537.36', - 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/537.75.14', - 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) Gecko/20100101 Firefox/29.0', - 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.137 Safari/537.36', - 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:28.0) Gecko/20100101 Firefox/28.0'] - class RandomUserAgentMiddleware(object): ''' Use a random user-agent for each request ''' + + USER_AGENT_LIST = [ + 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.131 Safari/537.36', + 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.131 Safari/537.36', + 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/537.75.14', + 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) Gecko/20100101 Firefox/29.0', + 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.137 Safari/537.36', + 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:28.0) Gecko/20100101 Firefox/28.0' + ] + def process_request(self, request, spider): - ua = random.choice(USER_AGENT_LIST) + ua = random.choice(RandomUserAgentMiddleware.USER_AGENT_LIST) if 'payload' in request.meta: payload = request.meta['payload'] if 'User-Agent' in request.headers: @@ -33,6 +31,10 @@ def process_request(self, request, spider): class InjectedDupeFilter(object): ''' Filter duplicate payloaded URLs, headers, and forms since all of those have dont_filter = True ''' + URLS_SEEN = BloomFilter(bloomfilterSize) + FORMS_SEEN = BloomFilter(bloomfilterSize) + HEADERS_SEEN = BloomFilter(bloomfilterSize) + def process_request(self, request, spider): meta = request.meta @@ -46,10 +48,10 @@ def process_request(self, request, spider): #replace the delim characters with nothing so we only test the URL #with the payload no_delim_url = url.replace(delim, '') - if no_delim_url in URLS_SEEN: + if no_delim_url in InjectedDupeFilter.URLS_SEEN: raise IgnoreRequest spider.log('Sending payloaded URL: %s' % url) - URLS_SEEN.add(url) + InjectedDupeFilter.URLS_SEEN.insert(no_delim_url) return # Injected form dupe handling @@ -57,10 +59,10 @@ def process_request(self, request, spider): u = meta['POST_to'] p = meta['xss_param'] u_p = (u, p) - if u_p in FORMS_SEEN: + if u_p in InjectedDupeFilter.FORMS_SEEN: raise IgnoreRequest spider.log('Sending payloaded form param %s to: %s' % (p, u)) - FORMS_SEEN.add(u_p) + InjectedDupeFilter.FORMS_SEEN.insert(u_p) return # Injected header dupe handling @@ -69,8 +71,8 @@ def process_request(self, request, spider): h = meta['xss_param'] # URL, changed header, payload u_h = (u, h) - if u_h in HEADERS_SEEN: + if u_h in InjectedDupeFilter.HEADERS_SEEN: raise IgnoreRequest spider.log('Sending payloaded %s header' % h) - HEADERS_SEEN.add(u_h) + InjectedDupeFilter.HEADERS_SEEN.insert(u_h) return diff --git a/xsscrapy/pipelines.py b/xsscrapy/pipelines.py index bead038..0dbf451 100644 --- a/xsscrapy/pipelines.py +++ b/xsscrapy/pipelines.py @@ -3,8 +3,8 @@ # Don't forget to add your pipeline to the ITEM_PIPELINES setting # See: http://doc.scrapy.org/en/latest/topics/item-pipeline.html from scrapy.exceptions import DropItem -from html.parser import HTMLParser from xsscrapy.items import vuln#, inj_resp +import HTMLParser import re import lxml.etree import lxml.html @@ -12,7 +12,7 @@ import itertools #from IPython import embed from socket import gaierror, gethostbyname -from urllib.parse import urlparse +from urlparse import urlparse from logging import CRITICAL, ERROR, WARNING, INFO, DEBUG class XSSCharFinder(object): @@ -26,7 +26,7 @@ def get_filename(self, url): filename = up + '.txt' return filename - + def open_spider(self, spider): self.filename = self.get_filename(spider.url)