hemspect 3.0.0__tar.gz → 3.0.2__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.
Files changed (21) hide show
  1. {hemspect-3.0.0 → hemspect-3.0.2}/PKG-INFO +26 -33
  2. {hemspect-3.0.0 → hemspect-3.0.2}/README.md +25 -32
  3. {hemspect-3.0.0 → hemspect-3.0.2}/pyproject.toml +1 -1
  4. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/cli.py +4 -1
  5. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/scanners/report_generator.py +14 -2
  6. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect.egg-info/PKG-INFO +26 -33
  7. {hemspect-3.0.0 → hemspect-3.0.2}/setup.cfg +0 -0
  8. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/__init__.py +0 -0
  9. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/config/__init__.py +0 -0
  10. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/config/allowlist.yaml +0 -0
  11. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/config/compliance_mapping.yaml +0 -0
  12. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/config/rules.yaml +0 -0
  13. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/scanners/__init__.py +0 -0
  14. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/scanners/approval_workflow.py +0 -0
  15. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/scanners/sbom_generator.py +0 -0
  16. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect/scanners/scan_psadt.py +0 -0
  17. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect.egg-info/SOURCES.txt +0 -0
  18. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect.egg-info/dependency_links.txt +0 -0
  19. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect.egg-info/entry_points.txt +0 -0
  20. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect.egg-info/requires.txt +0 -0
  21. {hemspect-3.0.0 → hemspect-3.0.2}/src/hemspect.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hemspect
3
- Version: 3.0.0
3
+ Version: 3.0.2
4
4
  Summary: Enterprise package security scanner for PSADT
5
5
  Author: Hemendra Mahajan
6
6
  Classifier: Programming Language :: Python :: 3
@@ -52,33 +52,25 @@ HemSpect is an enterprise security scanner purpose-built for organizations that
52
52
  ### Installation
53
53
 
54
54
  ```powershell
55
- # Clone the repository
56
- git clone https://github.com/hemmhjn87/psadt_secure.git
57
- cd psadt_secure
58
-
59
- # Create a virtual environment (recommended)
60
- python -m venv venv
61
- .\venv\Scripts\Activate.ps1
62
-
63
- # Install dependencies
64
- pip install -r requirements.txt
55
+ # Install the latest version from PyPI
56
+ pip install hemspect
65
57
  ```
66
58
 
67
59
  ### Scan a Single Package
68
60
 
69
61
  ```powershell
70
62
  # Interactive mode (prompts for report folder name)
71
- python main.py scan "C:\Packages\MyApp" --format all
63
+ hemspect scan "C:\Packages\MyApp" --format all
72
64
 
73
65
  # Specify output directory
74
- python main.py scan "C:\Packages\MyApp" -o "C:\HemSpect\MyApp" --format all --sign-report
66
+ hemspect scan "C:\Packages\MyApp" -o "C:\HemSpect\MyApp" --format all --sign-report
75
67
  ```
76
68
 
77
69
  ### Factory Scan (Batch Mode)
78
70
 
79
71
  ```powershell
80
72
  # Scan your entire package factory in one shot
81
- python main.py factory-scan "\\server\PackageFactory" -o "C:\HemSpect\FactoryReport"
73
+ hemspect factory-scan "\\server\PackageFactory" -o "C:\HemSpect\FactoryReport"
82
74
  ```
83
75
 
84
76
  ---
@@ -88,7 +80,7 @@ python main.py factory-scan "\\server\PackageFactory" -o "C:\HemSpect\FactoryRep
88
80
  ### `scan` — Scan a Single Package
89
81
 
90
82
  ```
91
- python main.py scan <PACKAGE_PATH> [OPTIONS]
83
+ hemspect scan <PACKAGE_PATH> [OPTIONS]
92
84
  ```
93
85
 
94
86
  | Option | Description | Default |
@@ -108,7 +100,7 @@ python main.py scan <PACKAGE_PATH> [OPTIONS]
108
100
  ### `factory-scan` — Batch Scan Entire Package Factory
109
101
 
110
102
  ```
111
- python main.py factory-scan <FACTORY_PATH> [OPTIONS]
103
+ hemspect factory-scan <FACTORY_PATH> [OPTIONS]
112
104
  ```
113
105
 
114
106
  | Option | Description | Default |
@@ -126,17 +118,17 @@ python main.py factory-scan <FACTORY_PATH> [OPTIONS]
126
118
  ### `verify` — Verify Signed Manifest
127
119
 
128
120
  ```powershell
129
- python main.py verify "C:\HemSpect\MyApp"
121
+ hemspect verify "C:\HemSpect\MyApp"
130
122
  ```
131
123
 
132
124
  ### `workflow` — Manage Approval Workflow
133
125
 
134
126
  ```powershell
135
127
  # Analyst review
136
- python main.py workflow analyst-review "C:\HemSpect\MyApp" "Jane.Smith" --approve --notes "All FPs validated"
128
+ hemspect workflow analyst-review "C:\HemSpect\MyApp" "Jane.Smith" --approve --notes "All FPs validated"
137
129
 
138
130
  # CISO approval
139
- python main.py workflow ciso-approve "C:\HemSpect\MyApp" "CEO.Name" "AUTH-20260601" --approve
131
+ hemspect workflow ciso-approve "C:\HemSpect\MyApp" "CEO.Name" "AUTH-20260601" --approve
140
132
  ```
141
133
 
142
134
  ---
@@ -221,20 +213,21 @@ Scans file contents for:
221
213
 
222
214
  ## 📁 Project Structure
223
215
 
224
- ```
216
+ ```text
225
217
  hemspect/
226
- ├── main.py # CLI entry point
227
- ├── requirements.txt # Python dependencies
228
- ├── config/
229
- │ ├── rules.yaml # Custom detection rules
230
- │ └── allowlist.yaml # Exception management
231
- ├── src/
232
- └── scanners/
233
- ├── scan_psadt.py # Core scanner engine + HemSpect
234
- │ ├── report_generator.py # Enterprise HTML report generator
235
- ├── sbom_generator.py # CycloneDX + SPDX SBOM generator
236
- │ └── approval_workflow.py # 3-stage approval workflow
237
-
218
+ ├── pyproject.toml # Packaging configuration
219
+ ├── README.md # Documentation
220
+ └── src/
221
+ └── hemspect/
222
+ ├── cli.py # Global terminal command entry point
223
+ ├── config/
224
+ ├── rules.yaml # Threat detection patterns
225
+ └── allowlist.yaml # Global exceptions
226
+ └── scanners/
227
+ ├── scan_psadt.py # Core scanner engine + HemSpect
228
+ ├── report_generator.py # Enterprise HTML report generator
229
+ ├── sbom_generator.py # CycloneDX + SPDX SBOM generator
230
+ └── approval_workflow.py # 3-stage approval workflow
238
231
  ```
239
232
 
240
233
  ---
@@ -275,7 +268,7 @@ exceptions:
275
268
 
276
269
  ```powershell
277
270
  # Create a nightly scheduled task
278
- $action = New-ScheduledTaskAction -Execute "python" -Argument "main.py factory-scan \\server\PackageFactory -o C:\HemSpect\Nightly"
271
+ $action = New-ScheduledTaskAction -Execute "hemspect" -Argument "factory-scan \\server\PackageFactory -o C:\HemSpect\Nightly"
279
272
  $trigger = New-ScheduledTaskTrigger -Daily -At "02:00AM"
280
273
  Register-ScheduledTask -TaskName "HemSpect-Nightly" -Action $action -Trigger $trigger
281
274
  ```
@@ -38,33 +38,25 @@ HemSpect is an enterprise security scanner purpose-built for organizations that
38
38
  ### Installation
39
39
 
40
40
  ```powershell
41
- # Clone the repository
42
- git clone https://github.com/hemmhjn87/psadt_secure.git
43
- cd psadt_secure
44
-
45
- # Create a virtual environment (recommended)
46
- python -m venv venv
47
- .\venv\Scripts\Activate.ps1
48
-
49
- # Install dependencies
50
- pip install -r requirements.txt
41
+ # Install the latest version from PyPI
42
+ pip install hemspect
51
43
  ```
52
44
 
53
45
  ### Scan a Single Package
54
46
 
55
47
  ```powershell
56
48
  # Interactive mode (prompts for report folder name)
57
- python main.py scan "C:\Packages\MyApp" --format all
49
+ hemspect scan "C:\Packages\MyApp" --format all
58
50
 
59
51
  # Specify output directory
60
- python main.py scan "C:\Packages\MyApp" -o "C:\HemSpect\MyApp" --format all --sign-report
52
+ hemspect scan "C:\Packages\MyApp" -o "C:\HemSpect\MyApp" --format all --sign-report
61
53
  ```
62
54
 
63
55
  ### Factory Scan (Batch Mode)
64
56
 
65
57
  ```powershell
66
58
  # Scan your entire package factory in one shot
67
- python main.py factory-scan "\\server\PackageFactory" -o "C:\HemSpect\FactoryReport"
59
+ hemspect factory-scan "\\server\PackageFactory" -o "C:\HemSpect\FactoryReport"
68
60
  ```
69
61
 
70
62
  ---
@@ -74,7 +66,7 @@ python main.py factory-scan "\\server\PackageFactory" -o "C:\HemSpect\FactoryRep
74
66
  ### `scan` — Scan a Single Package
75
67
 
76
68
  ```
77
- python main.py scan <PACKAGE_PATH> [OPTIONS]
69
+ hemspect scan <PACKAGE_PATH> [OPTIONS]
78
70
  ```
79
71
 
80
72
  | Option | Description | Default |
@@ -94,7 +86,7 @@ python main.py scan <PACKAGE_PATH> [OPTIONS]
94
86
  ### `factory-scan` — Batch Scan Entire Package Factory
95
87
 
96
88
  ```
97
- python main.py factory-scan <FACTORY_PATH> [OPTIONS]
89
+ hemspect factory-scan <FACTORY_PATH> [OPTIONS]
98
90
  ```
99
91
 
100
92
  | Option | Description | Default |
@@ -112,17 +104,17 @@ python main.py factory-scan <FACTORY_PATH> [OPTIONS]
112
104
  ### `verify` — Verify Signed Manifest
113
105
 
114
106
  ```powershell
115
- python main.py verify "C:\HemSpect\MyApp"
107
+ hemspect verify "C:\HemSpect\MyApp"
116
108
  ```
117
109
 
118
110
  ### `workflow` — Manage Approval Workflow
119
111
 
120
112
  ```powershell
121
113
  # Analyst review
122
- python main.py workflow analyst-review "C:\HemSpect\MyApp" "Jane.Smith" --approve --notes "All FPs validated"
114
+ hemspect workflow analyst-review "C:\HemSpect\MyApp" "Jane.Smith" --approve --notes "All FPs validated"
123
115
 
124
116
  # CISO approval
125
- python main.py workflow ciso-approve "C:\HemSpect\MyApp" "CEO.Name" "AUTH-20260601" --approve
117
+ hemspect workflow ciso-approve "C:\HemSpect\MyApp" "CEO.Name" "AUTH-20260601" --approve
126
118
  ```
127
119
 
128
120
  ---
@@ -207,20 +199,21 @@ Scans file contents for:
207
199
 
208
200
  ## 📁 Project Structure
209
201
 
210
- ```
202
+ ```text
211
203
  hemspect/
212
- ├── main.py # CLI entry point
213
- ├── requirements.txt # Python dependencies
214
- ├── config/
215
- │ ├── rules.yaml # Custom detection rules
216
- │ └── allowlist.yaml # Exception management
217
- ├── src/
218
- └── scanners/
219
- ├── scan_psadt.py # Core scanner engine + HemSpect
220
- │ ├── report_generator.py # Enterprise HTML report generator
221
- ├── sbom_generator.py # CycloneDX + SPDX SBOM generator
222
- │ └── approval_workflow.py # 3-stage approval workflow
223
-
204
+ ├── pyproject.toml # Packaging configuration
205
+ ├── README.md # Documentation
206
+ └── src/
207
+ └── hemspect/
208
+ ├── cli.py # Global terminal command entry point
209
+ ├── config/
210
+ ├── rules.yaml # Threat detection patterns
211
+ └── allowlist.yaml # Global exceptions
212
+ └── scanners/
213
+ ├── scan_psadt.py # Core scanner engine + HemSpect
214
+ ├── report_generator.py # Enterprise HTML report generator
215
+ ├── sbom_generator.py # CycloneDX + SPDX SBOM generator
216
+ └── approval_workflow.py # 3-stage approval workflow
224
217
  ```
225
218
 
226
219
  ---
@@ -261,7 +254,7 @@ exceptions:
261
254
 
262
255
  ```powershell
263
256
  # Create a nightly scheduled task
264
- $action = New-ScheduledTaskAction -Execute "python" -Argument "main.py factory-scan \\server\PackageFactory -o C:\HemSpect\Nightly"
257
+ $action = New-ScheduledTaskAction -Execute "hemspect" -Argument "factory-scan \\server\PackageFactory -o C:\HemSpect\Nightly"
265
258
  $trigger = New-ScheduledTaskTrigger -Daily -At "02:00AM"
266
259
  Register-ScheduledTask -TaskName "HemSpect-Nightly" -Action $action -Trigger $trigger
267
260
  ```
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "hemspect"
7
- version = "3.0.0"
7
+ version = "3.0.2"
8
8
  authors = [
9
9
  { name="Hemendra Mahajan" },
10
10
  ]
@@ -101,7 +101,7 @@ def _make_banner() -> str:
101
101
  "| HEMSPECT v3.0 -- Package Security Scanner |\n"
102
102
  "| NIST 800-53 | CMMC 2.0 | IEC 62443 | CIS v8 | MITRE ATT&CK |\n"
103
103
  "|------------------------------------------------------------------|\n"
104
- "| Powered by HemSpect\u2122 Data Leakage Intelligence Engine |\n"
104
+ "| Designed and developed by Hemendra Mahajan |\n"
105
105
  "+==================================================================+\n"
106
106
  )
107
107
 
@@ -135,6 +135,8 @@ def _make_banner() -> str:
135
135
  f"{R}"
136
136
  )
137
137
 
138
+ AUTHOR_CREDIT = f" {DIM}{CY3}Designed and developed by {R}{B}{CY1}Hemendra Mahajan{R}"
139
+
138
140
  return (
139
141
  "\n"
140
142
  f"{PTC}\n"
@@ -142,6 +144,7 @@ def _make_banner() -> str:
142
144
  + "\n".join(_art) + "\n"
143
145
  "\n"
144
146
  f"{PTC}\n"
147
+ f"{AUTHOR_CREDIT}\n\n"
145
148
  )
146
149
 
147
150
 
@@ -244,8 +244,8 @@ class ReportGenerator:
244
244
  NIST SP 800-53 Rev5 &nbsp;|&nbsp; CMMC 2.0 &nbsp;|&nbsp;
245
245
  IEC 62443-2-4 &nbsp;|&nbsp; CIS Controls v8
246
246
  </div>
247
- <div style="margin-top: 18px; text-align: center; font-family: monospace; font-size: 0.85rem; color: var(--accent); padding-top: 12px; border-top: 1px dashed var(--border);">
248
- <span style="opacity: 0.5;">//</span> Designed by <span style="color: #6dffb9; font-weight: bold; text-shadow: 0 0 5px rgba(109,255,185,0.5);">Hem</span>
247
+ <div class="footer-credit">
248
+ Designed and developed by <span class="author-name">Hemendra Mahajan</span>
249
249
  </div>
250
250
  </footer>
251
251
  </main>
@@ -680,6 +680,18 @@ table.mitre-table {
680
680
  }
681
681
  .footer-compliance { color: var(--accent); font-weight: 600; font-size: 0.72rem; }
682
682
  .report-footer code { color: #6dffb9; font-family: monospace; }
683
+ .footer-credit {
684
+ margin-top: 24px; text-align: center; font-size: 0.82rem;
685
+ color: var(--text-muted); padding-top: 16px;
686
+ border-top: 1px solid rgba(255,255,255,0.05);
687
+ letter-spacing: 0.05em; text-transform: uppercase;
688
+ }
689
+ .footer-credit .author-name {
690
+ color: #00ff88; font-weight: 800; letter-spacing: 0.1em;
691
+ text-shadow: 0 0 10px rgba(0, 255, 136, 0.4);
692
+ background: linear-gradient(135deg, #00ff88, #00d4ff);
693
+ -webkit-background-clip: text; -webkit-text-fill-color: transparent;
694
+ }
683
695
 
684
696
  /* ---- Password Intelligence Section ---- */
685
697
  .pwd-section-header {
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hemspect
3
- Version: 3.0.0
3
+ Version: 3.0.2
4
4
  Summary: Enterprise package security scanner for PSADT
5
5
  Author: Hemendra Mahajan
6
6
  Classifier: Programming Language :: Python :: 3
@@ -52,33 +52,25 @@ HemSpect is an enterprise security scanner purpose-built for organizations that
52
52
  ### Installation
53
53
 
54
54
  ```powershell
55
- # Clone the repository
56
- git clone https://github.com/hemmhjn87/psadt_secure.git
57
- cd psadt_secure
58
-
59
- # Create a virtual environment (recommended)
60
- python -m venv venv
61
- .\venv\Scripts\Activate.ps1
62
-
63
- # Install dependencies
64
- pip install -r requirements.txt
55
+ # Install the latest version from PyPI
56
+ pip install hemspect
65
57
  ```
66
58
 
67
59
  ### Scan a Single Package
68
60
 
69
61
  ```powershell
70
62
  # Interactive mode (prompts for report folder name)
71
- python main.py scan "C:\Packages\MyApp" --format all
63
+ hemspect scan "C:\Packages\MyApp" --format all
72
64
 
73
65
  # Specify output directory
74
- python main.py scan "C:\Packages\MyApp" -o "C:\HemSpect\MyApp" --format all --sign-report
66
+ hemspect scan "C:\Packages\MyApp" -o "C:\HemSpect\MyApp" --format all --sign-report
75
67
  ```
76
68
 
77
69
  ### Factory Scan (Batch Mode)
78
70
 
79
71
  ```powershell
80
72
  # Scan your entire package factory in one shot
81
- python main.py factory-scan "\\server\PackageFactory" -o "C:\HemSpect\FactoryReport"
73
+ hemspect factory-scan "\\server\PackageFactory" -o "C:\HemSpect\FactoryReport"
82
74
  ```
83
75
 
84
76
  ---
@@ -88,7 +80,7 @@ python main.py factory-scan "\\server\PackageFactory" -o "C:\HemSpect\FactoryRep
88
80
  ### `scan` — Scan a Single Package
89
81
 
90
82
  ```
91
- python main.py scan <PACKAGE_PATH> [OPTIONS]
83
+ hemspect scan <PACKAGE_PATH> [OPTIONS]
92
84
  ```
93
85
 
94
86
  | Option | Description | Default |
@@ -108,7 +100,7 @@ python main.py scan <PACKAGE_PATH> [OPTIONS]
108
100
  ### `factory-scan` — Batch Scan Entire Package Factory
109
101
 
110
102
  ```
111
- python main.py factory-scan <FACTORY_PATH> [OPTIONS]
103
+ hemspect factory-scan <FACTORY_PATH> [OPTIONS]
112
104
  ```
113
105
 
114
106
  | Option | Description | Default |
@@ -126,17 +118,17 @@ python main.py factory-scan <FACTORY_PATH> [OPTIONS]
126
118
  ### `verify` — Verify Signed Manifest
127
119
 
128
120
  ```powershell
129
- python main.py verify "C:\HemSpect\MyApp"
121
+ hemspect verify "C:\HemSpect\MyApp"
130
122
  ```
131
123
 
132
124
  ### `workflow` — Manage Approval Workflow
133
125
 
134
126
  ```powershell
135
127
  # Analyst review
136
- python main.py workflow analyst-review "C:\HemSpect\MyApp" "Jane.Smith" --approve --notes "All FPs validated"
128
+ hemspect workflow analyst-review "C:\HemSpect\MyApp" "Jane.Smith" --approve --notes "All FPs validated"
137
129
 
138
130
  # CISO approval
139
- python main.py workflow ciso-approve "C:\HemSpect\MyApp" "CEO.Name" "AUTH-20260601" --approve
131
+ hemspect workflow ciso-approve "C:\HemSpect\MyApp" "CEO.Name" "AUTH-20260601" --approve
140
132
  ```
141
133
 
142
134
  ---
@@ -221,20 +213,21 @@ Scans file contents for:
221
213
 
222
214
  ## 📁 Project Structure
223
215
 
224
- ```
216
+ ```text
225
217
  hemspect/
226
- ├── main.py # CLI entry point
227
- ├── requirements.txt # Python dependencies
228
- ├── config/
229
- │ ├── rules.yaml # Custom detection rules
230
- │ └── allowlist.yaml # Exception management
231
- ├── src/
232
- └── scanners/
233
- ├── scan_psadt.py # Core scanner engine + HemSpect
234
- │ ├── report_generator.py # Enterprise HTML report generator
235
- ├── sbom_generator.py # CycloneDX + SPDX SBOM generator
236
- │ └── approval_workflow.py # 3-stage approval workflow
237
-
218
+ ├── pyproject.toml # Packaging configuration
219
+ ├── README.md # Documentation
220
+ └── src/
221
+ └── hemspect/
222
+ ├── cli.py # Global terminal command entry point
223
+ ├── config/
224
+ ├── rules.yaml # Threat detection patterns
225
+ └── allowlist.yaml # Global exceptions
226
+ └── scanners/
227
+ ├── scan_psadt.py # Core scanner engine + HemSpect
228
+ ├── report_generator.py # Enterprise HTML report generator
229
+ ├── sbom_generator.py # CycloneDX + SPDX SBOM generator
230
+ └── approval_workflow.py # 3-stage approval workflow
238
231
  ```
239
232
 
240
233
  ---
@@ -275,7 +268,7 @@ exceptions:
275
268
 
276
269
  ```powershell
277
270
  # Create a nightly scheduled task
278
- $action = New-ScheduledTaskAction -Execute "python" -Argument "main.py factory-scan \\server\PackageFactory -o C:\HemSpect\Nightly"
271
+ $action = New-ScheduledTaskAction -Execute "hemspect" -Argument "factory-scan \\server\PackageFactory -o C:\HemSpect\Nightly"
279
272
  $trigger = New-ScheduledTaskTrigger -Daily -At "02:00AM"
280
273
  Register-ScheduledTask -TaskName "HemSpect-Nightly" -Action $action -Trigger $trigger
281
274
  ```
File without changes