AI Analysis
Final verdict: SUSPICIOUS
The package exhibits moderate risks due to its network and shell execution behaviors, suggesting potential hidden intentions or vulnerabilities.
- High shell risk due to direct system modifications
- Moderate network risk with potential for hidden HTTP behavior
Per-check LLM notes
- Network: The network calls appear to be making HTTP requests with custom User-Agent strings and handling responses, which could be used for updates or telemetry but may also hide malicious behavior.
- Shell: Executing shell commands and pip installations directly from the package can be risky as it allows the package to modify the system, potentially installing malicious software.
- Obfuscation: The observed patterns suggest potential obfuscation techniques but could also be part of normal model evaluation and saving/loading processes.
- Credentials: No clear evidence of credential harvesting activities detected.
- Metadata: The maintainer has only one package and lacks a GitHub repository, indicating potential newness or inactivity.
Heuristic Checks
Outbound Network Calls
score 9.0
Found 6 network call pattern(s)
e limit). """ req = urllib.request.Request(url, headers={"User-Agent": "eemo-cli-updater"})er"}) try: with urllib.request.urlopen(req, timeout=10) as resp: body = resp.rerror try: req = urllib.request.Request( _PYPI_JSON_URL, headers={"Accept": "appson"}, ) with urllib.request.urlopen(req, timeout=_REQUEST_TIMEOUT) as resp:glz-" try: req = urllib.request.Request(url, headers={"User-Agent": "eemo-cli-updater"})o-cli-updater"}) with urllib.request.urlopen(req, timeout=_GITHUB_TIMEOUT) as resp: r
Code Obfuscation
score 10.0
Found 5 obfuscation pattern(s)
return model.to(device).eval() ss_model = _load_model(f"{_prefix}subject_state", ss_.no_grad(): model.eval() if isinstance(dummy_input, torch.Tensor):s: list[dict] = [] model.eval() with torch.no_grad(): for mat_file in mat_fileress_level) buf = __import__("io").BytesIO() torch.save(data, buf, _use_new_zipfil_time = __import__("time") _time.sleep(0.1)
Shell / Subprocess Execution
score 10.0
Found 6 shell execution pattern(s)
e() try: result = subprocess.run( cmd, capture_output=True,pt paths). """ return subprocess.run( [sys.executable, "-m", "pip", "install", "--no-cach_PROCESS = 0x00000008 subprocess.Popen( ["cmd", "/c", bat_path], creationfl""" try: r = subprocess.run( [sys.executable, "-c", "import eemtry: subprocess.run( [sys.executable, "-c", "import eemore total = int( subprocess.check_output(["sysctl", "-n", "hw.memsize"], stderr=subprocess.DEVNULL).s
Credential Harvesting
No credential harvesting patterns detected
Typosquatting
No typosquatting candidates detected
Registered Email Domain
No author email provided
Suspicious Page Links
All external links appear legitimate
Git Repository History
No GitHub repository linked
No GitHub repository link found
Maintainer History
score 2.0
1 maintainer concern(s) found
Author "SuShuHeng" appears to have only 1 package on PyPI (new or inactive account)
Known CVE Vulnerabilities
No known vulnerabilities found in OSV database.
AI App Starter Prompt
Use this prompt to build a project with DGLZ
Create a fully-functional mini-application that leverages the 'DGLZ' package for EEG emotion recognition using CNN-Transformer encoders and a three-stage hierarchical classifier system. This application will serve as a tool for researchers and enthusiasts interested in understanding emotions based on EEG signals. The application should include the following steps and features: 1. Data Importation: Users should be able to upload their own EEG data files (in a supported format such as .edf or .csv) through a user-friendly interface. 2. Preprocessing: Implement basic preprocessing steps like filtering, artifact removal, and normalization of the uploaded EEG data to ensure high-quality input for the emotion recognition model. 3. Emotion Recognition: Utilize the 'DGLZ' package to process the preprocessed EEG data through its CNN-Transformer encoder and three-stage hierarchical classifier. This involves feeding the processed EEG data into the model to predict emotions. 4. Visualization: Display the predicted emotions alongside the original EEG signal plot for better interpretation. Additionally, provide a timeline or graph showing the progression of emotional states over time. 5. User Feedback: Allow users to rate the accuracy of the emotion prediction compared to their subjective experience, which could help in improving the model over time. 6. Documentation: Provide comprehensive documentation detailing how to use the application, including setup instructions, API references, and examples of input/output formats. 7. Integration: Consider integrating the application with other tools or platforms that might benefit from real-time emotion analysis, such as VR systems or mental health monitoring apps. By following these steps and incorporating these features, the application will not only demonstrate the capabilities of the 'DGLZ' package but also provide a practical tool for exploring the fascinating intersection of EEG signals and human emotions.