Releases: ronin-rb/ronin-support
Releases · ronin-rb/ronin-support
1.1.0
- Added
Ronin::Support::Binary::CTypes::OS::Android
. - Added
Ronin::Support::Binary::CTypes::OS::AppleIOS
. - Added the
ca:
keyword argument toRonin::Support::Crypto::Cert.generate
. - Added the
subject_alt_names:
keyword argument toRonin::Support::Crypto::Cert.generate
. - Added
Ronin::Support::Crypto::Cert::Name#email_address
. - Added the
email_address:
keyword toRonin::Support::Crypto::Cert::Name.build
. - Added
Ronin::Support::Crypto::Key::EC#curve
. - Added
Ronin::Support::Crypto::Key::EC#size
. - Added
Ronin::Support::Crypto.Key
. - Added support for parsing PEM encoded DH keys in
Ronin::Support::Crypto::Key#load
. - Added
Ronin::Support::Encoding::Base36
. - Added
Ronin::Support::Encoding::Base62
. - Added the
content_type:
keyword argument toRonin::Support::Network::HTTP#request
. - Added the
accept:
keyword argument toRonin::Support::Network::HTTP#request
. - Added the
json:
keyword argument toRonin::Support::Network::HTTP#request
. - Added
Ronin::Support::Network::HTTP.post_cookies
. - Added
Ronin::Support::Network::HTTP#post_cookies
. - Added
Ronin::Support::Network::HTTP::Mixin#http_post_cookies
. - Added
Ronin::Support::Network::IP#ipv4
. - Added
Ronin::Support::Network::IPRange#first
. - Added
Ronin::Support::Network::IPRange#last
. - Added
Ronin::Support::Network::IPRange#include?
. - Added
Ronin::Support::Network::IPRange#==
. - Added
Ronin::Support::Network::IPRange#===
. - Added
Ronin::Support::Network::IPRange#size
. - Added
Ronin::Support::Network::IPRange::CIDR#first
. - Added
Ronin::Support::Network::IPRange::CIDR#last
. - Added
Ronin::Support::Network::IPRange::CIDR#include?
. - Added
Ronin::Support::Network::IPRange::CIDR#==
. - Added
Ronin::Support::Network::IPRange::CIDR#===
. - Added
Ronin::Support::Network::IPRange::CIDR#prefix_address
. - Added
Ronin::Support::Network::IPRange::CIDR#size
. - Added
Ronin::Support::Network::IPRange::Glob#first
. - Added
Ronin::Support::Network::IPRange::Glob#last
. - Added
Ronin::Support::Network::IPRange::Glob#include?
. - Added
Ronin::Support::Network::IPRange::Glob#==
. - Added
Ronin::Support::Network::IPRange::Glob#===
. - Added
Ronin::Support::Network::IPRange::Glob#size
. - Added
Ronin::Support::Network::IPRange::Range#===
. - Added
Ronin::Support::Network::IPRange::Range#size
. - Added
Ronin::Support::Network::SSL.socket
. - Added
Ronin::Support::Network::SSL.open?
. - Added
Ronin::Support::Network::SSL.connect
. - Added
Ronin::Support::Network::SSL.connect_and_send
. - Added
Ronin::Support::Network::SSL.get_cert
. - Added
Ronin::Support::Network::SSL.banner
. - Added
Ronin::Support::Network::SSL.send
. - Added
Ronin::Support::Network::SSL.server
. - Added
Ronin::Support::Network::SSL.server_session
. - Added
Ronin::Support::Network::SSL.server_socket
. - Added
Ronin::Support::Network::SSL.server_loop
. - Added
Ronin::Support::Network::SSL.accept
. - Added
Ronin::Support::Network::SSL::Mixin#ssl_server
. - Added
Ronin::Support::Network::SSL::Mixin#ssl_server_session
. - Added the
min_version:
andmax_version:
keyword arguments to all methods inRonin::Support::Network::SSL
,Ronin::Support::Network::SSL::Mixin
,Ronin::Support::Network::TLS
,Ronin::Support::Network::TLS::Mixin
,Ronin::Support::Network::HTTP
, andRonin::Support::Network::HTTP::Mixin
.- Default the SSL
min_version:
to1
.
- Default the SSL
- Added
Ronin::Support::Network::TLS.socket
. - Added
Ronin::Support::Network::TLS.open?
. - Added
Ronin::Support::Network::TLS.connect
. - Added
Ronin::Support::Network::TLS.connect_and_send
. - Added
Ronin::Support::Network::TLS.get_cert
. - Added
Ronin::Support::Network::TLS.banner
. - Added
Ronin::Support::Network::TLS.send
. - Added
Ronin::Support::Network::TLS.server
. - Added
Ronin::Support::Network::TLS.server_session
. - Added
Ronin::Support::Network::TLS.server_socket
. - Added
Ronin::Support::Network::TLS.server_loop
. - Added
Ronin::Support::Network::TLS.accept
. - Added
Ronin::Support::Network::TLS::Mixin#tls_server
. - Added
Ronin::Support::Network::TLS::Mixin#tls_server_session
. - Added the
hostname:
keyword argument to all methods inRonin::Support::Network::SSL::Mixin
andRonin::Support::Network::TLS::Mixin
methods. - Added
Ronin::Support::Network::Wildcard
. - No longer automatically require lesser used network protocols in
ronin/support/network/mixin
:ronin/support/network/ftp/mixin
ronin/support/network/smtp/mixin
ronin/support/network/esmtp/mixin
ronin/support/network/pop3/mixin
ronin/support/network/imap/mixin
- Improve the validation of IP ranges in
Ronin::Support::Network::IPRange#initialize
. - Improve the validation of IP CIDR ranges in
Ronin::Support::Network::IPRange::CIDR#initialize
. - Improve the validation of IP glob ranges in
Ronin::Support::Network::IPRange::Glob#initialize
. - No longer use deprecated
Net::HTTP
methods inRonin::Support::Network::HTTP#initialize
. - Add support for specify a SSL version of
1.3
in allRonin::Support::Network::SSL
,Ronin::Support::Network::SSL::Mixin
,Ronin::Support::Network::TLS
,Ronin::Support::Network::TLS::Mixin
,Ronin::Support::Network::HTTP
, andRonin::Support::Network::HTTP::Mixin
methods.
1.0.7
- Improved the performance of
Ronin::Support::Encoding::JS.unescape
andString#js_unescape
by 2x. - Correctly parse Unicode surrogate character pairs in JavaScript strings (ex:
"\uD83D\uDE80"
) inRonin::Support::Encoding::JS.unescape
,String#js_unescape
,Ronin::Support::Encoding::JS.unquote
, andString#js_unquote
.
1.0.6
- Fixed error messages in
Ronin::Support::Encoding::Base64.encode
andRonin::Support::Encoding::Base64.decode
. - Fixed
Ronin::Support::Network::IPRange::Glob#each
to support*
in IPv6 glob ranges. Ronin::Support::Network::TCP.connect
,Ronin::Support::Network::UDP.connect
, andRonin::Support::Network::HTTP.connect
, when given a block, now returns the block's return value.Ronin::Support::Network::TCP.connect
andRonin::Support::Network::UDP.connect
properly closes the socket when passed a block that raises an exception.
1.0.5
- Fixed a bug in
Ronin::Support::Binary::Stream::Methods#read_string
on Ruby 3.3.0.
1.0.4
- Fixed a bug in
Array#pack
where complex types (ex:[[:uint32, 4], 10]
)
were not being packed correctly. - Fixed a bug in
String#unpack
where complex types (ex:[[:uint32, 4], 10]
)
were not being unpacked correctly. - Fixed a bug in
Ronin::Support::Binary::CTypes::ObjectType#initialize
when
the object's type has an infinite size, such as an unbounded Array type. - Allow using non-RSA keys in all SSL/TLS methods.
1.0.3
Ronin::Support::Crypto::Cert::Name#entries
now returns UTF-8 encoded
Strings.Ronin::Support::Crypto::Cert.Name
now passes through
Ronin::Support::Crypto::Cert::Name
objects instead of copying them.- Fixed a bug in
Ronin::Support::Crypto::Cert.generate
when it is given a
OpenSSL::PKey::EC
signing key. - Fixed a bug in
Ronin::Support::Network::SSL::Mixin#ssl_connect
where the
OpenSSL::SSL::SSLSocket#hostname
attribute was not being set to the
host being connected to, which prevented connecting to TLS servers that use
SNI. - Fixed
Ronin::Support::Network::IP#set
to returnself
. - Fixed
Ronin::Support::Network::IP#inspect
to call the lazy-initialized
Ronin::Support::Network::IP#address
method instead of the@address
instance variable directly.
1.0.2
- Fixed a bug in
Ronin::Support::Encoding::Base32.decode
,
Ronin::Support::Encoding::Hex.unescape
,
Ronin::Support::Encoding::C.unescape
,
Ronin::Support::Encoding::JS.unescape
,
Ronin::Support::Encoding::PowerShell.unescape
,
Ronin::Support::Encoding::Ruby.unescape
,
Ronin::Support::Encoding::XML.unescape
,
Ronin::Support::Path#join
,String#encode_bytes
, andString#encode_chars
where ASCII-bit Strings were always being returned instead of UTF-8 Strings. - Fixed a bug where
Ronin::Support::Network::IP#address
was being improperly
cached. - Added missing
require
forFile.tar
,File.untar
,File.zip
, and
File.unzip
core-ext methods. - Added missing
require
forInteger#pack
andFloat#pack
core-ext methods. - No longer include
Ronin::Support::Mixin
intoKernel
which caused Mixin
methods to be included into every Class and object. - Added more example code to documentation.
- Documentation fixes.
1.0.1
Ronin::Support::Network::HTTP.connect_uri
can now infer when to enable
SSL/TLS from the given URI.Ronin::Support::Network::HTTP.connect_uri
can now use theuser
and
password
information from the given URI.- All
Ronin::Support::Network::HTTP
class methods which accept URI objects
can now accept URLs with International Domain Names (IDN). - Changed
Kernel#try
to not silently ignoreSyntaxError
exceptions. - Documentation improvements.
1.0.0
- Added
File.aes_encrypt
. - Added
File.aes_decrypt
. - Added
File.aes128_encrypt
. - Added
File.aes128_decrypt
. - Added
File.aes256_encrypt
. - Added
File.aes256_decrypt
. - Added
File.rsa_encrypt
. - Added
File.rsa_decrypt
. - Added
File.gzip
. - Added
File.gunzip
. - Added
File.tar
. - Added
File.untar
. - Added
File.zip
. - Added
File.unzip
. - Added
Integer#c_escape
. - Added
Integer#c_encode
. - Added
Integer#powershell_encode
. - Added
Integer#powershell_escape
. - Added
Integer#shell_encode
. - Added
Integer#shell_escape
. - Added
Integer#uri_form_escape
. - Added
Integer#uri_form_encode
. - Added
Integer#to_hex
. - Added
Integer#to_int8
. - Added
Integer#to_int16
. - Added
Integer#to_int32
. - Added
Integer#to_int64
. - Added
Integer#to_uint8
. - Added
Integer#to_uint16
. - Added
Integer#to_uint32
. - Added
Integer#to_uint64
. - Added
String#base16_encode
. - Added
String#base16_decode
. - Added
String#base32_encode
. - Added
String#base32_decode
. - Added
String#c_escape
. - Added
String#c_unescape
. - Added
String#c_encode
. - Added
String#c_string
. - Added
String#c_unquote
. - Added
String#hex_string
. - Added
String#hex_unquote
. - Added
String#http_encode
. - Added
String#js_encode
. - Added
String#js_string
. - Added
String#js_unquote
. - Added
String#powershell_escape
. - Added
String#powershell_unescape
. - Added
String#powershell_encode
. - Added
String#powershell_string
. - Added
String#powershell_unquote
. - Added
String#punycode_encode
. - Added
String#punycode_decode
. - Added
String#quoted_printable_escape
. - Added
String#quoted_printable_unescape
. - Added
String#ruby_escape
. - Added
String#ruby_unescape
. - Added
String#ruby_encode
. - Added
String#ruby_string
. - Added
String#ruby_unquote
. - Added
String#shell_escape
. - Added
String#shell_unescape
. - Added
String#shell_encode
. - Added
String#shell_string
. - Added
String#shell_unquote
. - Added
String#sql_unescape
. - Added
String#uri_form_escape
. - Added
String#uri_form_encode
. - Added
String#uu_encode
. - Added
String#uu_decode
. - Added
String#xml_encode
. - Added
String#aes_encrypt
. - Added
String#aes_decrypt
. - Added
String#aes128_encrypt
. - Added
String#aes128_decrypt
. - Added
String#aes256_encrypt
. - Added
String#aes256_decrypt
. - Added
String#rsa_encrypt
. - Added
String#rsa_decrypt
. - Added
String#gzip
. - Added
String#gunzip
. - Added
String#entropy
. - Added
String#homoglyph
. - Added
String#each_homoglyph
. - Added
String#homoglyphs
. - Added
String#typo
. - Added
String#each_typo
. - Added
String#typos
. - Added
Ronin::Support::Archive
. - Added
Ronin::Support::Archive::Tar
. - Added
Ronin::Support::Archive::Zip
. - Added
Ronin::Support::Archive::Mixin
. - Added
Ronin::Support::Binary::CTypes
. - Added
Ronin::Support::Binary::Array
. - Added
Ronin::Support::Binary::Memory
. - Added
Ronin::Support::Binary::Buffer
. - Added
Ronin::Support::Binary::CString
. - Added
Ronin::Support::Binary::Stack
. - Added
Ronin::Support::Binary::Stream
. - Added
Ronin::Support::Binary::Union
. - Added
Ronin::Support::Binary::Unhexdump::Parser#unpack
. - Added
Ronin::Support::Binary::Unhexdump::Parser#unhexdump
. - Added
Ronin::Support::CLI::ANSI
. - Added
Ronin::Support::CLI::Printing
. - Added
Ronin::Support::Compression
. - Added
Ronin::Support::Compression::Gzip
. - Added
Ronin::Support::Compression::Gzip::Reader
. - Added
Ronin::Support::Compression::Gzip::Writer
. - Added
Ronin::Support::Compression::Mixin
. - Added
Ronin::Support::Crypto
. - Added
Ronin::Support::Crypto::HMAC
. - Added
Ronin::Support::Crypto::Key
. - Added
Ronin::Support::Crypto::Key::DH
. - Added
Ronin::Support::Crypto::Key::DSA
. - Added
Ronin::Support::Crypto::Key::EC
. - Added
Ronin::Support::Crypto::Key::RSA
. - Added
Ronin::Support::Crypto::Mixin
. - Added
Ronin::Support::Encoding
. - Added
Ronin::Support::Encoding::Base16
. - Added
Ronin::Support::Encoding::Base32
. - Added
Ronin::Support::Encoding::Base64
. - Added
Ronin::Support::Encoding::C
. - Added
Ronin::Support::Encoding::Hex
. - Added
Ronin::Support::Encoding::HTML
. - Added
Ronin::Support::Encoding::HTTP
. - Added
Ronin::Support::Encoding::JS
. - Added
Ronin::Support::Encoding::PowerShell
. - Added
Ronin::Support::Encoding::Punycode
. - Added
Ronin::Support::Encoding::QuotedPrintable
. - Added
Ronin::Support::Encoding::Ruby
. - Added
Ronin::Support::Encoding::Shell
. - Added
Ronin::Support::Encoding::SQL
. - Added
Ronin::Support::Encoding::URI
. - Added
Ronin::Support::Encoding::UUEncoding
. - Added
Ronin::Support::Encoding::XML
. - Added
Ronin::Support::Home
. - Added
Ronin::Support::Mixin
. - Added
Ronin::Support::Network::ASN
. - Added
Ronin::Support::Network::ASN::List
. - Added
Ronin::Support::Network::DNS::IDN
. - Added
Ronin::Support::Network::DNS::Resolver
. - Added
Ronin::Support::Network::Domain
. - Added
Ronin::Support::Network::EmailAddress
. - Added
Ronin::Support::Network::Host
. - Refactored
Ronin::Support::Network::HTTP
into a class. - Added
Ronin::Support::Network::HTTP.connect
. - Added
Ronin::Support::Network::HTTP.connect_uri
. - Added
Ronin::Support::Network::HTTP#ssl?
. - Added
Ronin::Support::Network::HTTP#user_agent
. - Added
Ronin::Support::Network::HTTP#user_agent=
. - Added
Ronin::Support::Network::HTTP#cookie=
. - Added
Ronin::Support::Network::HTTP#request
. - Added
Ronin::Support::Network::HTTP#response_status
. - Added
Ronin::Support::Network::HTTP#ok?
. - Added
Ronin::Support::Network::HTTP#response_headers
. - Added
Ronin::Support::Network::HTTP#server_header
. - Added
Ronin::Support::Network::HTTP#powered_by_header
. - Added
Ronin::Support::Network::HTTP#response_body
. - Added
Ronin::Support::Network::HTTP#copy
. - Added
Ronin::Support::Network::HTTP#delete
. - Added
Ronin::Support::Network::HTTP#get
. - Added
Ronin::Support::Network::HTTP#get_headers
. - Added
Ronin::Support::Network::HTTP#get_cookies
. - Added
Ronin::Support::Network::HTTP#get_body
. - Added
Ronin::Support::Network::HTTP#head
. - Added
Ronin::Support::Network::HTTP#lock
. - Added
Ronin::Support::Network::HTTP#mkcol
. - Added
Ronin::Support::Network::HTTP#move
. - Added
Ronin::Support::Network::HTTP#options
. - Added
Ronin::Support::Network::HTTP#allowed_methods
. - Added
Ronin::Support::Network::HTTP#patch
. - Added
Ronin::Support::Network::HTTP#post
. - Added
Ronin::Support::Network::HTTP#post_headers
. - Added
Ronin::Support::Network::HTTP#post_body
. - Added
Ronin::Support::Network::HTTP#propfind
. - Added
Ronin::Support::Network::HTTP#proppatch
. - Added
Ronin::Support::Network::HTTP#put
. - Added
Ronin::Support::Network::HTTP#trace
. - Added
Ronin::Support::Network::HTTP#unlock
. - Added
Ronin::Support::Network::HTTP#close
. - Added
Ronin::Support::Network::HTTP.response_status
. - Added
Ronin::Support::Network::HTTP.ok?
. - Added
Ronin::Support::Network::HTTP.response_headers
. - Added
Ronin::Support::Network::HTTP.server_header
. - Added
Ronin::Support::Network::HTTP.powered_by_header
. - Added
Ronin::Support::Network::HTTP.response_body
. - Added
Ronin::Support::Network::HTTP.copy
. - Added
Ronin::Support::Network::HTTP.delete
. - Added
Ronin::Support::Network::HTTP.get
. - Added
Ronin::Support::Network::HTTP.get_headers
. - Added
Ronin::Support::Network::HTTP.get_cookies
. - Added
Ronin::Support::Network::HTTP.get_body
. - Added
Ronin::Support::Network::HTTP.head
. - Added
Ronin::Support::Network::HTTP.lock
. - Added
Ronin::Support::Network::HTTP.mkcol
. - Added
Ronin::Support::Network::HTTP.move
. - Added
Ronin::Support::Network::HTTP.options
. - Added
Ronin::Support::Network::HTTP.allowed_methods
. - Added
Ronin::Support::Network::HTTP.patch
. - Added
Ronin::Support::Network::HTTP.post
. - Added
Ronin::Support::Network::HTTP.post_headers
. - Added
Ronin::Support::Network::HTTP.post_body
. - Added
Ronin::Support::Network::HTTP.propfind
. - Added
Ronin::Support::Network::HTTP.proppatch
. - Added
Ronin::Support::Network::HTTP.put
. - Added
Ronin::Support::Network::HTTP.trace
. - Added
Ronin::Support::Network::HTTP.unlock
. - Added
Ronin::Support::Network::HTTP::Cookie
. - Added
Ronin::Support::Network::HTTP::Mixin
. - Added
Ronin::Support::Network::HTTP::Mixin#http_connect
. - Added
Ronin::Support::Network::HTTP::Mixin#http_connect_uri
. - Added
Ronin::Support::Network::HTTP::Mixin#http_response_status
. - Added
Ronin::Support::Network::HTTP::Mixin#http_response_headers
. - Added
Ronin::Support::Network::HTTP::Mixin#http_server_header
. - Added
Ronin::Support::Network::HTTP::Mixin#http_powered_by_header
. - Added
Ronin::Support::Network::HTTP::Mixin#http_response_body
. - Added
Ronin::Support::Network::HTTP::Mixin#http_patch
. - Added
Ronin::Support::Network::IP
. - Added
Ronin::Support::Network::IP::Mixin
. - Added
Ronin::Support::Network::IP::Mixin#public_address
. - Added
Ronin::Support::Network::IP::Mixin#public_ip
. - Added
Ronin::Support::Network::IP::Mixin#local_addresses
. - Added
Ronin::Support::Network::IP::Mixin#local_address
. - Added
Ronin::Support::Network::IP::Mixin#local_ips
. - Added
Ronin::Support::Network::IP::Mixin#local_ip
. - Added
Ronin::Support::Network::IPRange
. - Added
Ronin::Support::Network::IPRange::CIDR
. - Added
Ronin::Support::Network::IPRange::Glob
. - Added
Ronin::Support::Network::IPRange::Range
. - Added
Ronin::Support::Network::Mixin
. - Added
Ronin::Support::Network::PublicSuffix
. - Added
Ronin::Support::Network::PublicSuffix::List
. - Added
Ronin::Support::Network::SSL.context
. - Added
Ronin::Support::Network::SSL::Proxy#version
. - Added
Ronin::Support::Network::TCP
.
...
0.5.2
v0.5.2 Tagging v0.5.2