jadb / honeypot
Project Honey Pot (un-official) PHP SDK
Requires (Dev)
- phpunit/phpunit: ~5.0
This package is auto-updated.
Last update: 2024-11-28 01:53:39 UTC
README
The Project Honey Pot's un-official PHP SDK.
Using the library, you can start auto-detecting bad visitors (HttpBL
) and/or help
deterring new ones (Quicklink
).
Install
composer require jadb/honeypot:1.0.x-dev
Usage
HttpBL
To use the Http::BL API, you will first need an API key. Head over and register if you haven't already (this is a referral link):
Once you have that, you can just do:
<?php if (!(new \Honeypot\HttpBL('your-api-key'))->isSafe('127.0.0.1') { exit('Unsafe visitor'); }
If you want more control over the rules:
<?php /** * By default, strict mode is used. When not in strict mode, any pass is a pass. This ruleset * translates to: 5 days or older, or threat score lower than 2, or visitor type lower than 4. */ $strict = false; $age = 5; $score = 2; $type = 4; if (!(new \Honeypot\HttpBL('your-api-key'))->isSafe('127.0.0.1', $age, $score, $type) { exit('Unsafe visitor'); }
For even more, you could just get the Address
object and create your own validation:
<?php $address = (new \Honeypot\HttpBL('your-api-key'))->address('127.0.0.1');
NOTE: For testing purposes, dummy data is made available.
Quicklink
To use quicklinks and help deterring new bad IPs, you will need to get a honeypot's URL or host your own honeypot.
Once that is done, you can create up to 8 different links by doing:
<?php // this will create 5 links echo (new \Honeypot\Quicklink('http://link.to.honeypot.org/'))->render(5);
Patches & Features
- Fork
- Mod, fix
- Test - this is important, so it's not unintentionally broken
- Commit - do not mess with license, todo, version, etc. (if you do change any, bump them into commits of their own that I can ignore when I pull)
- Pull request - bonus point for topic branches
To ensure your PRs are considered for upstream, you MUST follow the PSR2 coding standards.
Bugs & Feedback
http://github.com/jadb/honeypot/issues
License
Copyright (c) 2015, Jad Bitar and licensed under The MIT License.