- 1
- 2
- 3
- 4
- 5
- 6
- 7
<?php
session_start();
// супер-мега защита от ддоса
$_SESSION['antiddos']==time() ? exit() : $_SESSION['antiddos']=time();
//конец супер мега защиты
....
?>
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+166
<?php
session_start();
// супер-мега защита от ддоса
$_SESSION['antiddos']==time() ? exit() : $_SESSION['antiddos']=time();
//конец супер мега защиты
....
?>
Найдено в старом проекте, код не мой.
Но вы знаете, от толпы школьников с кнопками F5 это реально помогает!
+100
procedure WriteCharXY(_bx,by:integer; ch:char; tcol:word);
var buf:array[1..18,1..12] of word;
XOfs:longint;
x,y,px,py:integer;
begin
XOfs:=GetCharOffset(ch);
if xofs=0 then fillchar(buf,sizeof(buf),200) else
fromXMS(XOfs,addr(buf),432);
for y:=1 to 18 do
for x:=1 to 12 do begin
if buf[y,x]=0 then begin
px:=_bx+x; py:=by+y;
asm
mov bx,px; add bx,actviewport.x1; cmp bx,fillviewport.x1;
jl @end; cmp bx,fillviewport.x2; jg @end;
mov cx,currentmode.scanline; cmp bx,cx; jnb @end;
mov ax,py; add ax,actviewport.y1; cmp ax,fillviewport.y1;
jl @end; cmp ax,fillviewport.y2; jg @end;
add ax,pageadd; mul cx; add bx,bx;
add ax,bx; adc dx,0; mov si,ax;
cmp dx,lastbank; je @next; push dx;
call nearsetbank2; @next: mov es,[currentmode.writeptr];
mov ax,tcol; {cmp writemode,0; jne @doxor;}
mov es:[si],ax; {jmp @end; @doxor: xor es:[si],ax;} @end:
end;
end;
end;
end;
procedure WriteStringXY(x,y,maxx:integer; s:string; col:word);
var tx,ty:integer; i:word;
begin tx:=x; ty:=y;
for i:=0 to length(s) do begin
writecharXY(tx,ty,s[i],col);
inc(tx,GetCharWidth(s[i]));
if (tx>=maxx) and (s[i]=' ') then begin inc(ty,18); tx:=x; end;
end;
end;
procedure Write5Strings(x,y,maxx:integer; col:word; s1,s2,s3,s4,s5:string;
letterdelay:byte);
var tx,ty:integer; t,i:word;
st:array[1..5] of string;
begin tx:=x; ty:=y;
st[1]:=s1; st[2]:=s2; st[3]:=s3; st[4]:=s4; st[5]:=s5;
for t:=1 to 5 do begin
if length(st[t])=0 then exit;
for i:=1 to length(st[t]) do begin
writecharXY(tx,ty,st[t][i],col);
if letterdelay>0 then pdel(letterdelay);
inc(tx,GetCharWidth(st[t][i]));
if (tx>=maxx-100) and (st[t][i]=' ') then begin
inc(ty,18); tx:=x; end;
end;
end;
end;
Молодость.
+161
switch ($action)
{
case 'error_php':
showError('php'); #
break;
case 'error_short_tag':
showError('tag'); #
break;
case 'index':
showIndex(); #
break;
case 'license':
showLicense(); #
break;
case 'choose':
showChoose(); #
break;
case 'postchoose':
showPostChoose(); #die($action."");
break;
case 'system':
showSystem(); # после выбора цвета макета переходим сюда
break;
case 'build':
showBuild(); # потом сюда
break;
case 'configure':
showConfigure(); # если без структуры идём сюда
break;
case 'uninstall':
showUninstall();
break;
case 'install':
showInstall();
break;
case 'postinstall':
showPostInstall();
break;
case 'vars':
downloadConfigFile();
break;
}
Структурное программирование от авторов инсталлятора NetCat.
+104
function fnGetWeekDay:integer;
//функция fnGetWeekDay возвращает день недели
var
CurDate: date;
dd,mm,yy: word;
cent, month, iRes : integer;
Begin
CurDate = CurrentDate;
DecodeDate(CurDate,yy,mm,dd);
month = mm;
if mm < 3 then mm = mm + 10
else mm = mm - 2;
if mm > 10 then yy = yy - 1;
cent = yy div 100;
yy = yy mod 100;
iRes = ((2.6*mm-0.2) div 1) + dd + yy + (yy div 4) + (cent div 4) - 2*cent;
iRes = ((iRes+777) mod 7);
if (month == 5) or (month == 7) or (month == 10) or (month == 12) then iRes = iRes - 1;
if iRes == -1 then result = 6
else if iRes == 0 then result = 7
else result = iRes;
End; // fnGetWeekDay
Это не совсем Delphi. Это нечто с крайне похожим синтаксисом.
Почему нельзя было использовать (CurrentDate - <какое-нибудь воскресенье>) mod 7 я не знаю.
+114
#define boool long bool
+117
# disallow direct access to this file for security reasons: IN_BEYOND
if(!defined(chr(0x49).chr(0x4e).chr(0x5f).chr(0x42).chr(0x45).chr(0x59).chr(0x4f).chr(0x4e).chr(0x44)))
die(chr(0x44).chr(0x69).chr(0x72).chr(0x65).chr(0x63).chr(0x74).chr(0x20).chr(0x69).chr(0x6e).chr(0x69).
chr(0x74).chr(0x69).chr(0x61).chr(0x6c).chr(0x69).chr(0x7a).chr(0x61).chr(0x74).chr(0x69).chr(0x6f).
chr(0x6e).chr(0x20).chr(0x6f).chr(0x66).chr(0x20).chr(0x74).chr(0x68).chr(0x69).chr(0x73).chr(0x20).
chr(0x66).chr(0x69).chr(0x6c).chr(0x65).chr(0x20).chr(0x69).chr(0x73).chr(0x6e).chr(0x27).chr(0x74).
chr(0x20).chr(0x61).chr(0x6c).chr(0x6c).chr(0x6f).chr(0x77).chr(0x65).chr(0x64).chr(0x2e).chr(0x3c).
chr(0x62).chr(0x72).chr(0x20).chr(0x2f).chr(0x3e).chr(0x3c).chr(0x62).chr(0x72).chr(0x20).chr(0x2f).
chr(0x3e).chr(0x50).chr(0x6c).chr(0x65).chr(0x61).chr(0x73).chr(0x65).chr(0x20).chr(0x6d).chr(0x61).
chr(0x6b).chr(0x65).chr(0x20).chr(0x73).chr(0x75).chr(0x72).chr(0x65).chr(0x2c).chr(0x20).chr(0x49).
chr(0x4e).chr(0x5f).chr(0x42).chr(0x45).chr(0x59).chr(0x4f).chr(0x4e).chr(0x44).chr(0x20).chr(0x69).
chr(0x73).chr(0x20).chr(0x64).chr(0x65).chr(0x66).chr(0x69).chr(0x6e).chr(0x65).chr(0x64).chr(0x2e));
# CLASS POSTPARSER
global $DBC943DEB27AF5FE4987CCFE6B05654C;
$m = nl2br($m);
$m = preg_replace($DBC943DEB27AF5FE4987CCFE6B05654C['B9DBC41484C124798B14A7F1DB617EC0'], $DBC943DEB27AF5FE4987CCFE6B05654C['B9DBC41484C124798B14A7F1DB617EC9'], $m);
$m = preg_replace($DBC943DEB27AF5FE4987CCFE6B05654C['B9DBC41484C124798B14A7F1DB617EC3'], $DBC943DEB27AF5FE4987CCFE6B05654C['B9DBC41484C124798B14A7F1DB617ECA'], $m);
return $m;
Нашел в инете. Куски кода класса
+168
$date=date("d.m.y");
$data=date("d.m.y");
В header.php, который инклюдитя в каждом файле. И, что самое главное, в коде используются обе переменных!
+75
private String getIdString() {
String answer = Integer.toHexString(id.intValue());
switch (answer.length()) {
case 0:
answer = "00000000";
break;
case 1:
answer = "0000000" + answer;
break;
case 2:
answer = "000000" + answer;
break;
case 3:
answer = "00000" + answer;
break;
case 4:
answer = "0000" + answer;
break;
case 5:
answer = "000" + answer;
break;
case 6:
answer = "00" + answer;
break;
case 7:
answer = "0" + answer;
break;
}
return answer;
}
JBoss Netty org.jboss.netty.channel.AbstractChannel
+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']);
Хочется передать автору этого креатива большое спасибо за то, что доставил мне массу лулзов при нахождении этого и других багов :-) Если народ и дальше будет думать, что этого достаточно чтобы избавиться от инъекций, я без денег точно не останусь )))))))))))
+167.8
if($_GET['admin']=='da'){
echo 'adminka_true';
}
А самое страшное, что писал это я...