Skip to content

Instantly share code, notes, and snippets.

View Zibri's full-sized avatar
❤️‍🔥

Zibri Zibri

❤️‍🔥
View GitHub Profile
@Zibri
Zibri / WishSortPrice.js
Created January 6, 2018 12:14 — forked from LiquidSebbey/WishSortPrice.js
Sort Wish.com results by price
$("<style>.overlay { position:absolute; background-color: white; top:0; left:0; width:100%; height:100%; z-index:1000; } .loader { position: fixed; top: 1em; padding: 15px; maring: 15px; border: 1px solid #000000; border-radius: 10px; background-color: #CC0000; color: #FFFFFF; right: 1em; z-index: 999999999999; }</style>").appendTo("head");
$("body").append("<div id='overlay' class='overlay'></div><div id='loader' class='loader'><b>Bezig met inladen en sorteren ...</b></div>");
maxProducts = prompt("Hoeveel producten wil je inladen? (max. 500)");
var app = setInterval(function(){
if ($(".feed-product-item").length < maxProducts){
@Zibri
Zibri / inlineworker.js
Created June 28, 2018 08:09 — forked from SunboX/inlineworker.js
Create web workers without a separate worker JS files. Source: http://jsbin.com/owogib/8/
function worker() {
setInterval(function() {
postMessage({foo: "bar"});
}, 1000);
}
var code = worker.toString();
code = code.substring(code.indexOf("{")+1, code.lastIndexOf("}"));
var blob = new Blob([code], {type: "application/javascript"});
@Zibri
Zibri / Deobfuscator.html
Last active July 3, 2018 07:04
OpenRG Deobfuscator
<html>
<head>
<script type="text/javascript">
if (document.images) {
img1 = new Image();
img1.src = "https://gist.github.com/Zibri/c040a013548f3f5039fa75cafb98d9a8/raw/374b3ba2ca881eb0a39958dd724765eefd0703fe/gatto1.jpg";
img2 = new Image();
img2.src = "https://gist.github.com/Zibri/c040a013548f3f5039fa75cafb98d9a8/raw/374b3ba2ca881eb0a39958dd724765eefd0703fe/gatto2.jpg";
}
@Zibri
Zibri / background.js
Created April 23, 2019 17:45 — forked from danharper/background.js
Bare minimum Chrome extension to inject a JS file into the given page when you click on the browser action icon. The script then inserts a new div into the DOM.
// this is the background code...
// listen for our browerAction to be clicked
chrome.browserAction.onClicked.addListener(function (tab) {
// for the current tab, inject the "inject.js" file & execute it
chrome.tabs.executeScript(tab.ib, {
file: 'inject.js'
});
});
/*
Best hex2bin function I came up with.
By Zibri
Valid strings examples:
"1 d0 600d c0FFeE"
"01d0600dc0ffee"
Spaces are ignored.
Parsing stops at the first non hex character.
@Zibri
Zibri / trick.txt
Last active July 26, 2019 16:17
A trick as old as Unix.
$ echo ZWNobyAiQnllLWJ5ZSBXb3JsZCEiIDsjDSMhL2Jpbi9zaCAgICAgICAgICAgICAgICANCiMNZWNobyAiSGVsbG8gV29ybGQhIg0K | base64 -d >test.sh
$ chmod a+x test.sh
$ cat test.sh
#!/bin/sh
echo "Hello World!"
$ ./test.sh
Bye-bye World!
$
@Zibri
Zibri / echo_detector_v2_wasm.wasm
Last active July 30, 2019 10:17
WebAudio Echo Detector Wasm
@Zibri
Zibri / reindent.sh
Created August 2, 2019 11:18
Reindent any bash script the "bash" way.
#!/bin/bash
# By Zibri (www.zibri.org)
# Usage: reindent script.sh >script_nicer.sh
#
reindent ()
{
rstr=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 16 | head -n 1);
source <(echo "Zibri () {";cat "$1"|sed -e "s/^\s\s\s\s/$rstr/"; echo "}");
echo '#!/bin/bash';
declare -f Zibri | head --lines=-1 | tail --lines=+3 | sed -e "s/^\s\s\s\s//;s/$rstr/ /"
@Zibri
Zibri / browser_otp.js
Last active August 11, 2019 17:47
OTP NodeJS and pure Javascript one-liner
// This code produces a different 6 digits OTP every 30 seconds.
// numDigits must be between 1 and 8
otp = await (async (secret,numDigits)=>(Array.prototype.reduce.call(new Uint8Array(await crypto.subtle.digest('SHA-512',new TextEncoder().encode(secret+(Math.floor(new Date().getTime()/30000)).toString(16)))), (a,b,c)=>((((a*257) ^ b) >>> 0) % (10**numDigits)) )).toString().padStart(numDigits,"0"))
("test_secret",6)
OR
Object.defineProperty(window, 'otp', { get: async (secret="test_secret",numDigits=6)=>(Array.prototype.reduce.call(new Uint8Array(await crypto.subtle.digest('SHA-512',new TextEncoder().encode(secret+(Math.floor(new Date().getTime()/30000)).toString(16)))), (a,b,c)=>((((a*257) ^ b) >>> 0) % (10**numDigits)) )).toString().padStart(numDigits,"0") });
@Zibri
Zibri / zibri_ssh.patch
Last active March 11, 2020 12:33
Patch for openssh adding option "-Z" so specify source port of connection of both ssh and scp)
diff -u openssh-7.6p1/scp.c openssh-7.6p1Z/scp.c
--- openssh-7.6p1/scp.c 2020-01-15 17:20:57.000000000 +0200
+++ openssh-7.6p1Z/scp.c 2020-01-15 17:19:37.699437700 +0200
@@ -153,6 +153,9 @@
/* This is the program to execute for the secured connection. ("ssh" or -S) */
char *ssh_program = _PATH_SSH_PROGRAM;
+/* This is used to store the source_port specified by -Z */
+char *source_port = NULL;
+