2.4.0

Expensify/App2.4.0Sep 14, 2020by kgretzky

AI Summary

This release introduces pre-phish HTML templates, proxy support, IP blacklisting, and URL parameter encryption.

Key Highlights

  • Pre-phish HTML templates allow for managed redirection via user interaction.
  • Support for routing connections via SOCKS5 and HTTP(S) proxies.
  • IP blacklist functionality for automated blocking.
  • Custom parameters can now be embedded and encrypted in phishing URLs.
  • User-Agent filtering for rejecting requests based on regex.

Breaking Changes

  • Custom parameters are no longer set in lures options and are now only sent encoded in the URL.

New Features

  • Pre-phish HTML templates with dynamic redirection.
  • Custom hostname support for phishing lures.
  • SOCKS5 and HTTP(S) proxy routing support.
  • IP blacklist with automated blocking.
  • Encrypted custom parameters in phishing URLs.
  • User-Agent filtering via regex.
  • Import and export of parameters to/from files.

Full Release Notes

- **Feature**: Create and set up pre-phish HTML templates for your campaigns. Create your HTML file and place `{lure_url_html}` or `{lure_url_js}` in code to manage redirection to the phishing page with any form of user interaction. Command: `lures edit <id> template <template>`
- **Feature**: Create customized hostnames for every phishing lure. Command: `lures edit <id> hostname <hostname>`.
- **Feature**: Support for routing connection via SOCKS5 and HTTP(S) proxies. Command: `proxy`.
- **Feature**: IP blacklist with automated IP address blacklisting and blocking on all or unauthorized requests. Command: `blacklist`
- **Feature**: Custom parameters can now be embedded encrypted in the phishing url. Command: `lures get-url <id> param1=value1 param2="value2 with spaces"`.
- **Feature**: Requests to phishing urls can now be rejected if User-Agent of the visitor doesn't match the whitelist regular expression filter for given lure. Command: `lures edit <id> ua_filter <regexp>`
- List of custom parameters can now be imported directly from file (text, csv, json). Command: `lures get-url <id> import <params_file>`.
- Generated phishing urls can now be exported to file (text, csv, json). Command: `lures get-url <id> import <params_file> export <export_file> <text|csv|json>`.
- Fixed: Requesting LetsEncrypt certificates multiple times without restarting. Subsequent requests would result in "No embedded JWK in JWS header" error.
- Removed setting custom parameters in lures options. Parameters will now only be sent encoded with the phishing url.
- Added `with_params` option to `sub_filter` allowing to enable the sub_filter only when specific parameter was set with the phishing url.
- Made command help screen easier to read.
- Improved autofill for `lures edit` commands and switched positions of `<id>` and the variable name.
- Increased the duration of whitelisting authorized connections for whole IP address from 15 seconds to 10 minutes.