prompt(/XSS/) https://www.densuke.-6ren">
gpt4 book ai didi

python - 如何从参数中提取数据?

转载 作者:太空宇宙 更新时间:2023-11-04 09:15:13 24 4
gpt4 key购买 nike

我有超过一千个链接,它们都有基于 GET 的参数。

https://us.webuy.com/search/index.php/"><script>prompt(/XSS/)</script>
https://www.densuke.biz/help
http://www.ntrcars.co.uk/email.php?subject=%22%3E%3Csvg/onload=alert(/XSS/)%3E
http://www.americanexpress.com/thailand/en/leave_country.shtml?url=javascript:alert`XSS`
https://share.trin.cam.ac.uk/sites/public/Pages/PageNotFoundError.aspx?FollowSite=0&SiteName='-confirm(/XSS/)-'
http://www.rockwellautomation.com/global/news/the-journal/detail.page?docid=dfb8c8ba15e7cf2c599fc321b8e2b98e&G11N/Locale=en&geography=%22%3E%3Cimg%20src=x%20onerror=prompt%28/XSS/%29%3E&content_type=magazine&pagetitle=\n
https://www.ifishillinois.org/profiles/display_lake.php?waternum=1/*-/*`/*\`/*'/*"/**/--></script><svg/onload=;prompt(/XSS/);>00116
http://tools.xaa.su/htaccess/
http://www.wa.lk/realstate/product_display.php?id=%22%22;%3C%2Fscript%3E%3Cscript%3Eprompt(%2FXSS%2F)%3C%2Fscript%3E%3C%22

我需要提取所有包含字符串“XSS”的数据并将它们放入列表中。

"><script>prompt(/XSS/)</script>
%22%3E%3Csvg/onload=alert(/XSS/)%3E
javascript:alert`XSS`
'-confirm(/XSS/)-'

等等……

我曾尝试使用 urlparse,但在任何地方都看不到这种类型的函数

#from urllib.parse import urlparse
#
#url = 'http://user:pwd@NetLoc:80/path;param?query=arg#frag'
#parsed = urlparse(url)
#print('scheme :', parsed.scheme)
#print('netloc :', parsed.netloc)
#print('path :', parsed.path)
#print('params :', parsed.params)
#print('query :', parsed.query)
#print('fragment:', parsed.fragment)
#print('username:', parsed.username)
#print('password:', parsed.password)
#print('hostname:', parsed.hostname)
#print('port :', parsed.port)

要清楚;每个 URL 都会有一个我要提取的 javascript 负载。

最佳答案

对于您发布的几乎所有网址(第一个除外),您都可以从解析 query 参数中提取 js-payload,如下所示:

import urlparse

# file.txt contains the urls - one per line
with open('file.txt', 'r') as f:
urls = f.read().splitlines()

for url in urls:
parsed = urlparse.urlparse(url)
if parsed.query != '':
print parsed.query

对于第一个,有效载荷包含在path参数中。

另一种提取 get 参数的方法如下,使用 furl模块:

from furl import furl
for url in urls:
i = furl(url)
if len(i.args):
for k,v in i.args.items():
print v

更新如果您所有的有效载荷都包含“xss”一词,那么以下内容可能会有所帮助:

import urlparse

# file.txt contains the urls - one per line
with open('file.txt', 'r') as f:
urls = f.read().splitlines()

for url in urls:
parsed = urlparse.urlparse(url)
if parsed.query != '':
print ''.join(filter(lambda i: 'xss' in i.lower() ,parsed.query.split('=')))

输出:

alert(/XSS/)%3E
javascript:alert`XSS`
'-confirm(/XSS/)-'
prompt%28/XSS/%29%3E&content_type
;prompt(/XSS/);>00116
%22%22;%3C%2Fscript%3E%3Cscript%3Eprompt(%2FXSS%2F)%3C%2Fscript%3E%3C%22

关于python - 如何从参数中提取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48730188/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com