Skip to content

Instantly share code, notes, and snippets.

View saltukalakus's full-sized avatar
🐢
Rust & Cryptography

saltukalakus

🐢
Rust & Cryptography
View GitHub Profile
@saltukalakus
saltukalakus / 1Challenge.md
Last active June 2, 2025 20:45
PixelLock Challenge

Hello 🧙‍♂️!

This is an open challenge for those interested in bug bounties. Find a way to decrypt the secret images in this Gist. If you can generate even one of the original images, you win 500 GBP!

Three confidential images are encrypted in two separate attempts.

1- With a base image

PixelLock -e -i ./challenge -o ./challenge/output -b ./tests/images/base_image.png -r 4 
@saltukalakus
saltukalakus / 1Description.md
Last active June 2, 2025 20:46
PixelLock Challange

Hello 🧙‍♂️!

This is an open challenge for those interested in bug bounties. Find a way to decrypt the secret images in this Gist. If you can generate even one of the original images, you win 500 GBP!

All of the steganographic images are hiding different secret images.

The samples are encrypted like in this sample below in folder mode where the /challenge folder had the secret images. As this mode executes the encryption operation in one go, the same base image and the password was used.

PixelLock -e -i ./challange -o ./challange/output -b ./tests/images/base_image.png -r 4 
  • In the Organization context, the template uses the Organization's Logo
  • If not in the Organization context, the template uses the Application Logo
  • If the Application Logo is missing, the template uses the Tenant Logo
@saltukalakus
saltukalakus / index.html
Last active June 2, 2025 20:46
Prevent multiple click problem for device code confirmation screen
<!DOCTYPE html>
<html lang="en">
<head>
{%- auth0:head -%}
{% if prompt.screen.name == "device-code-confirmation" %}
<script>
document.addEventListener("DOMContentLoaded", function() {
document.addEventListener("click", function(event) {
// Check if the clicked element is a button within a form
const clickedButton = event.target.closest("form button");
@saltukalakus
saltukalakus / migrateUsersRule.js
Last active June 2, 2025 20:46
migrateUsersRule.js
function migrateUsers(user, context, cb) {
if (needMigration(user)) {
// Ignoring how the values are retrieved from the legacy database
var legacyProfile = {
family_name: 'alakus',
given_name: 'saltuk',
user_metadata: {
'anotherMetadata' : '123'
},
app_metadata: {
@saltukalakus
saltukalakus / caution-account-auto-link-rule.js
Created February 13, 2023 20:18 — forked from jatinvaidya/caution-account-auto-link-rule.js
CAUTION: Automatically Link Accounts with Verified Email
@saltukalakus
saltukalakus / verify_rs256.js
Created November 4, 2022 16:44
Verify JWT with rs256 signature
async function VerifyJWT (JwtToken) {
const util = require('util')
const jwksClientFactory = require('[email protected]')
const jwt = require('[email protected]')
const verify = util.promisify(jwt.verify)
const jwksUri = `https://${configuration.tenant}/.well-known/jwks.json`
const jwksClient = jwksClientFactory({ jwksUri })
const getSigningKeys = util.promisify(jwksClient.getSigningKeys).bind(jwksClient)
const signingKeys = await getSigningKeys()
@saltukalakus
saltukalakus / index-only-css.html
Last active June 2, 2025 20:46
Change size of the placeholder
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Sign In with Auth0</title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0" />
<style>
.auth0-lock-name {
font-size: 14px !important;
@saltukalakus
saltukalakus / curl.sh
Created September 1, 2022 21:17
Auth0 New Universal Login Page template with parameters .
curl --request PUT \
--url https://saltukalakus.auth0.com/api/v2/branding/templates/universal-login \
--header 'Authorization: Bearer eyJ..redacted' \
--header 'Content-Type: text/html' \
--data '<!DOCTYPE html><html lang="{{locale}}">
<head>
{%- auth0:head -%}
<script>
{% if prompt.name == "email-verification" %}
console.log("Email-verification: ", "{{ transaction.params.ext-param }}" );
@saltukalakus
saltukalakus / classic-mfa-page.html
Last active June 2, 2025 20:46
Get the active client ID on the classic MFA page
<!DOCTYPE html>
<html>
<head>
<title>2nd Factor Authentication</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<style type="text/css">
html, body { padding: 0; margin: 0; }