Skip to content

Instantly share code, notes, and snippets.

View dayglojesus's full-sized avatar
:shipit:

Brian Warsing dayglojesus

:shipit:
View GitHub Profile
@dayglojesus
dayglojesus / password.rb
Created August 4, 2012 17:41
Password class for DSLocalRrecord
require 'pp'
require 'osx/cocoa'
include OSX
class DSLocalPassword
attr_reader :content
@@macosx_major_version = 10.7
@@password_create_methods = {
@dayglojesus
dayglojesus / dslocal.rb
Created August 4, 2012 17:40
Pimp out DSLocalRecords as NSDictionaries
#!/usr/bin/ruby
require 'osx/cocoa'
require 'pp'
require 'delegate'
load './password.rb'
include OSX
def load_plist(file)
@dayglojesus
dayglojesus / patchhomedirmech.rb
Created May 8, 2012 14:41
Patch Lion HomeDirMechanism Format Strings with Null Bytes and Purge Security Logs
#!/usr/bin/ruby
# This code comes with no guarantees and it is not a "fix", just a workaround.
# It would be trivial to replace the patched file and restore these debugging messages.
# Also, this script modifies a Mac OS X System file, so...
require 'etc'
require 'fileutils'
require 'syslog'
@log = Syslog.open('patchhomedirmech')
@dayglojesus
dayglojesus / provider_simple.rb
Created May 1, 2012 16:14
Puppet Type/Provider: Simple
# Simple Provider
require 'fileutils'
Puppet::Type.type(:simple).provide(:simple) do
desc "Provides simple useless file creation"
def create
notice("Creating: #{resource[:name]}")
system('/usr/bin/touch', "#{resource[:path]}/#{resource[:name]}")
end
@dayglojesus
dayglojesus / gist:1587231
Created January 10, 2012 05:37
Recover Lion Password Hash with RubyCocoa
#!/usr/bin/ruby
require 'openssl'
require 'osx/cocoa'
include OSX
plain_text_pass = 'foobar'
file = 'user.plist'
user_plist = NSDictionary.dictionaryWithContentsOfFile(file)