|
7 | 7 | StringSifter is a machine learning tool that automatically ranks strings based on their relevance for malware analysis. |
8 | 8 |
|
9 | 9 | # Quick Links |
10 | | -* [Technical Blogpost - *Learning to Rank Strings Output for Speedier Malware Analysis*](https://www.fireeye.com/blog/threat-research/2019/05/learning-to-rank-strings-output-for-speedier-malware-analysis.html) |
11 | | -* [Announcement Blogpost - *Open Sourcing StringSifter*](https://www.fireeye.com/blog/threat-research/2019/09/open-sourcing-stringsifter.html) |
| 10 | +* [Technical Blogpost - *Learning to Rank Strings Output for Speedier Malware Analysis*](https://www.mandiant.com/resources/blog/learning-rank-strings-output-speedier-malware-analysis) |
| 11 | +* [Announcement Blogpost - *Open Sourcing StringSifter*](https://www.mandiant.com/resources/blog/open-sourcing-stringsifter) |
12 | 12 | * [DerbyCon Talk - *StringSifter: Learning to Rank Strings Output for Speedier Malware Analysis*](https://youtu.be/pLiaVzOMJSk) |
13 | 13 | * [StringSifter releases on PyPi](https://pypi.org/project/stringsifter/) |
14 | 14 |
|
15 | 15 | # Usage |
16 | 16 |
|
17 | | -StringSifter requires Python version 3.6 or newer. Run the following commands to get the code, run unit tests, and use the tool: |
| 17 | +StringSifter requires Python version 3.9 or newer. Run the following commands to get the code, run unit tests, and use the tool: |
18 | 18 |
|
19 | 19 | ## Installation |
20 | 20 |
|
21 | | -Use `pip` to get running immediately. Choose the major version corresponding to your version of python: |
22 | | - |
23 | | -| Python Version | Stringsifter Version | Branch | Example Pip Command | |
24 | | -| -------------- | -------------------- | --------- | ------------------------------- | |
25 | | -| 3.8+ | 2.x | master | `pip install stringsifter~=2.0` | |
26 | | -| 3.6, 3.7 | 1.x | python3.7 | `pip install stringsifter~=1.0` | |
| 21 | +```sh |
| 22 | +pip install stringsifter |
| 23 | +``` |
27 | 24 |
|
28 | | -For development, check out the correct branch for your Python version or stay on master for the latest supported version. Then use `pipenv`: |
| 25 | +For development, use [poetry](https://python-poetry.org/): |
29 | 26 | ```sh |
30 | | -git clone https://github.com/fireeye/stringsifter.git |
| 27 | +git clone https://github.com/mandiant/stringsifter.git |
31 | 28 | cd stringsifter |
32 | | -git checkout python3.7 #Optional |
33 | | -pipenv install --dev |
| 29 | +poetry install --with dev |
34 | 30 | ``` |
35 | 31 |
|
36 | 32 | ## Running Unit Tests |
37 | 33 |
|
38 | 34 | To run unit tests from the StringSifter installation directory: |
39 | 35 |
|
40 | 36 | ```sh |
41 | | -pipenv run tests |
| 37 | +poetry run tests -v |
42 | 38 | ``` |
43 | 39 |
|
44 | 40 | ## Running from the Command Line |
@@ -139,4 +135,4 @@ We use [GitHub Issues](https://github.com/fireeye/stringsifter/issues) for posti |
139 | 135 | - Thanks to the FireEye Data Science (FDS) and FireEye Labs Reverse Engineering (FLARE) teams for review and feedback. |
140 | 136 | - StringSifter was designed and developed by Philip Tully (FDS), Matthew Haigh (FLARE), Jay Gibble (FLARE), and Michael Sikorski (FLARE). |
141 | 137 | - The StringSifter logo was designed by Josh Langner (FLARE). |
142 | | -- `flarestrings` is derived from the excellent tool [FLOSS](https://github.com/fireeye/flare-floss/blob/master/floss/strings.py#L7-L9). |
| 138 | +- `flarestrings` is derived from the excellent tool [FLOSS](https://github.com/mandiant/flare-floss). |
0 commit comments