Skip to content

Latest commit

 

History

History
209 lines (183 loc) · 16.9 KB

CHANGELOG.md

File metadata and controls

209 lines (183 loc) · 16.9 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Fixed

Added

  • Implemented a JSON file save example (031cecd)

Changed

2.1.0 - 2023-04-01

Fixed

  • Properly log error and stop execution for non whitelisted IP

Changed

  • Updated syntax in DiscordAction

2.0.0 - 2021-07-13

Fixed

  • Better protocol check in urlanalyzer (a377aee)
  • Use sys.exit() instead of exit() (2d6cb67)
  • Add missing parameter 'unique_matches' for match function (c9a2e99)

Added

  • Implemented ExactWordAnalyzer to match words exactly rather than partially (08ebdbc)
  • Implemented BasicAnalyzer.unique(), which can be used to filter out duplicate matches from BasicAnalyzer.match()
  • Ability to enforce IP version for the connection to pastepwn (3483566)

Changed

  • BREAKING: Dropped support for Python < 3.6

1.3.1 - 2020-06-20

Fixed

  • The PastebinScraper could not recognize error messages with IPv6 addresses.

Docs

  • Started adding some readme files for the subfolders to explain certain parts of the code better

1.3.0 - 2020-03-03

Added

  • Implemented base64analyzer, which matches if a found base64 string decodes to valid ascii (b535781)
  • Implemented IrcAction - the previous implementation was not working (546b87f)

Changed

  • SaveFileAction now got a parameter to set the file ending and a template (c3d75f7)

Fixed

  • Analyzers now check if a passed action is a subclass of BasicAction, which prevents issues such as #175
  • The DiscordAction now also uses the templating engine - it was forgotten in a previous update (#176)
  • The SyslogAction now also uses the templating engine - it was forgotten in a previous update (54d3652)
  • The SaveFileAction does now store each paste in a different file as it should be (#179)
  • The IrcAction did not send the correct data. This was fixed and eventually the action was rewritten from scratch (see "Added")

1.2.0 - 2020-02-05

Added

  • Analyzers can now return a boolean or a list of matched results
  • Actions now get passed a list of matched results by the analyzer
  • New Analyzer: PasteTitleAnalyzer - Analyzer to match Paste titles via regex
  • New Analyzer: IPv4AddressAnalyzer - Match IPv4 addresses via regex
  • Subclasses of RegexAnalyzer now got a method def verify(results) that can be overwritten to filter matches, so you only return valid results
  • EmailPasswordPairAnalyzer has now an optional parameter min_amount to specify how many pairs must be found to actually match
  • Base64Analyzer got an optional parameter min_len to specify how long a detected string must be at least to actually match
  • Logical operators for analyzers - you can now connect multiple analyzers with logical operators to specify more precisely when a paste should match (aed2dbf)

Changed

  • Analyzers can now return a boolean, or a list of matched results
  • Actions now get passed a list of matched results by the analyzer and can
  • IBANAnalyzer will now filter out wrong IBANs and return a list of validated IBANs if the validate parameter is set to True

Fixed

  • Using non-capturing groups in regex for various analyzers. This is done so that the analyzer can return a matched string and at the same time it fixed some issues with analyzers not matching properly

1.1.0 - 2019-11-11

Added

  • Implement TemplatingEngine for filling template strings with content (8481036)
  • Add custom request headers in request.py (5043e0c)
  • Add flags to RegexAnalyzer to handle e.g. case-insensitive matching (ddd0dca)
  • logger object now usable from within any analyzer (d21532e)
  • Implement logical analyzers (and/or) (94fc691)
  • Implement listify method to create lists from a given input (e935122)
  • Implement support for onstart handlers (25b5313)
  • Create docker-compose file (83014be)
  • New Action: TwitterAction for posting tweets when a paste matched (2056c3c)
  • New Action: DiscordAction (eafdc1c)
  • New Action: MISPAction (8dabe5d)
  • New Action: EmailAction (9cfba96)
  • New Action: IrcAction (fc1d1ab)
  • New Analyzer: PrivateKeyAnalyzer (a8746f1)
  • New Analyzer: DatabaseDumpAnalyzer (0aa63ad)
  • New Analyzer: DBConnAnalyzer (e940630)
  • New Analyzer: PhoneNumberAnalyzer (9ff58b9)
  • New Analyzer: OriginKeyAnalyzer (d0d715d)
  • New Analyzer: SteamKeyAnalyzer (27273a6)
  • New Analyzer: UplayKeyAnalyzer (38097ac)
  • New Analyzer: EpicKeyAnalyzer (da122da)
  • New Analyzer: BattleNetKeyAnalyzer (8927204)
  • New Analyzer: MicrosoftKeyAnalyzer (8927204)
  • New Analyzer: AWSAccessKeyAnalyzer (ebc6eab)
  • New Analyzer: AWSSecretKeyAnalyzer (d07021a)
  • New Analyzer: SlackWebhookAnalyzer (c40c364)
  • New Analyzer: GoogleOAuthKeyAnalyzer (fbfb8bf)
  • New Analyzer: FacebookAccessTokenAnalyzer (bb51e3e)
  • New Analyzer: Base64Analyzer (8d50fbe)
  • New Analyzer: AdobeKeyAnalyzer (4e52345)
  • New Analyzer: EmailPasswordPairAnalyzer (f0af9cb)
  • New Analyzer: HashAnalyzer (87080c2)
  • New Analyzer: SlackTokenAnalyzer (d686169)
  • New Analyzer: MailChimpApiKeyAnalyzer (2e5302d)
  • New Analyzer: MegaLinkAnalyzer (c884cb6)
  • New Analyzer: StripeApiKeyAnalyzer (f9bd202)
  • New Analyzer: AzureSubscriptionKeyAnalyzer (b010cb5)
  • New Analyzer: GoogleApiKeyAnalyzer (635a5e4)

Changed

  • Add pastebinscraper by default (d00fc83)
  • Remove unused custom_payload from DiscordAction (7b13d75)

Fixed

  • SHA hash analyzer can now accept multiple length hashes (494d1af)
  • Use empty string if paste.body is set to None in URL- and IBANAnalyzer (09f6763)
  • Include some changes when creating a sqlite file (0eb3504)

1.0.16 - 2019-09-08

Added

  • Perform checks on pastebin responses to catch errors (01f865e)
  • If pastes are not ready for downloading, requeue them (01f865e)

1.0.15 - 2019-09-04

Added

  • Ability to search for multiple words in single WordAnalyzer (d2a7e09)
  • Ability to restart running scrapers after adding a new one (de99892)
  • Ability to register error handlers (1fae47e)

Fixed

  • Check if paste is None before analyzing it (2fd7b39, f4bfa46)
  • Broken behaviour for WordAnalyzer blacklist (df2dd5b)
  • Reduced sleep time in order to shut down pastepwn faster (55bb18d)
  • Add check in GenericAnalyzer if parameter is callable (781d6d0)
  • WordAnalyzer not matching in case-sensitive mode (8762ddd)

1.0.14 - 2019-09-04

Added

  • Parameter for setting up storing of all downloaded pastes (e04f476)

Fixed

  • Broken path to requirements.txt in setup.py (cc7edf4)
  • Missing column 'syntax' in sqlite table layout (3fb3821)
  • Broken variable substitution for sqlite statement (cf49963)
  • Allow writing to sqlite db from multiple threads (f47ec62)

1.0.13 - 2019-09-02

Added

  • Pastepwn got a logo! (57e6665)
  • Use travis tag when building pypi package (bda3c7e)

Fixed

  • Broken paths in setup.py (42eca9b)

1.0.12 - 2019-02-20

Added

  • New add_action(self, action) method in BasicAnalyzer to add actions on the fly (4b5df12)
  • Created a Dockerfile (b5334ff)
  • Implement possibility to execute multiple actions when a paste matches (ae6055e)
  • Method to create database on a mysql server (dbfecce)
  • Stop method for pastedispatcher
  • Stop method in actionhandler ()

Changed

  • Minimum supported Python version is now 3.5, because that's what we run travis on (7b8bae2)

Fixed

  • Use better sqlite create table statement (9378dad)
  • MySQL Port setting did not work (d498088)
  • Wrong MySQL syntax in create statements (6ae6508)

1.0.11 - 2019-01-09

Fixed

  • Several issues with MySQL adapter (37c8f36)

1.0.10 - 2019-01-06

Added

  • Template support for Telegram messages (3f11cb5)

Fixed

  • Travis config for pypi (c2608a0)
  • Wrong MySQL syntax in create statement (b3afc3d)

1.0.9-travis - 2018-10-26

Added

  • Travis badge in Readme
  • Usage description in Readme

1.0.8-travis - 2018-10-26

Added

1.0.8 - 2018-10-22

First stable release