PHP Classes

CIDRAM: Check if an IP address is a bad source of traffic

Recommend this page to a friend!
  Info   View files Documentation   View files View files (150)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog    
Ratings Unique User Downloads Download Rankings
Not yet rated by the usersTotal: 118 This week: 1All time: 9,514 This week: 560Up
Version License PHP version Categories
cidram 1.0Custom (specified...5Networking, PHP 5, Security
Description 

Author

This package can be used to check if an IP address is a bad source of traffic.

It calculates the possible CIDRs (Classless Inter-Domain Routing) of a given IP addresses that is being used for instance by the remote user to access the current site.

The package attempts to match IP address CIDR value signatures read from files that contain CIDR values and IP addresses of known IP addresses regarded as being sources of undesirable traffic. If a match is found, the current request can be blocked.

Innovation Award
PHP Programming Innovation award nominee
September 2019
Number 3
Many sites are under attack from computers that use the Internet to take advantage of the site resources for unintended purposes.

Some attacks can come from computers located in known networks or computers from IP addresses that are known to be controlled by some kind of harmful software that accesses sites with bad intentions.

This package can compute the CIDR of a given IP address to and lockup on files with CIDR signatures of known IP addresses that are bad sources of traffic, so applications can block or ignore accesses from that IP address.

Manuel Lemos
Picture of Caleb
Name: Caleb <contact>
Classes: 4 packages by
Country: Australia Australia
Age: ???
All time rank: 347641 in Australia Australia
Week rank: 411 Up3 in Australia Australia Up
Innovation award
Innovation award
Nominee: 2x

Documentation

Join the chat at https://gitter.im/CIDRAM/Lobby v1: PHP >= 5.4.0 v2: PHP >= 7.2.0 License: GPL v2 PRs Welcome

What is CIDRAM?

CIDRAM (Classless Inter-Domain Routing Access Manager) is a PHP script designed to protect websites by blocking requests originating from IP addresses regarded as being sources of undesirable traffic, including (but not limited to) traffic from non-human access endpoints, cloud services, spambots, scrapers, etc. It does this by calculating the possible CIDRs of the IP addresses supplied from inbound requests and then attempting to match these possible CIDRs against its signature files (these signature files contain lists of CIDRs of IP addresses regarded as being sources of undesirable traffic); If matches are found, the requests are blocked.

Features:

  • Licensed as GNU General Public License version 2.0 (GPLv2).
  • Easy to install, easy to customise, easy to use.
  • Works for any system with PHP+PCRE installed, regardless of OS (PHP+PCRE required).
  • Fully configurable based on your needs.
  • Ideal solution for websites and forum systems using shared hosting services.
  • Does NOT require shell access.
  • Does NOT require administrative privileges.
  • Good, strong, stable support base.

Documentation:

[\[CONTRIBUTING.md\] Want to help?](https://github.com/CIDRAM/CIDRAM/blob/v2/CONTRIBUTING.md)

Current major version development status:

?Stage reached? ?Major version? | v0 | v1 | v2 | v3 ---|---|---|---|--- Pre-Alpha<em><br />- Exploring early concepts/ideas. No code written/available yet.</em> | ? | ? | ? | ? Alpha<em><br />- Branched, but unstable. Not production-ready (high risk if used).</em> | ? | ? | ? Beta<em><br />- Branched, but unstable. Not production-ready (low risk if used).</em> | ? | ? | ? Stable<em><br />- First production-ready version has been tagged/released.</em> | ? | ? | ? Mature<em><br />- Multiple stable versions/releases exist.</em> | ? | ? | ? Locked<em><br />- Still maintained, but new features won't be implemented anymore.</em> | ? EoL/Dead<em><br />- Not maintained anymore. If possible, stop using, and update ASAP.</em> | ?

Last Updated: 31 August 2019 (2019.08.31).


  Files folder image Files  
File Role Description
Files folder image.github (1 file)
Files folder imagetests (3 files, 2 directories)
Files folder imagevault (30 files, 3 directories)
Accessible without login Plain text file .travis.yml Data Auxiliary data
Accessible without login Plain text file Changelog.txt Doc. Documentation
Accessible without login Plain text file codeception.yml Data Auxiliary data
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file CONTRIBUTING.md Data Auxiliary data
Accessible without login Plain text file crowdin.yml Data Auxiliary data
Accessible without login Plain text file LICENSE.txt Lic. License
Accessible without login Plain text file loader.php Aux. Auxiliary script
Accessible without login Plain text file README.md Doc. Documentation
Accessible without login Plain text file SECURITY.md Data Auxiliary data
Accessible without login Plain text file web.config Data Auxiliary data

  Files folder image Files  /  .github  
File Role Description
  Accessible without login Plain text file ISSUE_TEMPLATE.md Data Auxiliary data

  Files folder image Files  /  tests  
File Role Description
Files folder imageunit (3 files)
Files folder image_support (3 files, 2 directories)
  Accessible without login Plain text file acceptance.suite.yml Data Auxiliary data
  Accessible without login Plain text file functional.suite.yml Data Auxiliary data
  Accessible without login Plain text file unit.suite.yml Data Auxiliary data

  Files folder image Files  /  tests  /  unit  
File Role Description
  Plain text file Ipv4Cest.php Class Class source
  Plain text file Ipv6Cest.php Class Class source
  Plain text file LoaderCest.php Class Class source

  Files folder image Files  /  tests  /  _support  
File Role Description
Files folder imageconfig (1 file)
Files folder imageHelper (3 files)
  Plain text file AcceptanceTester.php Class Class source
  Plain text file FunctionalTester.php Class Class source
  Plain text file UnitTester.php Class Class source

  Files folder image Files  /  tests  /  _support  /  config  
File Role Description
  Accessible without login Plain text file config.ini Data Auxiliary data

  Files folder image Files  /  tests  /  _support  /  Helper  
File Role Description
  Plain text file Acceptance.php Class Class source
  Plain text file Functional.php Class Class source
  Plain text file Unit.php Class Class source

  Files folder image Files  /  vault  
File Role Description
Files folder imageclasses (2 files, 1 directory)
Files folder imagefe_assets (35 files)
Files folder imagelang (50 files)
  Accessible without login Plain text file .htaccess Data Auxiliary data
  Accessible without login Plain text file channels.yaml Data Auxiliary data
  Accessible without login Plain text file cidramblocklists.dat Data Auxiliary data
  Accessible without login Plain text file components.dat Data Auxiliary data
  Accessible without login Plain text file config.ini.RenameMe Data Auxiliary data
  Accessible without login Plain text file config.php Example Example script
  Accessible without login Plain text file config.yaml Data Auxiliary data
  Accessible without login Plain text file frontend.php Example Example script
  Accessible without login Plain text file frontend_functions.php Example Example script
  Accessible without login Plain text file functions.php Example Example script
  Accessible without login Plain text file ignore.dat Data Auxiliary data
  Accessible without login Plain text file ipv4.dat Data Auxiliary data
  Accessible without login Plain text file ipv4_bogons.dat Data Auxiliary data
  Accessible without login Plain text file ipv4_custom.dat.RenameMe Data Auxiliary data
  Accessible without login Plain text file ipv4_isps.dat Data Auxiliary data
  Accessible without login Plain text file ipv4_other.dat Data Auxiliary data
  Accessible without login Plain text file ipv6.dat Data Auxiliary data
  Accessible without login Plain text file ipv6_bogons.dat Data Auxiliary data
  Accessible without login Plain text file ipv6_custom.dat.RenameMe Data Auxiliary data
  Accessible without login Plain text file ipv6_isps.dat Data Auxiliary data
  Accessible without login Plain text file ipv6_other.dat Data Auxiliary data
  Accessible without login Plain text file lang.php Example Example script
  Accessible without login Plain text file modules.dat Data Auxiliary data
  Accessible without login Plain text file rules_as6939.php Example Example script
  Accessible without login Plain text file rules_softlayer.php Example Example script
  Accessible without login Plain text file rules_specific.php Example Example script
  Accessible without login HTML file template_custom.html Doc. Documentation
  Accessible without login HTML file template_default.html Doc. Documentation
  Accessible without login Plain text file themes.dat Data Auxiliary data
  Accessible without login Plain text file verification.yaml Data Auxiliary data

  Files folder image Files  /  vault  /  classes  
File Role Description
Files folder imageMaikuolan (8 files)
  Plain text file Aggregator.php Class Class source
  Plain text file Reporter.php Class Class source

  Files folder image Files  /  vault  /  classes  /  Maikuolan  
File Role Description
  Plain text file Cache.php Class Class source
  Plain text file ComplexStringHandler.php Class Class source
  Plain text file DelayedIO.php Class Class source
  Plain text file Demojibakefier.php Class Class source
  Plain text file Events.php Class Class source
  Plain text file L10N.php Class Class source
  Plain text file NumberFormatter.php Class Class source
  Plain text file YAML.php Class Class source

  Files folder image Files  /  vault  /  fe_assets  
File Role Description
  Accessible without login Plain text file frontend.css Data Auxiliary data
  Accessible without login HTML file frontend.html Doc. Documentation
  Accessible without login Plain text file icons.php Aux. Auxiliary script
  Accessible without login Plain text file pips.php Aux. Auxiliary script
  Accessible without login Plain text file scripts.js Data Auxiliary data
  Accessible without login HTML file _2fa.html Doc. Documentation
  Accessible without login HTML file _accounts.html Doc. Documentation
  Accessible without login HTML file _accounts_row.html Doc. Documentation
  Accessible without login HTML file _aux.html Doc. Documentation
  Accessible without login HTML file _cache.html Doc. Documentation
  Accessible without login HTML file _cidr_calc.html Doc. Documentation
  Accessible without login HTML file _cidr_calc_row.html Doc. Documentation
  Accessible without login HTML file _config.html Doc. Documentation
  Accessible without login HTML file _config_row.html Doc. Documentation
  Accessible without login HTML file _files.html Doc. Documentation
  Accessible without login HTML file _files_edit.html Doc. Documentation
  Accessible without login HTML file _files_rename.html Doc. Documentation
  Accessible without login HTML file _files_row.html Doc. Documentation
  Accessible without login HTML file _fixer.html Doc. Documentation
  Accessible without login HTML file _home.html Doc. Documentation
  Accessible without login HTML file _ip_aggregator.html Doc. Documentation
  Accessible without login HTML file _ip_test.html Doc. Documentation
  Accessible without login HTML file _ip_test_row.html Doc. Documentation
  Accessible without login HTML file _ip_tracking.html Doc. Documentation
  Accessible without login HTML file _ip_tracking_row.html Doc. Documentation
  Accessible without login HTML file _login.html Doc. Documentation
  Accessible without login HTML file _logs.html Doc. Documentation
  Accessible without login HTML file _nav_complete_access.html Doc. Documentation
  Accessible without login HTML file _nav_logs_access_only.html Doc. Documentation
  Accessible without login HTML file _range.html Doc. Documentation
  Accessible without login HTML file _range_row.html Doc. Documentation
  Accessible without login HTML file _sections.html Doc. Documentation
  Accessible without login HTML file _statistics.html Doc. Documentation
  Accessible without login HTML file _updates.html Doc. Documentation
  Accessible without login HTML file _updates_row.html Doc. Documentation

  Files folder image Files  /  vault  /  lang  
File Role Description
  Accessible without login Plain text file lang.ar.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ar.yaml Data Auxiliary data
  Accessible without login Plain text file lang.bn.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.bn.yaml Data Auxiliary data
  Accessible without login Plain text file lang.de.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.de.yaml Data Auxiliary data
  Accessible without login Plain text file lang.en.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.en.yaml Data Auxiliary data
  Accessible without login Plain text file lang.es.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.es.yaml Data Auxiliary data
  Accessible without login Plain text file lang.fr.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.fr.yaml Data Auxiliary data
  Accessible without login Plain text file lang.hi.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.hi.yaml Data Auxiliary data
  Accessible without login Plain text file lang.id.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.id.yaml Data Auxiliary data
  Accessible without login Plain text file lang.it.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.it.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ja.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ja.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ko.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ko.yaml Data Auxiliary data
  Accessible without login Plain text file lang.lv.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.lv.yaml Data Auxiliary data
  Accessible without login Plain text file lang.nl.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.nl.yaml Data Auxiliary data
  Accessible without login Plain text file lang.no.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.no.yaml Data Auxiliary data
  Accessible without login Plain text file lang.pl.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.pl.yaml Data Auxiliary data
  Accessible without login Plain text file lang.pt.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.pt.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ru.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ru.yaml Data Auxiliary data
  Accessible without login Plain text file lang.sv.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.sv.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ta.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ta.yaml Data Auxiliary data
  Accessible without login Plain text file lang.th.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.th.yaml Data Auxiliary data
  Accessible without login Plain text file lang.tr.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.tr.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ur.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.ur.yaml Data Auxiliary data
  Accessible without login Plain text file lang.vi.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.vi.yaml Data Auxiliary data
  Accessible without login Plain text file lang.zh-tw.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.zh-tw.yaml Data Auxiliary data
  Accessible without login Plain text file lang.zh.fe.yaml Data Auxiliary data
  Accessible without login Plain text file lang.zh.yaml Data Auxiliary data

 Version Control Unique User Downloads Download Rankings  
 100%
Total:118
This week:1
All time:9,514
This week:560Up