mirror of
https://github.com/norandom/OpenUltraSAST.git
synced 2026-10-16 19:59:26 +00:00
Regex inventory stays the proposer. MAP attaches promote/demote/unadjudicated/coverage from intra-file taint (tree-sitter when a grammar parses, Python ast as last resort). Deep sandboxes promotions only, ordered by the existing heuristic ranker plus optional OpenRouter mechanism recall. The SAST pair slice scores overlay outcomes; the stage-1 detection gate and local pair gate stay inventory-only.
66 lines
1.9 KiB
Python
66 lines
1.9 KiB
Python
'''
|
|
OWASP Benchmark for Python v0.1
|
|
|
|
This file is part of the Open Web Application Security Project (OWASP) Benchmark Project.
|
|
For details, please see https://owasp.org/www-project-benchmark.
|
|
|
|
The OWASP Benchmark 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, version 3.
|
|
|
|
The OWASP Benchmark 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.
|
|
|
|
Author: Theo Cartsonis
|
|
Created: 2025
|
|
'''
|
|
|
|
from flask import redirect, url_for, request, make_response, render_template
|
|
from helpers.utils import escape_for_html
|
|
|
|
def init(app):
|
|
|
|
@app.route('/benchmark/deserialization-00/BenchmarkTest00078', methods=['GET'])
|
|
def BenchmarkTest00078_get():
|
|
response = make_response(render_template('web/deserialization-00/BenchmarkTest00078.html'))
|
|
response.set_cookie('BenchmarkTest00078', 'gASVNwAAAAAAAACMCF9fbWFpbl9flIwOc2FmZV90b19waWNrbGWUk5QpgZR9lCiMAWGUjANmb2-UjAFilEtjdWIu',
|
|
max_age=60*3,
|
|
secure=True,
|
|
path=request.path,
|
|
domain='localhost')
|
|
return response
|
|
return BenchmarkTest00078_post()
|
|
|
|
@app.route('/benchmark/deserialization-00/BenchmarkTest00078', methods=['POST'])
|
|
def BenchmarkTest00078_post():
|
|
RESPONSE = ""
|
|
|
|
import urllib.parse
|
|
param = urllib.parse.unquote_plus(request.cookies.get("BenchmarkTest00078", "noCookieValueSupplied"))
|
|
|
|
string9895 = 'help'
|
|
string9895 += param
|
|
string9895 += 'snapes on a plane'
|
|
bar = string9895[4:-17]
|
|
|
|
import pickle
|
|
import base64
|
|
import helpers.utils
|
|
|
|
helpers.utils.sharedstr = "no pickles to be seen here"
|
|
|
|
try:
|
|
unpickled = pickle.loads(base64.urlsafe_b64decode(bar))
|
|
except:
|
|
RESPONSE += (
|
|
'Unpickling failed!'
|
|
)
|
|
return RESPONSE
|
|
|
|
RESPONSE += (
|
|
f'shared string is {helpers.utils.sharedstr}'
|
|
)
|
|
|
|
return RESPONSE
|
|
|