Sha256: 08abe0caf651c787b54b7e96be31844e88179c55786d51880d318531fa378dcc
Contents?: true
Size: 756 Bytes
Versions: 2
Compression:
Stored size: 756 Bytes
Contents
# frozen_string_literal: true module TaintedLove module Replacer class ReplaceObject < Base TAGS = {} def replace! mod = Module.new do def send(*args, &block) if args[0].tainted? && args[1].tainted? TaintedLove.report( :ReplaceObject, args.first, [:rce], 'User input in the first 2 arguments of Object#send' ) end super(*args, &block) end def tainted_love_tags TAGS[object_id] ||= [] end def tainted_love_tags=(tags) TAGS[object_id] = tags end end Object.prepend(mod) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
tainted_love-0.4.1 | lib/tainted_love/replacer/replace_object.rb |
tainted_love-0.4.0 | lib/tainted_love/replacer/replace_object.rb |