- 1
// кода не выкладываю, по соображениям безопасности
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+144
// кода не выкладываю, по соображениям безопасности
Не писаным правилом безопасности (при создание сайтов) считается, что доступ к админке в целом и конкретно к отдельным её частям должен иметь только авторизированный пользователь. На самом деле все обстоит не так, с уже известной вам горе компании (КСК), для примера привожу безобидное (дабы не пошли ломать ресурсы) пренебрежением безопасности: http://amisharin.ru/admin/ieeditor/ieeditor.php?vname=htmlcode
Как видно не авторизированный пользователь получает доступ к редактору (который, кстати, стабильно работает, только в IE6).
+77.6
public void run()
{
try
{
startExport();
}
catch (Throwable _t)
{
sendEvent(""+_t.getMessage(), true);
logger.log(Level.SEVERE, charset, _t);
}
finally
{
System.gc();
}
}
А ещё этот человек дёргает в одном сервисе gc каждые 4 секунды. Любые попытки ударить по рукам нарываются на отлуп: "так работает же!". Это не студент! Это реальный production код!
−364.8
Процедура ДействияФормыСформировать(Кнопка)
Запись = Новый Структура;
Запись.Вставить("Номер",);
Запись.Вставить("ФизЛицо",);
Запись.Вставить("ТабНомер",);
Запись.Вставить("д1",);
Запись.Вставить("д2",);
Запись.Вставить("д3",);
Запись.Вставить("д4",);
Запись.Вставить("д5",);
Запись.Вставить("д6",);
Запись.Вставить("д7",);
Запись.Вставить("д8",);
Запись.Вставить("д9",);
Запись.Вставить("д10",);
Запись.Вставить("д11",);
Запись.Вставить("д12",);
Запись.Вставить("д13",);
Запись.Вставить("д14",);
Запись.Вставить("д15",);
Запись.Вставить("д16",);
Запись.Вставить("д17",);
Запись.Вставить("д18",);
Запись.Вставить("д19",);
Запись.Вставить("д20",);
Запись.Вставить("д21",);
Запись.Вставить("д22",);
Запись.Вставить("д23",);
Запись.Вставить("д24",);
Запись.Вставить("д25",);
Запись.Вставить("д26",);
Запись.Вставить("д27",);
Запись.Вставить("д28",);
Запись.Вставить("д29",);
Запись.Вставить("д30",);
Запись.Вставить("д31",);
Не ожидал от своего коллеги такого говнокода :) Хорошо, что в месяце не 100 дней ;_)
Данный код можно заменить
Для й = 1 По 31 Цикл
Запись.Вставить("д" + Строка(й));
КонецЦикла;
+171
// Сначала я увидел такой самонадеянный способ "послать нахуй все инъекции" (magic_quotes_gpc при этом вообще не проверялись :-))
# Посылаем смело нахуй все инъекции
foreach($_GET as $name => $value){
$_GET[$name] = mysql_real_escape_string($value);
}
foreach($_POST as $name => $value){
$_POST[$name] = mysql_real_escape_string($value);
}
// А потом - следующее (обратите внимание на отсутствие кавычек для GET параметров)
$result = mysql_query("SELECT * FROM ".$_GET['index_country']." WHERE id = ".$_GET['index_to_edit']);
Хочется передать автору этого креатива большое спасибо за то, что доставил мне массу лулзов при нахождении этого и других багов :-) Если народ и дальше будет думать, что этого достаточно чтобы избавиться от инъекций, я без денег точно не останусь )))))))))))
+163
$birthDay = $elements['birthDay']->getValue();
$d = $birthDay[0].$birthDay[1];
$m = $birthDay[3].$birthDay[4];
$y = $birthDay[6].$birthDay[7].$birthDay[8].$birthDay[9];
$birthDay = mktime(0, 0, 0, (int)$m, (int)$d, (int)$y);
Вот так вот в ПХП 5.2 конвертим дату из dd.mm.yyyy в timestamp
−132.6
If objRow.IsQuestion_SpecialismNull Then
'--- ASK DEAN
Return True
End If
Dean - наш тим лид
+166.2
<?
$fileSelect = array();
$sql = 'SELECT * FROM bd_file';
$stmt = db_prepare($sql, $file); $res = db_query($stmt);
while($row = db_fetch_row(res))
{
if (!is_file(filefolder.'/'.$row[название_файла]))) {
$fileSelect[$file] = $file;
}
}
unset($fileSelect);
?>
В добавок к #2929.
Этим образом идет проверка существование документов в панели администратора
+92.4
void Read_Ri( int hARINC,unsigned short int *Data ,int *i16,int *i15,int *i14,
int *i13,int *i12,int *i11,int *i10,int *i9,int *i8,int *i7,int *i6,int *i5,int *i4,int *i3,int *i2,int *i1)
{
ioctl(hARINC,IOCTL_GET_RI,Data);
*i16=Data[0x1104]>>15&1; *i15=Data[0x1104]>>14&1; *i14=Data[0x1104]>>13&1;
*i13=Data[0x1104]>>12&1; *i12=Data[0x1104]>>11&1; *i11=Data[0x1104]>>10&1;
*i10=Data[0x1104]>>9&1; *i9=Data[0x1104]>>8&1; *i8=Data[0x1104]>>7&1;
*i7=Data[0x1104]>>6&1; *i6=Data[0x1104]>>5&1; *i5=Data[0x1104]>>4&1;
*i4=Data[0x1104]>>3&1; *i3=Data[0x1104]>>2&1; *i2=Data[0x1104]>>1&1; *i1=Data[0x1104]&1;
}
Фирма "Элкус" порадовала. Хорошо, что у их платы не 32-разрядные регистры :)
+162.8
<?php
function db_connect($host, $user, $pass, $db) {
global $glink;
$glink = mysql_connect($host, $user, $pass) or db_give_error(3, '', db_error($glink));
mysql_select_db($db, $glink) or db_give_error(4, '', db_error($glink));
mysql_query("SET CHARSET cp1251",$glink);
return $glink;
}
function db_query($sql, $log = 0) {
global $glink;
$res = mysql_query($sql, $glink) or db_give_error(5, $sql, db_error($glink));
return $res;
}
function db_fetch_row($res) {
$row = empty($res) ? false : mysql_fetch_row($res);
return $row;
}
function db_num_rows($res, $stmt = '') {
$rows = mysql_num_rows($res);
if (null === $rows) db_give_error(6, '', db_error($glink));
return $rows;
}
function db_num_fields($res, $stmt = '') {
$fields = empty($res) ? false : mysql_num_fields($res);
if (null === $fields) db_give_error(7, '', db_error($glink));
return $fields;
}
function db_field_name($res, $fld) {
$name = (empty($res) or !isset($fld)) ? false : mysql_field_name($res, $fld);
if (false === $name) db_give_error(8, '', db_error($glink));
return $name;
}
function db_affected_rows($res) {
global $glink;
$rows = mysql_affected_rows($glink);
if (null === $rows) db_give_error(9, '', db_error($glink));
return $rows;
}
function db_insert_id($id = 0) {
$id = mysql_insert_id();
return ($id) ? $id : 1;
}
function db_next_id($table, $field, $seqname = 'seq') {
return 0;
}
function db_errno($res) {
return mysql_errno($res);
}
function db_error($res) {
return mysql_error();
}
function db_free_result($res) {
$res = mysql_free_result($res);
return $res;
}
?>
Все из того же проекта (http://govnokod.ru/2929). авторам видимо надоело писать mysql_ и они решили сделать свой аналог db_. При чем смысла от этого полный NULL. Говнокод, он и в Африке говнокод
+165
$fileSelect = array();
if (is_dir($filefolder)) {
if ($dh = @opendir($filefolder)) {
while (($file = readdir($dh)) !== false) {
if (filetype($filefolder . $file) == "file" and $file != "0.txt") {
$sql = 'SELECT * FROM bd_file WHERE file_file = ?';
$stmt = db_prepare($sql, $file); $res = db_query($stmt);
if (!db_num_rows($res)) {
$fileSelect[$file] = $file;
}
}
}
}
closedir($dh);
}
...
unset($fileSelect);
Сервер медленно умирал, так как данная конструкция вызывалась при каждом удобном случае, будь то добавление нового файла или скачивание. Самое поразительное, что с полученным массивом нечего не делали, а тупо уничтожили
P.S. минимальная стоимость сайта у этой фирмы 3.000.000 рублей