Skip to content

Instantly share code, notes, and snippets.

Mathias R. Jessen IISResetMe

  • Booking.com
  • Netherlands
Block or report user

Report or block IISResetMe

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View Get-DistinctUnion.ps1
function Get-DistinctUnion
{
param(
[array]$Source,
[array]$Other
)
$temp = [System.Collections.Generic.HashSet[object]]::new($Source)
$temp.UnionWith($Other)
@IISResetMe
IISResetMe / GetFileTime.ps1
Last active Apr 24, 2019
Fast acquisition of LastWriteTime attribute value of files via Kernel32.dll
View GetFileTime.ps1
$kernel32,$filetime = Add-Type -TypeDefinition @'
// Partial port of the C# example at
// https://www.pinvoke.net/default.aspx/kernel32.getfiletime
//
using System;
using System.Runtime.InteropServices;
public class Kernel32wrappers {
[DllImport("kernel32.dll", SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
@IISResetMe
IISResetMe / Get-ChildItemDeep.ps1
Created Apr 12, 2019
Get-ChildItem -Depth for PS 4.0
View Get-ChildItemDeep.ps1
function Get-ChildItemDeep
{
param(
[Parameter(ParameterSetName='Items', Position=0, ValueFromPipeline=$true, ValueFromPipelineByPropertyName=$true)]
[string[]]
${Path},
[Parameter(Position=1)]
[string]
${Filter},
View wildcards.ps1
function Search-Stuff
{
param([string]$String)
$Data = 'lol', 'lol123', '123lol', '123lol123'
$Filter = if([WildcardPattern]::ContainsWildcardCharacters($string)){
{ $_ -like $string }
} else {
{ $_ -eq $string }
View CreateServicePInvoke.ps1
Add-Type '
using System;
using System.Runtime.InteropServices;
public class advapi32 {
[DllImport("advapi32.dll", SetLastError=true, CharSet=CharSet.Auto)]
public static extern IntPtr CreateService(
IntPtr hSCManager,
string lpServiceName,
string lpDisplayName,
uint dwDesiredAccess,
View Find-EncryptedFiles.ps1
$FAD,$kernel32 = Add-Type @'
using System;
using System.IO;
using System.Runtime.InteropServices;
[StructLayout(LayoutKind.Sequential)]
public struct WIN32_FILE_ATTRIBUTE_DATA
{
public FileAttributes dwFileAttributes;
public System.Runtime.InteropServices.ComTypes.FILETIME ftCreationTime;
@IISResetMe
IISResetMe / Get-ArtisanalInteger.ps1
Created Mar 27, 2019
Handcrafted integers in a hurry
View Get-ArtisanalInteger.ps1
<#
.Synopsis
Acquires an organic, hand-crafter integer from Brooklyn Integers
.EXAMPLE
Get-ArtisanalInteger
.INPUTS
NONE
.OUTPUTS
An integer
.LINK
View bad.ps1
$params = @{
Name = 'w*'
}
# unrelated stuff happening
# ...
# ...
# ...
$params2 = @{
View autoruns_timestamped.ps1
& autorunsc.exe * -c -nobanner |ConvertFrom-Csv |Select *,@{Label='HasTimestampedSignature';Expression={
[bool]$(if($_.'Image Path' -and $_.'Image Path' -notlike 'File not found:*'){
$sig = Get-AuthenticodeSignature $_.'Image Path'
$sig.Status -eq 'Valid' -and $sig.TimeStamperCertificate
})
}} |Export-Csv -Path output.csv -NoTypeInformation
@IISResetMe
IISResetMe / Get-LMHash.ps1
Last active Mar 15, 2019
LMHash generator in written in PowerShell
View Get-LMHash.ps1
function Get-WeakDESEncryptor {
<#
.SYNOPSIS
Creates a DESCryptoProviderService encryptor from a potentially unsafe key
.DESCRIPTION
DESCryptoProviderService.GetEncryptor() attempts to ensure that 0-keys can't be used. This function bypasses the protection and creates a DES encryptor from a potentially unsafe key and an empty initialization vector
.EXAMPLE
PS C:\> $DESProvider = [System.Security.Cryptography.DESCryptoServiceProvider]::new()
PS C:\> $encryptor = Get-WeakDESEncryptor -CSP $DESProvider -Key @(,0*8)
You can’t perform that action at this time.