Skip to content

Commit d3bbcf0

Browse files
authored
Merge pull request #5 from redBorder/development
Release 0.3.0
2 parents 5f6f19b + 18b227a commit d3bbcf0

File tree

6 files changed

+466
-17
lines changed

6 files changed

+466
-17
lines changed

README.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# redborder-malware-pythonpyenv
22

33
This project install pyenv with python 3.11.13 and virtual environment
4-
for dependencies of airlfow.
4+
for dependencies of airlfow and cape
55

66
## Build
77
```
@@ -18,3 +18,8 @@ dnf install redborder-malware-pythonpyenv
1818
source /opt/airflow/venv/bin/activate
1919
python -c 'import crewai; print('\''CrewAI version:'\'', crewai.__version__)'
2020
```
21+
22+
## Testing cape virtual environment
23+
```
24+
/opt/redborder-cape/venv/bin/python -c 'import yara; print('\''yara version:'\'', yara.__version__)'
25+
```

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.2.0
1+
0.3.0

packaging/rpm/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ archive: SOURCES
2323
git archive --prefix=$(PACKAGE_NAME)-$(VERSION)/ \
2424
-o packaging/rpm/SOURCES/$(PACKAGE_NAME)-$(VERSION).tar.gz HEAD
2525

26-
2726
build_prepare: archive
2827
mkdir -p $(RESULT_DIR)
2928
rm -f $(RESULT_DIR)/$(PACKAGE_NAME)*.rpm
3029
cp *_requirements.txt SOURCES
30+
cp pyproject.toml SOURCES
3131

3232
srpm: build_prepare
3333
/usr/bin/mock \
Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
alembic==1.9.4
2+
annotated-types==0.7.0
3+
anyio==4.8.0
4+
asgiref==3.8.1
5+
attrs==25.1.0
6+
autobahn==24.4.2
7+
automat==24.8.1
8+
bcrypt==4.2.1
9+
beautifulsoup4==4.12.3
10+
bs4==0.0.1
11+
cachetools==5.5.1
12+
cape-parsers==0.1.36
13+
capstone==5.0.5
14+
certifi==2025.1.31
15+
cffi==1.17.1
16+
channels==3.0.5
17+
chardet==4.0.0
18+
click==8.1.8
19+
colorama==0.4.6
20+
colorclass==2.2.2
21+
constantly==23.10.4
22+
crispy-bootstrap4==2024.10
23+
crudini==0.9.5
24+
cryptography==44.0.1
25+
cxxfilt==0.3.0
26+
cython==3.0.11
27+
daphne==3.0.2
28+
django-allauth==65.3.1
29+
django-crispy-forms==2.3
30+
django-csp==3.8
31+
django-extensions==3.2.3
32+
django-ratelimit==4.1.0
33+
django-recaptcha==4.0.0
34+
django-settings-export==1.2.1
35+
django==5.1.9
36+
djangorestframework==3.15.2
37+
dncil==1.0.2
38+
dnfile==0.15.1
39+
dnspython==2.7.0
40+
dpkt==1.9.6
41+
easygui==0.98.3
42+
editorconfig==0.17.0
43+
exceptiongroup==1.2.2
44+
filelock==3.17.0
45+
flare-capa==9.1.0
46+
funcy==2.0
47+
future==1.0.0
48+
gevent==24.2.1
49+
greenlet==3.0.3
50+
gunicorn==23.0.0
51+
h11==0.14.0
52+
httptools==0.6.4
53+
humanize==4.11.0
54+
hyperlink==21.0.0
55+
ida-netnode==3.0
56+
ida-settings==2.1.0
57+
idna==3.10
58+
incremental==24.7.2
59+
iniparse==0.5
60+
intervaltree==3.1.0
61+
jinja2==3.1.6
62+
jsbeautifier==1.15.1
63+
lnkparse3==1.5.0
64+
lxml==5.3.0
65+
mako==1.3.8
66+
markdown-it-py==3.0.0
67+
markupsafe==3.0.2
68+
maxminddb==2.6.3
69+
mdurl==0.1.2
70+
msgpack==1.0.8
71+
msgspec==0.19.0
72+
msoffcrypto-tool==5.4.2
73+
netstruct==1.1.2
74+
networkx==3.4.2
75+
olefile==0.47
76+
oletools==0.60.2
77+
orjson==3.10.15
78+
packaging==24.2
79+
paramiko==3.5.0
80+
pcodedmp==1.2.6
81+
pebble==5.1.0
82+
peepdf-3==5.0.0
83+
pefile==2024.8.26
84+
pillow==11.1.0
85+
prettytable==3.14.0
86+
protobuf==5.29.3
87+
psutil==6.1.1
88+
psycopg2-binary==2.9.10
89+
pyasn1-modules==0.3.0
90+
pyasn1==0.5.1
91+
pycparser==2.22
92+
pycryptodomex==3.21.0
93+
pydantic-core==2.27.2
94+
pydantic==2.10.6
95+
pydeep2==0.5.1
96+
pyelftools==0.31
97+
pygal==2.4.0
98+
pygments==2.19.1
99+
pyguacamole==0.11
100+
pymongo==4.11
101+
pynacl==1.5.0
102+
pyopenssl==25.0.0
103+
pyparsing==3.2.1
104+
pypdf==5.2.0
105+
pyre2-updated==0.3.8
106+
pysocks==1.7.1
107+
python-dateutil==2.9.0.post0
108+
python-dotenv==1.0.1
109+
python-flirt==0.9.2
110+
python-magic==0.4.27
111+
python-tlsh==4.5.0
112+
python-whois==0.9.5
113+
pythonaes==1.0
114+
pytz==2021.1
115+
pyyaml==6.0.2
116+
pyzipper==0.3.6
117+
rat-king-parser==4.1.6
118+
requests-file==2.1.0
119+
requests==2.32.4
120+
rich==13.9.4
121+
ruamel-yaml-clib==0.2.12
122+
ruamel-yaml==0.18.10
123+
ruff==0.9.4
124+
service-identity==24.2.0
125+
setproctitle==1.3.2
126+
sflock2==0.3.76
127+
six==1.17.0
128+
sniffio==1.3.1
129+
sortedcontainers==2.4.0
130+
soupsieve==2.6
131+
sqlalchemy-utils==0.41.1
132+
sqlalchemy==2.0.41
133+
sqlparse==0.5.3
134+
stpyv8==13.1.201.22
135+
tldextract==5.1.3
136+
tomli==2.2.1
137+
twisted==24.11.0
138+
txaio==23.1.1
139+
typing-extensions==4.12.2
140+
tzdata==2025.1
141+
unicorn==2.1.1
142+
urllib3==2.3.0
143+
uvicorn==0.18.3
144+
uvloop==0.21.0
145+
viv-utils==0.8.0
146+
vivisect==1.2.1
147+
watchfiles==1.0.4
148+
wcwidth==0.2.13
149+
websockets==14.2
150+
werkzeug==3.1.3
151+
win-unicode-console==0.5
152+
xmltodict==0.14.2
153+
yara-python==4.5.1
154+
zope-event==5.0
155+
zope-interface==7.2
156+
certvalidator==0.11.1
157+
asn1crypto==1.5.1
158+
mscerts==2025.8.29

packaging/rpm/pyproject.toml

Lines changed: 189 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,189 @@
1+
[tool.poetry]
2+
name = "CAPEv2"
3+
version = "0.1.0"
4+
description = "CAPE: Malware Configuration And Payload Extraction"
5+
authors = ["Kevin O'Reilly <[email protected]>", "doomedraven <[email protected]>"]
6+
license = "MIT"
7+
package-mode = false
8+
9+
[tool.poetry.dependencies]
10+
python = ">=3.10, <4.0"
11+
alembic = "1.9.4"
12+
gevent = "24.2.1"
13+
greenlet = "3.0.3"
14+
Pebble = "5.1.0"
15+
# pymisp = "2.4.144"
16+
cryptography = ">=44.0.1"
17+
requests = {version = "2.32.4", extras = ["security", "socks"]}
18+
# pyOpenSSL = "24.0.0"
19+
pefile = "*"
20+
tldextract = ">=5.1.2"
21+
oletools = "0.60.2"
22+
olefile = "0.47"
23+
# mixbox = "1.0.5"
24+
capstone = "5.0.5"
25+
pycryptodomex = ">=3.20.0"
26+
# xmltodict = "0.12.0"
27+
requests-file = ">=1.5.1"
28+
orjson = ">=3.9.15"
29+
# maec = "4.1.0.17"
30+
# regex = "2021.7.6"
31+
SFlock2 = {version = ">=0.3.76", extras = ["shellcode","linux"]}
32+
# volatility3 = "2.11.0"
33+
# XLMMacroDeobfuscator = "0.2.7"
34+
pyzipper = "0.3.6"
35+
flare-capa = "9.1.0"
36+
37+
Cython = "3.0.11"
38+
Django = ">=4.2.18"
39+
SQLAlchemy = "2.0.41"
40+
SQLAlchemy-Utils = "0.41.1"
41+
Jinja2 = "^3.1.6"
42+
chardet = "4.0.0"
43+
pygal = "2.4.0"
44+
dpkt = "1.9.6"
45+
dnspython = "2.7.0"
46+
pytz = "2021.1"
47+
maxminddb = "2.6.3"
48+
Pillow = ">=8.2.0"
49+
python-whois = "0.9.5"
50+
bs4 = "0.0.1"
51+
pydeep2 = "0.5.1"
52+
django-recaptcha = "4.0.0" # https://pypi.org/project/django-recaptcha/
53+
django-crispy-forms = "2.3"
54+
crispy-bootstrap4 = "2024.10"
55+
django-settings-export = "1.2.1"
56+
django-csp = "3.8"
57+
django-extensions = "3.2.3"
58+
django-ratelimit = "4.1.0"
59+
# qrcode = "7.2"
60+
python-tlsh = "4.5.0"
61+
djangorestframework = "3.15.2"
62+
yara-python = "4.5.1"
63+
pymongo = ">=4.0.1"
64+
# ImageHash = "4.3.1"
65+
LnkParse3 = "1.5.0"
66+
cachetools = "^5.5.1"
67+
django-allauth = "65.3.1" # https://django-allauth.readthedocs.io/en/latest/configuration.html
68+
# socks5man = {git = "https://github.com/CAPESandbox/socks5man.git", rev = "7b335d027297b67abdf28f38cc7d5d42c9d810b5"}
69+
# httpreplay = {git = "https://github.com/CAPESandbox/httpreplay.git", rev = "0d5a5b3144ab15f93189b83ca8188afde43db134"}
70+
# bingraph = {git = "https://github.com/CAPESandbox/binGraph.git", rev = "552d1210ac6770f8b202d0d1fc4610cc14d878ec"}
71+
psycopg2-binary = "^2.9.10"
72+
ruff = ">=0.7.2"
73+
paramiko = "3.5.0"
74+
psutil = "6.1.1"
75+
peepdf-3 = "5.0.0"
76+
pyre2-updated = ">=0.3.8"
77+
Werkzeug = "3.1.3"
78+
packaging = "24.2"
79+
# command line config manipulation
80+
crudini = "0.9.5"
81+
python-dateutil = "2.9.0.post0"
82+
83+
# guac-session
84+
pyguacamole = "^0.11"
85+
uvicorn = {extras = ["standard"], version = "^0.18.2"}
86+
gunicorn = "^23.0.0"
87+
channels = "^3.0.5"
88+
setproctitle = "1.3.2"
89+
90+
CAPE-parsers = ">=0.1.36"
91+
maco = "1.1.8"
92+
93+
[tool.poetry.extras]
94+
maco = ["maco"]
95+
96+
[tool.poetry.group.dev.dependencies]
97+
black = "^24.3.0"
98+
isort = "^5.10.1"
99+
mypy = "1.14.1"
100+
pytest = "7.2.2"
101+
pytest-pretty = "1.1.0"
102+
pytest-cov = "3.0.0"
103+
pytest-mock = "3.7.0"
104+
pytest-django = "4.5.2"
105+
pytest_asyncio = "0.18.3"
106+
pytest-xdist = "3.6.1"
107+
pytest-asyncio = "0.18.3"
108+
pytest-freezer = "0.4.8"
109+
tenacity = "8.1.0"
110+
types-requests = "^2.32"
111+
httpretty = "^1.1.4"
112+
func-timeout = "^4.3.5"
113+
pre-commit = "^2.19.0"
114+
115+
[tool.black]
116+
line-length = 132
117+
include = "\\.py(_disabled)?$"
118+
119+
[tool.isort]
120+
profile = "black"
121+
no_lines_before = ["FUTURE", "STDLIB"]
122+
line_length = 132
123+
supported_extensions = ["py", "py_disabled"]
124+
125+
[tool.flake8]
126+
max-line-length = 132
127+
exclude = ".git,__pycache__,.cache,.venv"
128+
129+
[tool.pytest.ini_options]
130+
django_find_project = false
131+
DJANGO_SETTINGS_MODULE = "web.settings"
132+
pythonpath = [".", "web"]
133+
testpaths = ["tests", "agent"]
134+
norecursedirs = "tests/zip_compound"
135+
asyncio_mode = "auto"
136+
137+
[build-system]
138+
requires = ["poetry-core>=1.0.0"]
139+
build-backend = "poetry.core.masonry.api"
140+
requires-poetry = ">=2.0"
141+
142+
[tool.ruff]
143+
line-length = 132
144+
exclude = [
145+
"./analyzer/linux/dbus_next",
146+
]
147+
148+
[tool.ruff.lint]
149+
select = [
150+
"F", # pyflakes
151+
"E", # pycodestyle errors
152+
"W", # pycodestyle warnings
153+
# "I", # isort
154+
# "N", # pep8-naming
155+
"G", # flake8-logging-format
156+
]
157+
158+
ignore = [
159+
"E501", # ignore due to conflict with formatter
160+
"N818", # exceptions don't need the Error suffix
161+
"E741", # allow ambiguous variable names
162+
"E402",
163+
"W605", # ToDo to fix - Invalid escape sequence
164+
]
165+
166+
fixable = ["ALL"]
167+
168+
[tool.ruff.lint.per-file-ignores]
169+
"stubs/*" = [
170+
"N", # naming conventions don't matter in stubs
171+
"F403", # star imports are okay in stubs
172+
"F405", # star imports are okay in stubs
173+
]
174+
175+
[tool.ruff.format]
176+
quote-style = "double"
177+
indent-style = "space"
178+
skip-magic-trailing-comma = false
179+
line-ending = "auto"
180+
181+
[tool.ruff.lint.isort]
182+
known-first-party = ["libqtile", "test"]
183+
default-section = "third-party"
184+
185+
[tool.mypy]
186+
warn_unused_configs = true
187+
files = [
188+
"agent/**/*.py",
189+
]

0 commit comments

Comments
 (0)