Thank you for your interest in contributing to IP-Security! This document provides guidelines for contributing to this repository.
If you find an issue with the IP lists or have suggestions:
- Check if the issue already exists in the Issues section
- If not, create a new issue with:
- Clear description of the problem
- Steps to reproduce (if applicable)
- Expected vs. actual behavior
- Any relevant logs or examples
When contributing IP lists, please ensure:
- Verified Sources: Only include IPs from reputable, verified sources
- Documentation: Include comments explaining the source and nature of IPs
- Current Data: Ensure the list is up-to-date
- No False Positives: Verify IPs are actually malicious/relevant
All IP lists must follow these conventions:
# Comment lines start with hash
# Include source, date, and description
# Individual IPs
192.0.2.1
# CIDR notation for ranges
198.51.100.0/24
# IPv6 support
2001:db8::/32
Requirements:
- One IP address or CIDR range per line
- Comments use
#prefix - No trailing whitespace
- UTF-8 encoding
- Unix line endings (LF)
-
Fork the repository
git clone https://github.com/YOUR-USERNAME/IP-Security.git cd IP-Security -
Create a feature branch
git checkout -b add-new-blocklist
-
Make your changes
- Add or update IP lists
- Update documentation if needed
- Follow format conventions
-
Test your changes
# Validate IP format python examples/blocklist_manager.py --load your-list.txt --stats -
Commit with clear messages
git add blocklists/your-list.txt git commit -m "Add new blocklist for XYZ threats" -
Push and create Pull Request
git push origin add-new-blocklist
Then create a PR on GitHub with:
- Description of what you're adding/changing
- Source of the IP data
- Verification method used
- Any relevant context
Should contain IPs that are:
- Actively malicious
- Confirmed threat sources
- Documented abuse sources
- From reputable threat intelligence
Do NOT include:
- Unverified IPs
- Personal vendettas
- Legitimate services (unless specific security reason)
- Entire ISP ranges without justification
Should contain IPs that are:
- Official CDN/cloud provider ranges
- Well-known trusted services
- Verified from official sources
When contributing usage examples:
- Support multiple platforms where possible
- Include comments explaining each section
- Provide error handling in scripts
- Test thoroughly before submitting
- Follow best practices for the platform
When updating documentation:
- Use clear, concise language
- Include examples where helpful
- Keep formatting consistent
- Update table of contents if needed
- Check for broken links
- Be respectful and inclusive
- Welcome newcomers
- Accept constructive criticism
- Focus on what's best for the community
- Show empathy towards others
- Harassment or discriminatory language
- Trolling or insulting comments
- Personal or political attacks
- Publishing others' private information
- Other conduct inappropriate in a professional setting
- Automated Checks: PR must pass any automated validation
- Peer Review: Maintainers will review for quality and accuracy
- Testing: Changes may be tested before merging
- Feedback: Address any feedback or requested changes
- Merge: Once approved, changes will be merged
Before adding IPs to blocklists, verify through:
- Malware: abuse.ch, VirusTotal, Talos Intelligence
- Botnets: Spamhaus, Feodo Tracker
- Abuse: AbuseIPDB, StopForumSpam
- Tor: Official Tor Project lists
- Check multiple threat intelligence sources
- Verify IP reputation on VirusTotal
- Check WHOIS information
- Review recent activity logs
- Confirm with abuse databases
Always include source information in comments:
# Source: abuse.ch Feodo Tracker
# Date: 2025-12-22
# Description: Dridex C2 servers
192.0.2.10
IP lists should be updated regularly:
- Critical threats: Daily or as discovered
- Malware/Botnets: Weekly
- Abuse lists: Weekly to monthly
- Allowlists: As providers update
Remove IPs when:
- No longer active threats
- False positive confirmed
- IP reassigned to legitimate use
- Source no longer maintained
- Use semantic versioning for major changes
- Tag releases for significant updates
- Maintain changelog
If you have questions about contributing:
- Check existing documentation
- Review closed issues for similar questions
- Open a new issue with your question
- Be patient and respectful
By contributing to IP-Security, you agree that your contributions will be licensed under the GNU General Public License v3.0.
Thank you for helping make the internet safer! 🛡️