Skip to content

Instantly share code, notes, and snippets.

@thenoobtester
thenoobtester / saveFile.ts
Created October 12, 2024 14:20 — forked from thomaskonrad/saveFile.ts
Downloading an Array Buffer via a "Save as" Dialog in the Browser
// This source code is taken from Firefox Send (https://github.com/mozilla/send) and slightly modified.
export default async function saveFile(plaintext: ArrayBuffer, fileName: string, fileType: string) {
return new Promise((resolve, reject) => {
const dataView = new DataView(plaintext);
const blob = new Blob([dataView], { type: fileType });
if (navigator.msSaveBlob) {
navigator.msSaveBlob(blob, fileName);
return resolve();
@thenoobtester
thenoobtester / simple_http_server_cors.py
Created July 31, 2021 18:03 — forked from khalidx/simple_http_server_cors.py
Python SimpleHTTPServer with CORS
#!/usr/bin/env python
# Usage: python cors_http_server.py <port>
try:
# try to use Python 3
from http.server import HTTPServer, SimpleHTTPRequestHandler, test as test_orig
import sys
def test (*args):
test_orig(*args, port=int(sys.argv[1]) if len(sys.argv) > 1 else 8000)
@thenoobtester
thenoobtester / cors_exploit_server.py
Created July 31, 2021 18:02 — forked from ricardojba/cors_exploit_server.py
Python Simple HTTP Server for testing or exploiting CORS
#!/usr/bin/env python
from sys import argv
import BaseHTTPServer
import ssl
class CORSHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
def do_OPTIONS(self):
self.send_response(200, "ok")
#self.send_header('Access-Control-Allow-Origin', '*')
# useful for running ssl server on localhost
# which in turn is useful for working with WebSocket Secure (wss)
# copied from http://www.piware.de/2011/01/creating-an-https-server-in-python/
@thenoobtester
thenoobtester / simple-https-server.py
Created July 31, 2021 18:02 — forked from matforest/simple-https-server.py
Simple SSL Web Server using python's SimpleHTTPServer
# adapated from http://www.piware.de/2011/01/creating-an-https-server-in-python/
# generate seperate key+crt files, make sure common name (CN) == ip or hostname
# openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout newkey.key -out newkey.crt
# run as follows:
# python simple-https-server.py
import BaseHTTPServer, SimpleHTTPServer
import ssl
# 0.0.0.0 allows connections from anywhere