elementals 1.3.2__tar.gz → 1.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {elementals-1.3.2 → elementals-1.4.0}/LICENSE +1 -1
- elementals-1.4.0/PKG-INFO +43 -0
- {elementals-1.3.2 → elementals-1.4.0}/README.md +36 -36
- {elementals-1.3.2 → elementals-1.4.0}/elementals/__init__.py +5 -5
- {elementals-1.3.2 → elementals-1.4.0}/elementals/anchor.py +23 -23
- {elementals-1.3.2 → elementals-1.4.0}/elementals/logger.py +264 -249
- {elementals-1.3.2 → elementals-1.4.0}/elementals/progress_bar.py +106 -106
- {elementals-1.3.2 → elementals-1.4.0}/elementals/prompter.py +148 -149
- {elementals-1.3.2 → elementals-1.4.0}/elementals/status_bar.py +105 -105
- elementals-1.4.0/elementals.egg-info/PKG-INFO +43 -0
- {elementals-1.3.2 → elementals-1.4.0}/elementals.egg-info/not-zip-safe +1 -1
- {elementals-1.3.2 → elementals-1.4.0}/elementals.egg-info/requires.txt +1 -0
- {elementals-1.3.2 → elementals-1.4.0}/setup.cfg +12 -12
- {elementals-1.3.2 → elementals-1.4.0}/setup.py +51 -53
- {elementals-1.3.2 → elementals-1.4.0}/test/test_all.py +52 -52
- elementals-1.4.0/test/test_progress_bar.py +15 -0
- {elementals-1.3.2 → elementals-1.4.0}/test/test_prompter.py +27 -27
- elementals-1.4.0/test/test_status_bar.py +9 -0
- elementals-1.3.2/PKG-INFO +0 -49
- elementals-1.3.2/elementals.egg-info/PKG-INFO +0 -49
- elementals-1.3.2/test/test_progress_bar.py +0 -15
- elementals-1.3.2/test/test_status_bar.py +0 -9
- {elementals-1.3.2 → elementals-1.4.0}/elementals.egg-info/SOURCES.txt +0 -0
- {elementals-1.3.2 → elementals-1.4.0}/elementals.egg-info/dependency_links.txt +0 -0
- {elementals-1.3.2 → elementals-1.4.0}/elementals.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: elementals
|
|
3
|
+
Version: 1.4.0
|
|
4
|
+
Summary: Basic utilities for CTF (or exploit) scripts
|
|
5
|
+
Home-page: https://github.com/eyalitki/elementals
|
|
6
|
+
Author: Eyal Itkin
|
|
7
|
+
Author-email: eyal.itkin@gmail.com
|
|
8
|
+
License: MIT
|
|
9
|
+
Description: # elementals
|
|
10
|
+
Python package with basic utilities for CTF scripts (works well for exploit PoCs too).
|
|
11
|
+
|
|
12
|
+
## Install
|
|
13
|
+
```pip install elementals```
|
|
14
|
+
|
|
15
|
+
## Read The Docs
|
|
16
|
+
https://elementals.readthedocs.io/
|
|
17
|
+
|
|
18
|
+
## Github
|
|
19
|
+
https://github.com/eyalitki/elementals
|
|
20
|
+
|
|
21
|
+
## Brief
|
|
22
|
+
The **elementals** python package is a utility package with handy tools for CTF scripts and PoC-style scripts. What was first implemented for personal use in small research scripts was now upgraded to be used by security researchers as a lightweight substitute to the famous pwntools package.
|
|
23
|
+
|
|
24
|
+
The features included in **elementals** are:
|
|
25
|
+
* **Logger:** Basic (logging based) logger - configured and ready to use
|
|
26
|
+
* **Prompter:** Metasploit based stdout wrapper for the logger
|
|
27
|
+
* **ProgressBar:** User-friendly graphical progress bar
|
|
28
|
+
* **StatusBar:** User-friendly graphical status bar
|
|
29
|
+
* **createAnchor:** Creates a time-stamped output directory for all script outputs
|
|
30
|
+
* **hexDump:** Stylized hex dump for binary blobs / strings
|
|
31
|
+
|
|
32
|
+
## Used by
|
|
33
|
+
The **elementals** package is used in most of my scripts and also in my public Github projects:
|
|
34
|
+
* **Scout Debugger** - https://github.com/CheckPointSW/Scout
|
|
35
|
+
* **Karta (IDA Plugin)** - https://github.com/CheckPointSW/Karta
|
|
36
|
+
|
|
37
|
+
## References
|
|
38
|
+
* E-mail: eyal dot itkin at gmail dot com
|
|
39
|
+
Platform: UNKNOWN
|
|
40
|
+
Classifier: Programming Language :: Python
|
|
41
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
42
|
+
Classifier: Operating System :: OS Independent
|
|
43
|
+
Description-Content-Type: text/markdown
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
[](https://travis-ci.org/eyalitki/elementals) [](https://readthedocs.org/projects/elementals)
|
|
2
|
-
|
|
3
|
-
# elementals
|
|
4
|
-
Python package with basic utilities for CTF scripts (works well for exploit PoCs too).
|
|
5
|
-
|
|
6
|
-
## Install
|
|
7
|
-
```pip install elementals```
|
|
8
|
-
|
|
9
|
-
## Read The Docs
|
|
10
|
-
https://elementals.readthedocs.io/
|
|
11
|
-
|
|
12
|
-
## Brief
|
|
13
|
-
The **elementals** python package is a utility package with handy tools for CTF scripts and PoC-style scripts. What was first implemented for personal use in small research scripts was now upgraded to be used by security researchers as a lightweight substitute to the famous pwntools package.
|
|
14
|
-
|
|
15
|
-
The features included in **elementals** are:
|
|
16
|
-
* **Logger:** Basic (logging based) logger - configured and ready to use
|
|
17
|
-
* **Prompter:** Metasploit based stdout wrapper for the logger
|
|
18
|
-
* **ProgressBar:** User-friendly graphical progress bar
|
|
19
|
-
* **StatusBar:** User-friendly graphical status bar
|
|
20
|
-
* **createAnchor:** Creates a time-stamped output directory for all script outputs
|
|
21
|
-
* **hexDump:** Stylized hex dump for binary blobs / strings
|
|
22
|
-
|
|
23
|
-
Here is a screenshot from an example script with most of the features:
|
|
24
|
-

|
|
25
|
-
And here is the log that is stored behind the scenes:
|
|
26
|
-

|
|
27
|
-
Example of the hexDump()'s output:
|
|
28
|
-

|
|
29
|
-
|
|
30
|
-
## Used by
|
|
31
|
-
The **elementals** package is used in most of my scripts and also in my public Github projects:
|
|
32
|
-
* **Scout Debugger** - https://github.com/CheckPointSW/Scout
|
|
33
|
-
* **Karta (IDA Plugin)** - https://github.com/CheckPointSW/Karta
|
|
34
|
-
|
|
35
|
-
## References
|
|
36
|
-
* E-mail: eyal dot itkin at gmail dot com
|
|
1
|
+
[](https://travis-ci.org/eyalitki/elementals) [](https://readthedocs.org/projects/elementals)
|
|
2
|
+
|
|
3
|
+
# elementals
|
|
4
|
+
Python package with basic utilities for CTF scripts (works well for exploit PoCs too).
|
|
5
|
+
|
|
6
|
+
## Install
|
|
7
|
+
```pip install elementals```
|
|
8
|
+
|
|
9
|
+
## Read The Docs
|
|
10
|
+
https://elementals.readthedocs.io/
|
|
11
|
+
|
|
12
|
+
## Brief
|
|
13
|
+
The **elementals** python package is a utility package with handy tools for CTF scripts and PoC-style scripts. What was first implemented for personal use in small research scripts was now upgraded to be used by security researchers as a lightweight substitute to the famous pwntools package.
|
|
14
|
+
|
|
15
|
+
The features included in **elementals** are:
|
|
16
|
+
* **Logger:** Basic (logging based) logger - configured and ready to use
|
|
17
|
+
* **Prompter:** Metasploit based stdout wrapper for the logger
|
|
18
|
+
* **ProgressBar:** User-friendly graphical progress bar
|
|
19
|
+
* **StatusBar:** User-friendly graphical status bar
|
|
20
|
+
* **createAnchor:** Creates a time-stamped output directory for all script outputs
|
|
21
|
+
* **hexDump:** Stylized hex dump for binary blobs / strings
|
|
22
|
+
|
|
23
|
+
Here is a screenshot from an example script with most of the features:
|
|
24
|
+

|
|
25
|
+
And here is the log that is stored behind the scenes:
|
|
26
|
+

|
|
27
|
+
Example of the hexDump()'s output:
|
|
28
|
+

|
|
29
|
+
|
|
30
|
+
## Used by
|
|
31
|
+
The **elementals** package is used in most of my scripts and also in my public Github projects:
|
|
32
|
+
* **Scout Debugger** - https://github.com/CheckPointSW/Scout
|
|
33
|
+
* **Karta (IDA Plugin)** - https://github.com/CheckPointSW/Karta
|
|
34
|
+
|
|
35
|
+
## References
|
|
36
|
+
* E-mail: eyal dot itkin at gmail dot com
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
from .anchor import createAnchor
|
|
2
|
-
from .logger import Logger, hexDump
|
|
3
|
-
from .progress_bar import ProgressBar
|
|
4
|
-
from .prompter import Prompter
|
|
5
|
-
from .status_bar import StatusBar
|
|
1
|
+
from .anchor import createAnchor
|
|
2
|
+
from .logger import Logger, hexDump
|
|
3
|
+
from .progress_bar import ProgressBar
|
|
4
|
+
from .prompter import Prompter
|
|
5
|
+
from .status_bar import StatusBar
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import time
|
|
2
|
-
import os
|
|
3
|
-
|
|
4
|
-
default_timestamp = "%Y_%m_%d - %H-%M-%S"
|
|
5
|
-
|
|
6
|
-
def createAnchor(base_path, name_format, move_inside=False):
|
|
7
|
-
"""Create an anchor directory for the running script's outputs.
|
|
8
|
-
|
|
9
|
-
Args:
|
|
10
|
-
base_path (str): basic FS path in which the anchor directory will be created
|
|
11
|
-
name_format (str): name format for the created anchor, expects an "%s" for the generated timestamp
|
|
12
|
-
move_inside (bool, optional): True iff should move the current directory to the anchor (False by default)
|
|
13
|
-
|
|
14
|
-
Return Value:
|
|
15
|
-
absolute path to the created anchor directory
|
|
16
|
-
"""
|
|
17
|
-
abs_base = os.path.abspath(base_path)
|
|
18
|
-
anchor_dir = name_format % time.strftime(default_timestamp)
|
|
19
|
-
abs_anchor = os.path.join(abs_base, anchor_dir)
|
|
20
|
-
os.mkdir(abs_anchor)
|
|
21
|
-
if move_inside:
|
|
22
|
-
os.chdir(abs_anchor)
|
|
23
|
-
return abs_anchor
|
|
1
|
+
import time
|
|
2
|
+
import os
|
|
3
|
+
|
|
4
|
+
default_timestamp = "%Y_%m_%d - %H-%M-%S"
|
|
5
|
+
|
|
6
|
+
def createAnchor(base_path, name_format, move_inside=False):
|
|
7
|
+
"""Create an anchor directory for the running script's outputs.
|
|
8
|
+
|
|
9
|
+
Args:
|
|
10
|
+
base_path (str): basic FS path in which the anchor directory will be created
|
|
11
|
+
name_format (str): name format for the created anchor, expects an "%s" for the generated timestamp
|
|
12
|
+
move_inside (bool, optional): True iff should move the current directory to the anchor (False by default)
|
|
13
|
+
|
|
14
|
+
Return Value:
|
|
15
|
+
absolute path to the created anchor directory
|
|
16
|
+
"""
|
|
17
|
+
abs_base = os.path.abspath(base_path)
|
|
18
|
+
anchor_dir = name_format % time.strftime(default_timestamp)
|
|
19
|
+
abs_anchor = os.path.join(abs_base, anchor_dir)
|
|
20
|
+
os.mkdir(abs_anchor)
|
|
21
|
+
if move_inside:
|
|
22
|
+
os.chdir(abs_anchor)
|
|
23
|
+
return abs_anchor
|