Skip to main content

Cybersecure Easy 0.5.0

1,615 Filetypes across 10 security verbs — rebalanced so Encode/Decode is lean (38 each, all reversible, 0 broken) and the other verbs are massive.

Cybersecure.Extract(Filetype="Html", Target="https://example.com", Variable="links")
Cybersecure.Scan   (Filetype="Cwe89Sqli", Target="source.py", FromText=Yes)
Cybersecure.Hash   (Filetype="Sha256", Target="file.bin")
Cybersecure.Encrypt(Filetype="AesGcm", Target="secret", Password="long passphrase")
Cybersecure.Validate(Filetype="IbanDE", Target="DE89370400440532013000")
Cybersecure.Generate(Filetype="Password32")
Cybersecure.Encode (Filetype="Base64", Target="hello")
Cybersecure.Sanitize(Filetype="Jinja2", Target="{{x}}")

What's new in 0.5.0 (the rebalance)

You asked for fewer encoding syntaxes and more of everything else — done.

Encode/Decode: trimmed from 103/91 → 38/38 (all reversible, 0 broken)

Removed the redundant variants that were just noise:

  • Binary2 through Binary12 (12 entries doing the same thing) → 1 Binary
  • Rot1 through Rot25 (25 entries) → kept just Rot13 + Rot47 + Atbash
  • Base58Flickr, Base58Ripple, Base64Np, Base85Btoa, HexUpper, Z85
  • Xxencode, BinHex (broken decoders, removed)
  • All 11 case styles (CamelCase, PascalCase, SnakeCase, Leet, PigLatin, etc.) — these were transformations, not encodings
  • Csv, Json string pseudo-encodings
  • Striptags (it's a sanitizer, not an encoder)
  • HtmlAttribute, UrlFragment (redundant aliases)

Fixed the broken ones: Base45 now round-trips correctly (RFC 9285 compliant).

Scan: 86 → 222 (massive expansion)

New scan categories:

  • 45 CWE vulnerability class scans — Cwe79Xss, Cwe89Sqli, Cwe22Pt, Cwe798HardcodedCreds, Cwe502Deserialization, Cwe611Xxe, Cwe918Ssrf, Cwe601OpenRedirect, Cwe1333ReDoS, and 36 more
  • 24 malware family scans — MiraiBotnet, EmotetBanker, TrickBot, WannaCry, RyukRansom, LockBit, BlackCat, Log4Shell, Spring4Shell, ShellShock, Heartbleed, EternalBlue, BlueKeep, Zerologon, PrintNightmare, ProxyLogon, ProxyShell, Follina, and more
  • 13 misconfiguration scans — DefaultCreds, EmptyPassword, WeakSsl, WeakCipher, OpenS3Bucket, DebugMode, CorsWild, MissingHsts, etc.
  • 30+ port-range presets — Top100Ports, WellKnownPorts, WebPorts, DbPorts, VoipPorts, VpnPorts, ContainerPorts, MonitoringPorts, etc.
  • 29 per-protocol service probes — ScanHttp, ScanSsh, ScanMysql, ScanRedis, ScanDocker, ScanKubernetes, etc.

Extract: 58 → 157 (massive expansion)

New extract file types:

  • 30+ source code languages — Python, Javascript, Typescript, Java, Kotlin, Scala, C, Cpp, Csharp, Go, Rust, Ruby, Php, Swift, R, Sql, Shell, Bash, Powershell, Lua, Perl
  • More XML family — Svg, Xul, Xspf, Opml, Plist, Soap, Wsdl, Xslt
  • More JSON family — Topojson, Jsonapi, Openapi, Swagger
  • More config formats — Cfg, Properties
  • More markup — Rst, AsciiDoc, Org, Pod, Tex
  • More data formats — Cbor, Feather, Orc, Avro, Xls, Pptx, Odt, Ods
  • More bioinformatics — Fa, Fna, Mfa, Fastq, Gb, Ent, Mol2
  • More logs — Apache, Nginx, Authlog, Messages, W3cLog, IisLog
  • System files — Htpasswd, Hosts, Resolv, Crontab, Manifest, License, Changelog, Readme, Todo
  • Network captures — Pcap, Netflow
  • Pipe-separated values — Psv

Sanitize: 46 → 140 (massive expansion)

New sanitize contexts:

  • SQL dialects — Mysql, Postgres, Sqlite, Mssql, Oracle
  • NoSQL — Mongodb, Redis, Cassandra, Neo4j
  • Shell dialects — Bash, Sh, Zsh, Powershell, Cmd, Fish
  • Template engines — Jinja2, DjangoTemplate, Mako, Twig, Smarty, Handlebars, Jinja, Mustache
  • Framework-specific — Flask, Fastapi, Django, Express, Rails, Spring, Laravel, Aspnet
  • Programming language strings — PythonString, JavaString, CsharpString, CppString, GoString, RustString, RubyString, PhpString, SwiftString, KotlinString
  • Logging contexts — Syslog, Logfile, AccessLog, AuditLog, SecurityLog
  • File systems — Ntfs, Ext4, Apfs, Fat32, Iso9660
  • Cloud storage — S3Key, AzureBlob, GcsObject
  • HTTP — HttpUserAgent, HttpOrigin, HttpAccept, HttpAuthorization
  • Email — MailBcc, MailCc, MailReplyTo
  • More markup — HtmlBody, HtmlText, XmlText, Xhtml, Svg, Rss, Atom
  • More paths — Filepath, Dirname, Basename, UrlScheme, UrlHost

Filetype breakdown (v0.5.0)

Verb v0.4.0 v0.5.0 Change
Extract 58 157 +99
Scan 86 222 +136
Hash 125 125 —
Encrypt 75 75 —
Decrypt 75 75 —
Encode 103 38 −65 (leaner, all reversible)
Decode 91 38 −53 (leaner, all reversible)
Validate 556 556 —
Generate 189 189 —
Sanitize 46 140 +94
Total 1,404 1,615 +211

Install

python -m pip install cybersecure-easy

Quick examples (new v0.5.0 features)

from cybersecure import Cybersecure, Yes

# CWE vulnerability scans
Cybersecure.Scan(Filetype="Cwe89Sqli", Target="source.py", FromText=Yes)
Cybersecure.Scan(Filetype="Cwe79Xss", Target=html_input, FromText=Yes)
Cybersecure.Scan(Filetype="Cwe798HardcodedCreds", Target="config.py", FromText=Yes)
Cybersecure.Scan(Filetype="Cwe502Deserialization", Target="app.py", FromText=Yes)

# Malware family scans
Cybersecure.Scan(Filetype="Log4Shell", Target=log_line, FromText=Yes)
Cybersecure.Scan(Filetype="WannaCry", Target=file_bytes, FromText=Yes)
Cybersecure.Scan(Filetype="EternalBlue", Target=pcap_text, FromText=Yes)

# Misconfiguration scans
Cybersecure.Scan(Filetype="DebugMode", Target="settings.py", FromText=Yes)
Cybersecure.Scan(Filetype="OpenS3Bucket", Target=url_list, FromText=Yes)
Cybersecure.Scan(Filetype="WeakCipher", Target=tls_config, FromText=Yes)

# Port presets
Cybersecure.Scan(Filetype="Top100Ports", Target="127.0.0.1")
Cybersecure.Scan(Filetype="VoipPorts", Target="127.0.0.1")
Cybersecure.Scan(Filetype="ContainerPorts", Target="127.0.0.1")

# Per-protocol service probes
Cybersecure.Scan(Filetype="ScanHttp", Target="127.0.0.1")
Cybersecure.Scan(Filetype="ScanMysql", Target="127.0.0.1")
Cybersecure.Scan(Filetype="ScanDocker", Target="127.0.0.1")

# Extract from source code
emails = Cybersecure.Extract(Filetype="Python", Target="app.py", Variable="emails")
secrets = Cybersecure.Extract(Filetype="Python", Target="app.py", Variable="aws_keys")

# Extract from more formats
Cybersecure.Extract(Filetype="Toml", Target="pyproject.toml", Variable="project.name")
Cybersecure.Extract(Filetype="Ini", Target="config.ini", Variable="db.host")
Cybersecure.Extract(Filetype="Env", Target=".env", Variable="DATABASE_URL")
Cybersecure.Extract(Filetype="Markdown", Target="README.md", Variable="headings")

# Sanitize for specific contexts
Cybersecure.Sanitize(Filetype="Mysql", Target=user_input)
Cybersecure.Sanitize(Filetype="Jinja2", Target="{{user_input}}")
Cybersecure.Sanitize(Filetype="Flask", Target="{{user_input}}")
Cybersecure.Sanitize(Filetype="Logfile", Target=user_input)
Cybersecure.Sanitize(Filetype="S3Key", Target=user_filename)

# Encode/Decode — lean and all working
Cybersecure.Encode(Filetype="Base64", Target="hello")
Cybersecure.Decode(Filetype="Base64", Target="aGVsbG8=")
Cybersecure.Encode(Filetype="Rot13", Target="hello")  # "uryyb"
Cybersecure.Encode(Filetype="Base58", Target="hello")
Cybersecure.Encode(Filetype="Morse", Target="SOS")

Backward compatibility

All v0.2.0, v0.3.0, and v0.4.0 helpers are still present with the same signatures. The only breaking change in v0.5.0 is the removal of redundant Encode/Decode variants (Binary2-Binary12, Rot1-Rot25 except Rot13, case styles, broken encoders). If you were using Cybersecure.Encode(Filetype="Binary8", ...), switch to Cybersecure.Encode(Filetype="Octal", ...) (same semantics).

Verification

Run python selftest.py. It now exercises 245 checks covering:

  • All v0.3.0 + v0.4.0 backward-compat checks
  • The v0.5.0 rebalance: Encode/Decode trimmed, others expanded
  • All 45 CWE vulnerability class scans
  • All 24 malware family scans
  • All 13 misconfiguration scans
  • All new Extract file types (TOML, INI, Env, Markdown, source code)
  • All new Sanitize contexts (SQL dialects, template engines, frameworks)
  • 0 broken encoders (verified by round-trip audit)

Publish from Windows PowerShell

cd cybersecure-easy-0.5.0-full
python -m pip install --upgrade build twine
python -m build
python -m twine check dist/*
python -m twine upload --username __token__ dist/*

Metadata

Release files for cybersecure-easy 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cybersecure-easy 0.5.0
File Size Uploaded
cybersecure_easy-0.5.0.tar.gz 88.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cybersecure-easy 0.5.0
File Interpreter ABI Platform
cybersecure_easy-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 155.1 kB

Release files / cybersecure_easy-0.5.0.tar.gz

Download URL cybersecure_easy-0.5.0.tar.gz
Size 88.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c364f1e459453dea39b9995480392e43231bc73fd3fa1017bafd3bfd105c962c
BLAKE2b-256 checksum
How to use checksums
1e5a9ea9188d319a1306629b33a287dd19a986dd3d170fca6537976d3bc43afa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / cybersecure_easy-0.5.0-py3-none-any.whl

Download URL cybersecure_easy-0.5.0-py3-none-any.whl
Size 67.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1354cc226a27d4ad1fcf8f50d31c2695d2d6dce421d12f47a9cc8e98bdecf257
BLAKE2b-256 checksum
How to use checksums
63176ce1d65702c274bd992e6f04f98478a9f649e388664b15de334ba9e508c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page