1. PHP / Говнокод #23478

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    if(@isset($_GET['id'])){
    [email protected]_connect(\"127.0.0.1\",\"user_noprivs\",\"unbr34k4bё3!\") or
    die(\"sorry can't connect\");
    @mysql_select_db(\"cms\") or die(\"sorry can't select DB\");
    $sql_query = @mysql_query(
    \"select content from content_table where id=\".$_GET['id']) or die(\"Sorry
    wrong
    SQL Query\");
    // oops SQL Injection-^
    while($tmp = @mysql_fetch_row($sql_query))
    echo $tmp[0]; //echoes the result as HTML code
    }else{
    echo \"Welcome to My Bank
    \".Login.\"\";
    }

    Оригинал: ru.wikipedia.org/wiki/SiXSS

    Оригинал оригинала: securitylab.ru/analytics/216380.php?el_id=216380&VOTE_ID=104&view _result=Y

    Смысл не в смысле кода, а в том, как можно было вообще умудрится так скопировать текст, что бы везде было экранирование

    d_fomenok, 02 Ноября 2017

    Комментарии (0)
  2. PHP / Говнокод #23467

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    function string_cleaner($data, array $opts) //1: Массив или строка, 2: Только массив
    	{
    		
    		if (empty($opts))
    		{
    			$opts['null_byte'] = TRUE;
    		}
    		
    		$null_byte = ($opts['null_byte'] == 'off')
    			? FALSE
    			: TRUE;
    		
    		$opts_allowed = ['trim', 'htmlspecialchars', 'strip_tags', 'addslashes', 'htmlentities'];
    		
    		$opts = array_intersect_key($opts, array_flip($opts_allowed));
    		
    		if(is_array($data))
    		{
    			foreach($data as $key => &$value)
    			{
    				if(is_array($value))
    				{
    					string_cleaner($value, $opts);
    				}
    				
    				if ($null_byte)
    				{
    					$value = str_replace(chr(0), '', $value);
    				}
    				
    				if(is_array($opts))
    				{
    					foreach($opts as $clear_func => $clear_func_params)
    					{
    						$value = (!$clear_func_params) ? $clear_func($value) : $clear_func($value, $clear_func_params);
    					}
    				}
    			}
    		}
    		else
    		{
    			if ($null_byte)
    			{
    				$data = str_replace(chr(0), '', $data);
    			}
    			
    			if(is_array($opts))
    			{
    				foreach($opts as $clear_func => $clear_func_params)
    				{
    					$data = $value = (!$clear_func_params) ? $clear_func($data) : $clear_func($data, $clear_func_params);
    				}
    			}
    		}
    		
    		return $data;
    		
    	}
    
    {...}
    
    	$server['get'] = string_cleaner($_GET, ['trim'=>' ', 'htmlentities'=>'', 'strip_tags'=>'', 'addslashes'=>'']);

    Для сука ленивых

    Intention, 30 Октября 2017

    Комментарии (30)
  3. PHP / Говнокод #23466

    −2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    <?php
    
    for($a = 1;$a <= 1;$a++){
        echo "$a";
        for ($b = 2 ;$b <= 2;$b++){
            echo "<br /> $b";
            for ($c = 3 ;$c <= 3;$c++){
                echo "$c";
                for ($d = 4;$d <= 4;$d++){
                    echo "<br/> $d";
                    for ($e = 5;$e <= 5;$e++){
                        echo "$e";
                        for($f = 6;$f <= 6;$f++){
                            echo "$f";
                            for ($j = 7;$j <= 7;$j++){
                                echo "<br />$j";
                                for ($h = 8;$h <=8;$h++)
                                echo "$h";
                                for ($i = 9;$i <= 9;$i++){
                                    echo "$i";
                                    for ($k = 10;$k <= 10;$k++){
                                        echo "$k";
                                        for ($l = 11;$l <= 11;$l++){
                                            echo "<br />$l";
                                            for ($m = 12;$m <= 12;$m++){
                                                echo "$m";
                                                for ($n = 13;$n <= 13;$n++){
                                                    echo "$n";
                                                    for ($o = 14;$o <= 14;$o++){
                                                        echo "$o";
                                                        for ($p = 15;$p <= 15;$p++){
                                                            echo "$p";
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    talibana, 30 Октября 2017

    Комментарии (7)
  4. PHP / Говнокод #23464

    +8

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    $data['age_range'] = array(
                '18' => '18', '19' => '19', '20' => '20',
                '21' => '21', '22' => '22', '23' => '23', '24' => '24', '25' => '25',
                '26' => '26', '27' => '27', '28' => '28', '29' => '29', '30' => '30',
                '31' => '31', '32' => '32', '33' => '33', '34' => '34', '35' => '35',
                '36' => '36', '37' => '37', '38' => '38', '39' => '39', '40' => '40',
                '41' => '41', '42' => '42', '43' => '43', '44' => '44', '45' => '45',
                '46' => '46', '47' => '47', '48' => '48', '49' => '49', '50' => '50',
                '51' => '51', '52' => '52', '53' => '53', '54' => '54', '55' => '55',
                '56' => '56', '57' => '57', '58' => '58', '59' => '59', '60' => '60',
                '61' => '61', '62' => '62', '63' => '63', '64' => '64', '65' => '65',
                '66' => '66', '67' => '67', '68' => '68', '69' => '69', '70' => '70',
                '71' => '71', '72' => '72', '73' => '73', '74' => '74', '75' => '75',
                '76' => '76', '77' => '77', '78' => '78', '79' => '79', '80' => '80',
                '81' => '81', '82' => '82', '83' => '83', '84' => '84', '85' => '85',
                '86' => '86', '87' => '87', '88' => '88', '89' => '89', '90' => '90',
                '91' => '91', '92' => '92', '93' => '93', '94' => '94', '95' => '95',
                '96' => '96', '97' => '97', '98' => '98', '99' => '99', '100' => '100',
                '101' => '101', '102' => '102', '103' => '103', '104' => '104', '105' => '105',
                '106' => '106', '107' => '107', '108' => '108', '109' => '109', '110' => '110', '111' => '111', '112' => '112'
            );

    Hahaha classic

    gorsash, 29 Октября 2017

    Комментарии (24)
  5. PHP / Говнокод #23461

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    public function hasSubscriptionLot(int $lotId) : bool
    {
        foreach ($this->getSubscriptionLotIds() as $subLotId => $quantity) {
            if ($lotId == $subLotId) {
                return true;
            }
       }
    
       return false;
    }

    array_key_exists?.. не, не слышали

    gavaez, 28 Октября 2017

    Комментарии (2)
  6. PHP / Говнокод #23460

    +5

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    function getadminuserid(){
    	global $wpdb;
        //Get all users in the DB
        $wp_user_search = $wpdb->get_results("SELECT ID, display_name FROM $wpdb->users ORDER BY ID");
    
        //Blank array
        $adminArray = array();
        //Loop through all users
        foreach ( $wp_user_search as $userid ) {
            //Current user ID we are looping through
            $curID = $userid->ID;
            //Grab the user info of current ID
            $curuser = get_userdata($curID);
            //Current user level
            $user_level = $curuser->user_level;
            //Only look for admins
            if($user_level >= 8){//levels 8, 9 and 10 are admin
                //Push user ID into array
                $adminArray[] = $curID;
            }
        }
        return $adminArray;
    }

    1) Get IDs for all users
    2) Iterate over result set to find admin `get_userdata` function = 1 DB call

    outcome:
    1) full RAM
    2) dead DB

    ===
    official woocommerce plugin by company

    tatocaster, 27 Октября 2017

    Комментарии (16)
  7. PHP / Говнокод #23448

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    <?php
    class SmsController extends Controller
    {
        protected static $currentYear;
    
        public static function currentYear()
        {
            if (is_null(self::$currentYear)) {
                self::$currentYear = date('Y');
            }
    
            return self::$currentYear;
        }
    ?>

    :-D

    FireDemonru, 24 Октября 2017

    Комментарии (46)
  8. PHP / Говнокод #23447

    0

    1. 1
    $this->currencyIntToFloat($this->contract->getCredit()->getParams()['installments'][key($this->contract->getCredit()->getParams()['installments'])]['interestAmount']);

    dmitrij, 23 Октября 2017

    Комментарии (13)
  9. PHP / Говнокод #23425

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    <?php
    class Foo implements JsonSerializable {
      public function jsonSerialize() {
        return new self;
      }
    }
    
    # Segfault!
    var_dump(json_encode(new Foo));

    https://habrahabr.ru/company/mailru/blog/340242/
    😆

    inho, 17 Октября 2017

    Комментарии (3)
  10. PHP / Говнокод #23424

    0

    1. 1
    2. 2
    3. 3
    4. 4
    $fileName = substr(md5(microtime() . md5(rand(0, 4)) . md5(123)), 0, 5);
    $fileName .= '-' . substr(md5(microtime() . md5(rand(0, 4)) . md5(123)), 5, 8);
    $fileName .= '-' . substr(md5(microtime() . md5(rand(0, 4)) . md5(123)), 0, 5);
    $fileName .= '.' . end($ext);

    Генерация имени файла

    FireDemonru, 17 Октября 2017

    Комментарии (2)