mirror of
https://github.com/The-Art-of-Hacking/h4cker
synced 2024-11-22 02:43:02 +00:00
23bd69df60
# Perl Resources ## Libraries for developing CLI applications: * [App::Cmd](https://metacpan.org/pod/App::Cmd) - Write command line apps with less suffering. * [Getopt::Long](https://metacpan.org/pod/Getopt::Long) - Extended processing of command line options. ## Cloud * [AWS::CloudFront](https://metacpan.org/pod/AWS::CloudFront) - Lightweight interface to Amazon CloudFront CDN * [AWS::S3](https://metacpan.org/pod/AWS::S3) - Lightweight interface to Amazon S3 (Simple Storage Service) * [Net::Amazon::EC2](https://metacpan.org/pod/Net::Amazon::EC2) - Interface to the Amazon Elastic Compute Cloud (EC2) environment. * [Net::AWS::SES](https://metacpan.org/pod/Net::AWS::SES) - Perl extension that implements Amazon Simple Email Service (SES) client * [WebService::DigitalOcean](https://metacpan.org/pod/WebService::DigitalOcean) - Access the DigitalOcean RESTful API (v2) * [WebService::Dropbox](https://metacpan.org/pod/WebService::Dropbox) - Interface to Dropbox API ## Cryptography * [Bitcoin::Crypto](https://metacpan.org/pod/Bitcoin::Crypto) - Bitcoin cryptography in Perl * [CryptX](https://metacpan.org/pod/CryptX) - Cryptographic toolkit ## Data Format - Libraries for serializing, formatting and parsing data * [BSON](https://metacpan.org/pod/BSON) - Binary JSON format * [CBOR::Free](https://metacpan.org/pod/CBOR::Free) - Support for (CBOR)[https://tools.ietf.org/html/rfc7049], IETF’s “binary JSON” * [Data::Dumper::Simple](https://metacpan.org/pod/Data::Dumper::Simple) - Reduce and faster Data::Dumper and eval() equivalent * [Data::MessagePack](https://metacpan.org/pod/Data::MessagePack) * [JSON::PP](https://metacpan.org/pod/JSON::PP) * [JSON::XS](https://metacpan.org/pod/JSON::XS) * [Sereal](https://metacpan.org/pod/Sereal) * [Storable](https://metacpan.org/pod/Storable) * [Text::CSV](https://metacpan.org/pod/Text::CSV) * [Text::CSV_XS](https://metacpan.org/pod/Text::CSV_XS) * [Text::Markdown](https://metacpan.org/pod/Text::Markdown) * [TOML](https://metacpan.org/pod/TOML) * [XML::LibXML](https://metacpan.org/pod/XML::LibXML) * [XML::Compile::Schema](https://metacpan.org/pod/XML::Compile::Schema) - Interpret schema elements and types: create processors for XML messages. * [XML::Compile::SOAP](https://metacpan.org/pod/XML::Compile::SOAP) - Implements the SOAP 1.1 protocol, client side. * [XML::Compile::WSDL](https://metacpan.org/pod/XML::Compile::WSDL) - Use SOAP with a WSDL version 1.1 communication specification file. * [YAML](https://metacpan.org/pod/YAML) ## Database - Libraries for interacting with relational databases * [DBI](https://metacpan.org/pod/DBI) * [DBIx::Connector](https://metacpan.org/pod/DBIx::Connector) - Fast, safe DBI connection and transaction management * [DBIx::Handler](https://metacpan.org/pod/DBIx::Handler) - Fork-safe DBI handler * [DBIx::Inspector](https://metacpan.org/pod/DBIx::Inspector) * [DBIx::QueryLog](https://metacpan.org/pod/DBIx::QueryLog) * [DBIx::Sunny](https://metacpan.org/pod/DBIx::Sunny) - Useful DBI Wrapper * [DBIx::TransactionManager](https://metacpan.org/pod/DBIx::TransactionManager) ### Relational Databases * [DBD::CSV](https://metacpan.org/pod/DBD::CSV) * [DBD::Firebird](https://metacpan.org/pod/DBD::Firebird) * [DBD::mysql](https://metacpan.org/pod/DBD::mysql) * [DBD::ODBC](https://metacpan.org/pod/DBD::ODBC) - Any ODBC Driver. MS-SQL w/ placeholders * [DBD::Oracle](https://metacpan.org/pod/DBD::Oracle) - Oracle database driver for the DBI module * [DBD::Pg](https://metacpan.org/pod/DBD::Pg) - PostgreSQL driver for DBI. * [DBD::SQLite](https://metacpan.org/pod/DBD::SQLite) * [DBD::Sybase](https://metacpan.org/pod/DBD::Sybase) - Sybase and MS-SQL. No placeholders w/ MS-SQL though ### NoSQL Databases * [Cache::Memcached::Fast](https://metacpan.org/pod/Cache::Memcached::Fast) * [Mango](https://metacpan.org/pod/Mango) - Pure-Perl non-blocking I/O MongoDB driver * [Redis](https://metacpan.org/pod/Redis) * [Redis::Fast](https://metacpan.org/pod/Redis::Fast) - Perl wrapper around hiredis driver * [Search::Elasticsearch](https://metacpan.org/pod/Search::Elasticsearch) - Offical Elasticsearch client library * [UnQLite](https://metacpan.org/pod/UnQLite) ## Network *Libraries that help when you are dealing with computer networks* * [DOCSIS::ConfigFile](https://metacpan.org/pod/DOCSIS::ConfigFile) - Decodes and encodes DOCSIS config files * [NetAddr::MAC](https://metacpan.org/pod/NetAddr::MAC) - Handle MAC addresses *Libraries that help when you are working across computer networks* * [Net::SSH::Perl](https://metacpan.org/pod/Net::SSH::Perl) - SSH client implemented in Perl. * [Net::SSH2](https://metacpan.org/pod/Net::SSH2) - Wrapper for [libssh2](https://libssh2.org/). * [Net::OpenSSH](https://metacpan.org/pod/Net::OpenSSH) - Run commands remotely using the [OpenSSH](http://www.openssh.com/) client. * [Net::OpenSSH::Parallel](https://metacpan.org/pod/Net::OpenSSH::Parallel) - Run remote commands in parallel using the OpenSSH client. * [Net::SSH::Any](https://metacpan.org/pod/Net::SSH::Any) - Run remote commands using any module or binary client available. * [Net::SFTP::Foreign](https://metacpan.org/pod/Net::SFTP::Foreign) - SFTP client for remote file access. * [Object::Remote](https://metacpan.org/pod/Object::Remote) - Run Perl code on remote machines. * [Net::CLI::Interact](https://metacpan.org/pod/Net::CLI::Interact) - Automates interactive programs. * [Net::Appliance::Session](https://metacpan.org/pod/Net::Appliance::Session) - Automates interaction with appliances. ## Protocol *Protocol clients and libraries* * [Furl](https://metacpan.org/pod/Furl) - Faster HTTP(S) Client * [HTTP::Tiny](https://metacpan.org/pod/HTTP::Tiny) - Minimal and fast client. Included in the standard packages. * [LWP::UserAgent](https://metacpan.org/pod/LWP::UserAgent) - Popular HTTP(S) Client * [Net::Curl](https://metacpan.org/pod/Net::Curl) - (libcurl)[https://curl.se/libcurl/] integration * [Net::DHCP](https://metacpan.org/pod/Net::DHCP) - Send and receive DHCP packets * [Net::DNS](https://metacpan.org/pod/Net::DNS) - Resolve DNS host names * [Protocol::DBus](https://metacpan.org/pod/Protocol::DBus) - D-Bus in (pure) Perl ## Stream Manipulation *Libraries for manipulating event streams* * [RxPerl](https://metacpan.org/pod/RxPerl) - Perl implementation of [Reactive Extensions](http://reactivex.io) / rxjs ## REST Frameworks *Libraries for developing REST applications* * [Catalyst::Action::REST](https://metacpan.org/pod/Catalyst::Action::REST) - Automated REST Method Dispatching * [Dancer2::Plugin::REST](https://metacpan.org/pod/Dancer2::Plugin::REST) - A plugin for writing RESTful apps with Dancer2 * [Dancer::Plugin::REST](https://metacpan.org/pod/Dancer::Plugin::REST) - A plugin for writing RESTful apps with Dancer * [Raisin](https://metacpan.org/pod/Raisin) - a REST API micro framework for Perl * [Squatting](https://metacpan.org/pod/Squatting) - A Camping-inspired Web Microframework for Perl ## Template Engines *Libraries and tools for templating* * [HTML::Template](https://metacpan.org/pod/HTML::Template) - Templates for web pages * [Template::Alloy](https://metacpan.org/pod/Template::Alloy) - TT2/3, HT, HTE, Tmpl, and Velocity Engine * [Template::Toolkit](https://metacpan.org/pod/Template::Toolkit) - Very Popular Template Processing System * [Text::MicroTemplate](https://metacpan.org/pod/Text::MicroTemplate) - Fast, simple and safe template engine written in pure-Perl and core modules. * [Text::MicroTemplate::Extended](https://metacpan.org/pod/Text::MicroTemplate::Extended) - Extended Text::MicroTemplate. * [Text::Template](https://metacpan.org/pod/Text::Template) - Templates with embedded perl * [Text::Xslate](https://metacpan.org/pod/Text::Xslate) - Faster template engine with XS. Supports multiple syntaxes. * [Tiffany](https://metacpan.org/pod/Tiffany) - Generic interface for template engines. It makes it easy to use multiple template engines. * [Template::Magic](https://metacpan.org/pod/Template::Magic) - Magic merger of runtime values with templates. ## Testing *Libraries for testing codebases and generating test data.* ### Testing Frameworks * [Test::Base](https://metacpan.org/pod/Test::Base) - A Data Driven Testing Framework * [Test::Base::Less](https://metacpan.org/pod/Test::Base::Less) - Limited version of Test::Base * [Test::BDD::Cucumber](https://metacpan.org/pod/Test::BDD::Cucumber) - Implementation of the popular Cucumber framework in Perl * [Test::Class](https://metacpan.org/pod/Test::Class) - Class-based testing. Support "setup" and "teardown". * [Test::Deep](https://metacpan.org/pod/Test::Deep) - Test deep and complex data structures with great flexibility. * [Test::Deep::Matcher](https://metacpan.org/pod/Test::Deep::Matcher) * [Test::Harness](https://metacpan.org/pod/Test::Harness) - Run Perl standard test scripts with statistics * [Test::Kantan](https://metacpan.org/pod/Test::Kantan) - simple, flexible, fun "Testing framework" * [Test::More](https://metacpan.org/pod/Test::More) ### Test Double * [Test::Exception](https://metacpan.org/pod/Test::Exception) * [Test::Fatal](https://metacpan.org/pod/Test::Fatal) - Simple module for verifying exceptions. * [Test::Mock::Guard](https://metacpan.org/pod/Test::Mock::Guard) - Mocking package subroutines. * [Test::MockTime](https://metacpan.org/pod/Test::MockTime) * [Test::mysqld](https://metacpan.org/pod/Test::mysqld) * [Test::TCP](https://metacpan.org/pod/Test::TCP) - Launch temporary TCP Server * [Test::Time](https://metacpan.org/pod/Test::Time) - Simple module for faking system time. ### Coverage * [Devel::Cover](https://metacpan.org/pod/Devel::Cover) * [Devel::Cover::Report::Coveralls](https://metacpan.org/pod/Devel::Cover::Report::Coveralls) Report to Coveralls ## Tools *Some useful tools* * [App::Ack](https://metacpan.org/pod/App::Ack) - ack is a tool like grep, optimized for programmers. * [App::Nopaste](https://metacpan.org/pod/App::Nopaste) - Post to various pastebins from the CLI * [Daiku](https://metacpan.org/pod/Daiku) - Make for Perl. * [Data::Printer](https://metacpan.org/pod/Data::Printer) - Colored pretty-print of Perl data structures and objects. * [Reply](https://metacpan.org/pod/Reply) - Read-eval-print-loop(REPL) command-line tool. * [Riji](https://metacpan.org/pod/Riji) - Static site generator using markdown and git mainly for blogging. * [Smart::Comments](https://metacpan.org/pod/Smart::Comments) - Comments that do more than just sit there. *Libraries for developping command line applications* * [Toolbox::Simple](https://metacpan.org/pod/Toolbox::Simple) - Simplfy some common tasks in Perl. * [Script::Toolbox](https://metacpan.org/pod/Script::Toolbox) - Framework for the daily business scripts. * [Devel::Kit](https://metacpan.org/pod/Devel::Kit)- Handy toolbox of things to ease development/debugging. *Libraries for handling configuration files* * [Config::Tiny](https://metacpan.org/pod/Config::Tiny) - Read/Write .ini style files with as little code as possible ## Type checking * [MooseX::Types](https://metacpan.org/pod/MooseX::Types) - Moose types management tool * [Type::Tiny](https://metacpan.org/pod/Type::Tiny) - Tiny, yet comprehensive type library ## Video * [FFmpeg](https://metacpan.org/pod/FFmpeg) - Interface to FFmpeg, a video converter written in C * [Video::Info](https://metacpan.org/pod/Video::Info) - Retrieve video properties such as: height width codec fps * [Vlc::Engine](https://metacpan.org/pod/Vlc::Engine) - use Vlc media player with Perl * [VideoLAN::LibVLC](https://metacpan.org/pod/VideoLAN::LibVLC) - Perl bindings for libvlc.so * [Video::Generator](https://metacpan.org/pod/Video::Generator) - Perl class for video generation ## Web Frameworks *Libraries for developing Web applications* * [Amon2](https://metacpan.org/pod/Amon2) * [Catalyst](https://metacpan.org/pod/Catalyst) - Overflowing with features. Very popular. * [Dancer](https://metacpan.org/pod/Dancer) ([Official site](http://perldancer.org/)) * [Dancer2](https://metacpan.org/pod/Dancer2) * [Gantry](https://metacpan.org/pod/Gantry) - Web application framework for mod\_perl, cgi, etc. * [Kelp](https://metacpan.org/pod/Kelp) - Plack-focused Perl web framework * [Kossy](https://metacpan.org/pod/Kossy) - A Web framework with simple interface. * [Mojolicious](https://metacpan.org/pod/Mojolicious) - An all in one framework. * [Poet](https://metacpan.org/pod/Poet) - a modern Perl web framework for Mason developers ### Middlewares *Libraries for creating HTTP middlewares* * [Gazelle](https://metacpan.org/pod/Gazelle) - Preforked Plack Handler for performance freaks * [Plack](https://metacpan.org/pod/Plack) - PSGI server implementation and utilities for Web applications. * [Server::Starter](https://metacpan.org/pod/Server::Starter) - Process manager with the "graceful restart" feature. * [Starlet](https://metacpan.org/pod/Starlet) - High-performance PSGI Server * [Starman](https://metacpan.org/pod/Starman) - High-performance preforking PSGI/Plack web server * [Twiggy](https://metacpan.org/pod/Twiggy) - Event-driven PSGI application server ## Web Frameworks-Like *Somewhere between templates and full on frameworks* * [Embperl](https://metacpan.org/pod/Embperl) - Building dynamic Websites with Perl (sort of like Perl crossed with PHP) * [Mason](https://metacpan.org/pod/Mason) - Powerful, high-performance templating for the web and beyond ## Web Scraping *Libraries for extracting some information from websites* * [Web::Scraper](https://metacpan.org/pod/Web::Scraper) * [WWW::Mechanize](https://metacpan.org/pod/WWW::Mechanize) * [WWW::Mechanize::PhantomJS](https://metacpan.org/pod/WWW::Mechanize::PhantomJS) - automate the PhantomJS browser * [WWW::Scripter](https://metacpan.org/pod/distribution/WWW-Scripter/lib/WWW/Scripter.pod) - For scripting web sites that have scripts * [WWW::Selenium](https://metacpan.org/pod/WWW::Selenium) ## Network Security *Some great libraries for starting the world of Network security with Perl* * [Net::Pcap](https://metacpan.org/pod/Net::Pcap) - Interface to the pcap LBL packet capture library * [Net::Ncap](https://metacpan.org/pod/Net::Ncap) - Perl binding to the ncap network data capture library * [Net::Frame](https://metacpan.org/pod/Net::Frame) - Perl framework for frame crafting * [NetPacket](https://metacpan.org/pod/NetPacket) - assemble/disassemble network packets at the protocol level * [Net::Write](https://metacpan.org/pod/Net::Write) - portable interface to open and send raw data to network * [Net::Analysis](https://metacpan.org/pod/Net::Analysis) - Perl library for analysing network traffic * [Net::Silk](https://metacpan.org/pod/Net::Silk) - Perl's Interface to the SiLK network flow library * [Net::Inspect](https://metacpan.org/pod/Net::Inspect) - Perl library for inspection of data on various network layers * [Net::Tshark](https://metacpan.org/pod/Net::Tshark) - Perl interface for Tshark network capture utility * [Net::Sharktools](https://metacpan.org/pod/Net::Sharktools) - Wireshark's packet inspection capabilities in Perl * [File::PCAP](https://metacpan.org/pod/File::PCAP) - Read, Write and manipulate PCAP file format through Perl * [Net::P0f](https://metacpan.org/pod/Net::P0f) - Perl interface to p0f utility, usefull for finger-printing os * [Net::Pcap::Reassemble](https://metacpan.org/pod/Net::Pcap::Reassemble) - Perl IP fragment reassembly for Net::Pcap * [Nagios::NRPE](https://metacpan.org/pod/Nagios::NRPE) - Pure perl Nagios NRPE implementation * [Monitoring::Plugin](https://metacpan.org/pod/Monitoring::Plugin) - A family of perl modules to streamline writing Naemon, Nagios, Icinga or Shinken (and compatible) plugins * [Net::Connection::Sniffer](https://metacpan.org/pod/Net::Connection::Sniffer) - practical Perl library for MiTM connections * [Net::ARP](https://metacpan.org/pod/Net::ARP) - Library for crafting ARP packets * [SNMPMonitor](https://metacpan.org/pod/SNMPMonitor) - Perl extension for writing SNMP Monitors * [Net::LibNIDS](https://metacpan.org/pod/Net::LibNIDS) - Perl interface for the Network Intrusion Detection System library * [Parse::Snort](https://metacpan.org/pod/Parse::Snort) - Perl Snort rules parser * [Net::Wireless::802_11::WPA::CLI](https://metacpan.org/pod/Net::Wireless::802_11::WPA::CLI) - Perl WPA_CLI interface * [IO::Socket::SSL::Intercept](https://metacpan.org/IO::Socket::SSL::Intercept) - library for intercepting SSL connections through Perl ## Metadata Forensics *General Metadata files parser, usefull during forensics investigations* * [Image::ExifTool](https://metacpan.org/pod/distribution/Image-ExifTool/exiftool) - General metadata parser and viewer framework ## Reverse Engineering *Libraries used for disassembly assembly operations, ELF files and bytecode* * [Disassembly](https://metacpan.org/pod/distribution/B-C/script/disassemble) - Decompiles binary bytecode to readable and recompilable bytecode assembler * [Python::Bytecode](https://metacpan.org/pod/Python::Bytecode) - Parse Python bytecode * [B::Bytecode](https://metacpan.org/pod/B::Bytecode) - Compiles a Perl script into a bytecode format that could be loaded later * [Perf::ARM](https://metacpan.org/pod/Perf::ARM) - Use ARM instructions in Perl * [Asm::Z80::Table](https://metacpan.org/pod/Asm::Z80::Table) - assemble / disassemble all Z80 CPU assembly instructions with Perl * [X86::Disasm](https://metacpan.org/pod/X86::Disasm) - Disassemble Intel x86 instructions with Perl * [Disassemble::X86](https://metacpan.org/pod/Disassemble::X86) - Another library for disassembe X86 instructions * [X86::Udis86](https://metacpan.org/pod/X86::Udis86) - Interface for the C Udis disassembler * [Asm::X86](https://metacpan.org/pod/Asm::X86) - List of instructions and registers of x86-compatible processors, validating and converting instructions and memory references * [ELF::Writer](https://metacpan.org/pod/ELF::Writer) - write and read executable ELF files
1 B
1 B