ams-meta-analysis

v0.1.57 suspicious
6.0
Medium Risk

AMS Meta-Analysis Streamlit app by Anuraj Sudhakaran for R-backed evidence synthesis workflows.

🤖 AI Analysis

Final verdict: SUSPICIOUS

The package exhibits moderate risk due to shell execution and obfuscation techniques which may indicate an attempt to evade detection or hide malicious activities.

  • High shell risk
  • Moderate obfuscation risk
Per-check LLM notes
  • Network: Network calls appear to be used for legitimate API interactions, but unusual endpoints could indicate potential issues.
  • Shell: Shell execution is risky as it can execute arbitrary commands, potentially leading to system compromise or data exfiltration.
  • Obfuscation: The usage of base64 decoding for images could be legitimate but may also indicate an attempt to hide code logic.
  • Credentials: No clear evidence of credential harvesting was found.

📦 Package Quality Overall: Low (4.4/10)

✦ High Test Suite 9.0

Test suite present — 1 test file(s) found

  • Test runner config found: pyproject.toml
  • 1 test file(s) detected (e.g. test_package.py)
◈ Medium Documentation 5.0

Some documentation present

  • Detailed PyPI description (10921 chars)
○ Low Contributing Guide 2.0

No contributing guide or governance files found

  • No CONTRIBUTING, CODE_OF_CONDUCT, or governance files found
◈ Medium Type Annotations 5.0

Partial type annotation coverage

  • 258 type-annotated function signatures detected in source
○ Low Multiple Contributors 1.0

Could not retrieve contributor data from GitHub

  • GitHub API error: 404

🔬 Heuristic Checks

Outbound Network Calls score 7.5

Found 5 network call pattern(s)

  • s" try: request = urllib.request.Request(endpoint, method="GET") with urllib.request.
  • t, method="GET") with urllib.request.urlopen(request, timeout=2) as response: return
  • , auth_prefix)) request = urllib.request.Request( lmstudio_rest_chat_url(base_url), d
  • , ) try: with urllib.request.urlopen(request, timeout=timeout_for_url(base_url, timeout))
  • , auth_prefix)) request = urllib.request.Request( openai_compatible_chat_url(base_url),
Code Obfuscation score 4.0

Found 2 obfuscation pattern(s)

  • decoded = Image.open(BytesIO(base64.b64decode(encoded))) assert data_url.startswith("data:image/png;b
  • decoded = Image.open(BytesIO(base64.b64decode(encoded))) assert data_url.startswith("data:image/jpeg;
Shell / Subprocess Execution score 10.0

Found 6 shell execution pattern(s)

  • S_FROM_WARNINGS", "true") subprocess.run( [rscript_path, "-e", bayesian_network_r_package_exp
  • hell_join(command)}") subprocess.run(command, check=True, env=env) print("\nReinstalling Baye
  • \\n'))" ) completed = subprocess.run( [rscript_path, "-e", expression], text=True
  • S_FROM_WARNINGS", "true") subprocess.run( [rscript_path, "-e", r_package_expression(packages)
  • $ {shell_join(command)}") subprocess.run(command, check=True) def run_setup(skip_system_r: bool = F
  • hell_join(command)}") subprocess.run(command, check=True, env=env) if skip_r_packages:
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 score 3.0

Repository not found (deleted or private)

  • Repository not found (deleted or private)
Maintainer History score 2.0

1 maintainer concern(s) found

  • Author "Anuraj Sudhakaran" 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 ams-meta-analysis
Create a fully functional mini-application using the 'ams-meta-analysis' package in Python. This application will serve as a streamlined interface for conducting meta-analyses of clinical trial data, specifically focusing on the synthesis of evidence from multiple studies. The goal is to provide researchers with a user-friendly tool that simplifies the process of performing complex statistical analyses typically handled by R-based workflows.

Step-by-step instructions:
1. Set up your development environment with Python and install the 'ams-meta-analysis' package along with any necessary dependencies.
2. Design the user interface using Streamlit, ensuring it is intuitive and easy to navigate. Include sections for data input, analysis parameters, and output visualization.
3. Implement functionality for users to upload their own datasets or use preloaded example datasets provided by the 'ams-meta-analysis' package.
4. Integrate the core features of 'ams-meta-analysis', such as data preprocessing, statistical analysis, and result interpretation, into your application.
5. Develop interactive visualizations within the app to display key results of the meta-analysis, including forest plots, funnel plots, and heterogeneity tests.
6. Ensure the application supports various types of meta-analytic models (e.g., fixed-effects, random-effects).
7. Add a feature allowing users to save or export their analysis results in common formats like CSV or PDF.
8. Test the application thoroughly to ensure all functionalities work as expected.
9. Document the setup and usage of the application clearly for other researchers who might want to use it.

Suggested Features:
- User-friendly data upload and preprocessing options.
- Customizable analysis settings for different meta-analytic models.
- Interactive visualizations that update based on user inputs.
- Comprehensive result outputs including effect sizes, confidence intervals, and p-values.
- Export options for results and visualizations.
- Built-in help documentation and examples.

By following these steps and incorporating the suggested features, you will create a valuable tool for researchers looking to perform meta-analyses without needing advanced knowledge of R.

💬 Discussion Feed

Leave a comment

No discussion yet. Be the first to share your thoughts!