API Security Tester
A machine learning-based framework for testing and assessing mobile application security vulnerabilities.
Features
- Vulnerability detection using machine learning
- Security risk assessment
- Detailed security reports generation
- Advanced metrics calculation (ROC-AUC, PR-AUC)
- Support for multiple security features analysis
Installation
pip install api-security-tester
Quick Start
from api_security_tester import MobileAppSecurityFramework
framework = MobileAppSecurityFramework()
app_features = {
'storage_encryption_level': 0.8,
'api_security_score': 0.7,
'data_transmission_security': 0.9,
'authentication_strength': 0.8,
'input_validation_score': 0.7,
'network_communication_security': 0.8,
'third_party_library_risk': 0.2,
'runtime_permissions_management': 0.7,
'code_obfuscation_level': 0.6,
'certificate_pinning_implementation': 0.8
}
results = framework.detect_vulnerabilities(app_features)
report = framework.generate_security_report(results)
print(report)
Security Features
The framework analyzes the following security aspects:
- Storage Encryption Level
- API Security
- Data Transmission Security
- Authentication Strength
- Input Validation
- Network Communication Security
- Third-party Library Risk
- Runtime Permissions Management
- Code Obfuscation
- Certificate Pinning
Advanced Usage
Training Custom Models
framework.generate_dataset(n_samples=1000)
framework.load_dataset('mobile_app_vulnerabilities.csv')
framework.build_ml_model()
framework.train_model()
framework.save_model('custom_model.h5')
Calculating Advanced Metrics
metrics = framework.calculate_advanced_metrics()
print(f"ROC-AUC Score: {metrics['roc_auc']}")
print(f"PR-AUC Score: {metrics['pr_auc']}")
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
For support, please open an issue in the GitHub repository or contact contact@ashinno.com