Plugin Directory

Changeset 1528833


Ignore:
Timestamp:
11/05/2016 03:49:21 PM (9 years ago)
Author:
hqpeak
Message:

White list option bug fix

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pike-firewall/trunk/pikefirewall.php

    r1528018 r1528833  
    2929
    3030    // Plugin Version constant
    31     if ( !defined('PIKEFIREWALL_VERSION') ) define('PIKEFIREWALL_VERSION', '1.3.1');
     31    if ( !defined('PIKEFIREWALL_VERSION') ) define('PIKEFIREWALL_VERSION', '1.3.2');
    3232
    3333    // Global Settings
     
    6666            "5"=>"facebook"
    6767    );
    68        
     68   
     69    $white_check = false;
    6970    $whitelist = ( isset($pike_firewall_options['whitelist']) && !empty($pike_firewall_options['whitelist']) ) ? explode(',', $pike_firewall_options['whitelist']) : "";
    7071    if ( is_array($whitelist) && sizeof($whitelist) > 0 ) {
    71         $white_check = false;
    7272        $user_address = pike_firewall_get_user_ip();
    7373        foreach ( $whitelist as $white_addr ) {
     
    7777            }
    7878        }
    79        
    80         if ( !$white_check ) {
    81             check_stealth();    // Stealth functionality
    82             add_action('init', 'show_captcha', 4);      // Show captcha to filter humans from bots
    83             add_action('init', 'pike_firewall_crawlers', 10);   // Crawlers detection and checking
    84            
    85             add_action('init', 'pike_firewall_read_content');   // Deny reading public content
    86             add_action('init', 'pike_firewall_post_comments');  // Deny comments
    87             add_action('register_post', 'pike_firewall_user_registration');     // Deny registration
    88             add_action('init', 'pike_firewall_subscription');   // Deny subscription
    89             add_action('admin_init','pike_firewall_admin_access_deny');     // Deny administration panel access
    90             add_action('init', 'pike_firewall_post_request_deny');      // Deny POST requests
    91             add_action('init', 'pike_firewall_block_requests');     // Deny specific requests
    92            
    93             add_action('init', 'pike_firewall_foreign_request_check', 15);      // POST requests with foreign origin check
    94             add_action('init', 'pike_firewall_user_agent_check', 15);       // POST requests with strange User Agent check
    95             add_action('init', 'pike_firewall_user_enumeration', 15);       // WP User Enumeratin check
    96             add_action('init', 'pike_firewall_proxy_headers_check', 15);    // Proxy Headers check
    97            
    98             // Creates widget for the Tor Blocker
    99             add_action('widgets_init', function() {
    100                 wp_register_sidebar_widget(
    101                     'Pike_Firewall_Widget',       // unique widget id
    102                     'Pike Firewall Widget',       // widget name
    103                     'widget_display',           // callback function
    104                     array(                     // options
    105                             'description' => __('Pike Firewall Widget!', 'text_domain')
    106                         )
    107                 );
    108             });
    109         }
     79    }
     80   
     81    if ( !$white_check ) {
     82        check_stealth();    // Stealth functionality
     83        add_action('init', 'show_captcha', 4);      // Show captcha to filter humans from bots
     84        add_action('init', 'pike_firewall_crawlers', 10);   // Crawlers detection and checking
     85       
     86        add_action('init', 'pike_firewall_read_content');   // Deny reading public content
     87        add_action('init', 'pike_firewall_post_comments');  // Deny comments
     88        add_action('register_post', 'pike_firewall_user_registration');     // Deny registration
     89        add_action('init', 'pike_firewall_subscription');   // Deny subscription
     90        add_action('admin_init','pike_firewall_admin_access_deny');     // Deny administration panel access
     91        add_action('init', 'pike_firewall_post_request_deny');      // Deny POST requests
     92        add_action('init', 'pike_firewall_block_requests');     // Deny specific requests
     93       
     94        add_action('init', 'pike_firewall_foreign_request_check', 15);      // POST requests with foreign origin check
     95        add_action('init', 'pike_firewall_user_agent_check', 15);       // POST requests with strange User Agent check
     96        add_action('init', 'pike_firewall_user_enumeration', 15);       // WP User Enumeratin check
     97        add_action('init', 'pike_firewall_proxy_headers_check', 15);    // Proxy Headers check
     98       
     99        // Creates widget for the Tor Blocker
     100        add_action('widgets_init', function() {
     101            wp_register_sidebar_widget(
     102                'Pike_Firewall_Widget',       // unique widget id
     103                'Pike Firewall Widget',       // widget name
     104                'widget_display',           // callback function
     105                array(                     // options
     106                        'description' => __('Pike Firewall Widget!', 'text_domain')
     107                    )
     108            );
     109        });
    110110    }
    111111   
     
    199199        global $wpdb;
    200200        $table_name = $wpdb->prefix."pike_firewall_single_ip";
    201         $query = $wpdb->get_row("SELECT * FROM $table_name WHERE `ip`=$long_ip");
     201        $query = $wpdb->get_row("SELECT * FROM $table_name WHERE `ip`='$long_ip'");
    202202        if ($query !== NULL){
    203203            return $query;
     
    211211        global $wpdb;
    212212        $table_name = $wpdb->prefix."pike_firewall_ip_range";
    213         $query = $wpdb->get_row("SELECT * FROM $table_name WHERE $long_ip BETWEEN `min` AND `max`");
     213        $query = $wpdb->get_row("SELECT * FROM $table_name WHERE '$long_ip' BETWEEN `min` AND `max`");
    214214        if ($query !== NULL){
    215215            return $query;
     
    223223        global $wpdb;
    224224        $table_name = $wpdb->prefix."pike_firewall_crawl_ip";
    225         $query = $wpdb->get_row("SELECT * FROM $table_name WHERE intip=$long_ip");
     225        $query = $wpdb->get_row("SELECT * FROM $table_name WHERE intip='$long_ip'");
    226226        if ($query !== NULL){
    227227            return $query;
     
    235235        global $wpdb;
    236236        $table_name = $wpdb->prefix."pike_firewall_crawl_range";
    237         $query = $wpdb->get_row("SELECT * FROM $table_name WHERE minip <= $long_ip AND maxip >= $long_ip");
     237        $query = $wpdb->get_row("SELECT * FROM $table_name WHERE minip <= '$long_ip' AND maxip >= '$long_ip'");
    238238        if ($query !== NULL){
    239239            return $query;
     
    247247        global $wpdb;
    248248        $table_name = $wpdb->prefix."pike_firewall_crawl_fake";
    249         $query = $wpdb->get_row("SELECT * FROM $table_name WHERE intip=$long_ip");
     249        $query = $wpdb->get_row("SELECT * FROM $table_name WHERE intip='$long_ip'");
    250250        if ($query !== NULL){
    251251            return $query;
     
    317317
    318318        $table_name = $wpdb->prefix."pike_firewall_crawl_ip";
    319         $row = $wpdb->get_row("SELECT * FROM $table_name WHERE intip=$user2long");
     319        $row = $wpdb->get_row("SELECT * FROM $table_name WHERE intip='$user2long'");
    320320        if ( $row !== NULL ) {
    321321            if ( isset($vendors[$row->provider]) ){
     
    334334   
    335335        $table_name = $wpdb->prefix."pike_firewall_crawl_range";
    336         $row = $wpdb->get_row("SELECT * FROM $table_name WHERE minip <= $user2long AND maxip >= $user2long");
     336        $row = $wpdb->get_row("SELECT * FROM $table_name WHERE minip <= '$user2long' AND maxip >= '$user2long'");
    337337        if ( $row !== NULL ) {
    338338            if ( isset($vendors[$row->provider]) ){
     
    492492        $table_name = $wpdb->prefix."pike_firewall_single_ip";
    493493       
    494         $result = $wpdb->get_results("SELECT * FROM $table_name WHERE ip=$user2long");
     494        $result = $wpdb->get_results("SELECT * FROM $table_name WHERE ip='$user2long'");
    495495        if ( empty($result) ) {
    496496            $sql = "INSERT INTO $table_name (ip) VALUES('".esc_sql($user2long)."')";
     
    17911791                $user2long = ip2long($user_address);
    17921792           
    1793                 $pikefirewall_address = $wpdb->get_row("SELECT * FROM $table_name_iprange WHERE $user2long BETWEEN `min` AND `max`");
     1793                $pikefirewall_address = $wpdb->get_row("SELECT * FROM $table_name_iprange WHERE '$user2long' BETWEEN `min` AND `max`");
    17941794                if ($pikefirewall_address !== NULL){
    17951795                    return array('address' => $user2long, 'type' => 'IP Range');
    17961796                } else {
    1797                     $pikefirewall_address = $wpdb->get_row("SELECT * FROM $table_name WHERE `ip`=$user2long");
     1797                    $pikefirewall_address = $wpdb->get_row("SELECT * FROM $table_name WHERE `ip`='$user2long'");
    17981798                    if ($pikefirewall_address !== NULL){
    17991799                        return array('address' => $pikefirewall_address->ip, 'type' => 'Tor/Proxy');
     
    18061806                $user2long = ip2long($user_address);
    18071807           
    1808                 $pikefirewall_address = $wpdb->get_row("SELECT * FROM $table_name_iprange WHERE $user2long BETWEEN `min` AND `max`");
     1808                $pikefirewall_address = $wpdb->get_row("SELECT * FROM $table_name_iprange WHERE '$user2long' BETWEEN `min` AND `max`");
    18091809                if ($pikefirewall_address !== NULL){
    18101810                    return array('address' => $user2long, 'type' => 'IP Range');
    18111811                } else {
    1812                     $pikefirewall_address = $wpdb->get_row("SELECT * FROM $table_name WHERE `ip`=$user2long");
     1812                    $pikefirewall_address = $wpdb->get_row("SELECT * FROM $table_name WHERE `ip`='$user2long'");
    18131813                    if ($pikefirewall_address !== NULL){
    18141814                        return array('address' => $pikefirewall_address->ip, 'type' => 'Tor/Proxy');
     
    18161816                }
    18171817            }
    1818            
     1818
    18191819            return false;
    18201820           
Note: See TracChangeset for help on using the changeset viewer.