Skip to content

Instantly share code, notes, and snippets.

View audibleblink's full-sized avatar

Alex Flores audibleblink

View GitHub Profile
93fb02c5-3f3f-40de-856d-7328555dce79
@audibleblink
audibleblink / wd-ex.md
Last active October 15, 2019 18:49
Compromised Web Developer Extension Steals Cloudflare Tokens

Compromised Web Developer Extension Steals Cloudflare Tokens

Upon receiving news that the popular Chrome Extension, Web Developer, had been compromised, I became curious about exactly how malicious the highjacking was. Most sites are reporting that it injects ads. It's more nefarious than that. Since the extension calls out to an attacker-controlled URL, the payload hosted at that URL could be changed to anything at any time.

At the time of inspection, the code checks to see if the victim is on the Cloudflare domain. If it is, it starts an XHR request to fetch the users' API token and ships it, along with the victim's email, to a remote server.

@audibleblink
audibleblink / getsystem.go
Created July 15, 2019 16:58 — forked from lesnuages/getsystem.go
Inject shellcode in a system process, leveraging SeDebugPrivilege
package main
import (
"io/ioutil"
"log"
"net/http"
"os"
"runtime"
"syscall"
"unsafe"
package main
/*
*
* This is just a Go implementation of https://github.com/monoxgas/sRDI/
* Useful if you're trying to generate shellcode for reflective DLL
* injection in Go, otherwise probably not much use :)
*
* The project, shellcode, most comments within this project
* are all from the original project by @SilentBreakSec's Nick Landers (@monoxgas)
@audibleblink
audibleblink / Resources.md
Last active May 29, 2016 17:47
Resources for Learning iOS
[1]: https://www.udemy.com/swift-learn-apples-new-programming-language-by-examples/
[2]: https://www.udacity.com/course/ud585
[3]: http://www.lynda.com/Swift-tutorials/Swift-Programming-Language-First-Look/182175-2.html
[4]: https://www.bloc.io/swiftris-build-your-first-ios-game-with-swift
[5]: http://www.bignerdranch.com/we-teach/how-to-prepare/ios-device-provisioning.html
[6]: https://parse.com
[7]: http://www.weheartswift.com/swift-programming-scratch-100-exercises/
[8]: https://www.weheartswift.com/object-oriented-programming-swift/
[9]: http://www.learnswift.io/blog/2014/6/12/size-classes-with-xcode-6-and-swift
[10]: http://www.raywenderlich.com/83129/beginning-auto-layout-tutorial-swift-part-1
@audibleblink
audibleblink / newnew.js
Created August 19, 2014 02:54
Reimplementation of the `new` keyword as a function
var newNew = function(constructor, args) {
var instance = Object.create(constructor.prototype)
// instance.__proto__ = constructor.prototype // Same as line above
instance.constructor = constructor // So that you can see who created this.
constructor.apply(instance, args) // Same as #call except args is an arrray with apply
return instance
}
@audibleblink
audibleblink / firstrow.js
Last active January 3, 2016 02:09
Minor cleanup and ad removal on firstrowus1.eu
var CleanUp = {
init: function(){
this.stopTimers();
this.clearSpace();
this.clearAds();
},
stopTimers: function() {
for (var i = 1; i < 99999; i++) { window.clearInterval(i);}
@audibleblink
audibleblink / fizzbuzzO.rb
Last active December 31, 2015 13:49
Big O practice with FizzBuzz
def mult_generator limit, multiple
0.step(limit, multiple).to_a
end
def fizzbuzzify values_hash
values_hash.each_pair do |k,v|
v.each { |v| @answer[v-1] = k.to_s }
end
@answer
@audibleblink
audibleblink / list.rb
Last active August 29, 2015 14:24
reimplemented unix tree
#!/usr/bin/env ruby
# without the glyphs, if you prefer
def list entry=Dir.pwd
Dir.entries(entry)[2..-1].each do |item|
puts File.basename(item)
list("#{entry}/#{item}") if File.directory?("#{entry}/#{item}")
end
end
@audibleblink
audibleblink / binary_search.rb
Last active August 29, 2015 14:13
notes from class
# hopefully the descriptive names eliminate the need for comment
def search(collection, the_item_for_which_i_am_searching, the_lower_bounds=0, the_upper_bounds=collection.length)
the_middle_index = (the_lower_bounds + the_upper_bounds) / 2
the_middle_item = collection[the_middle_index]
return the_middle_index if the_middle_item == the_item_for_which_i_am_searching
return -1 if the_upper_bounds <= the_lower_bounds