Помогите Пожалуйста

VladBallu

New member
07.04.2013
2
0
#1
Ребята, нужна помощь!
Диплом сдавать через 3 недели, а я все никак не могу найти программу, а именно "Сканер уязвимостей", который написан на Delphi
Встречал ли кто-нибудь подобный сканер, или есть ли он у кого-либо?

Если ни у кого нет, то можете помочь в преобразовании скрипта AVZ на Delphi. Заранее скажу, что скрипты AVZ, да и в целом весь AVZ написан не на Делфи, они просто похожи по синтаксису. Файл со скриптом прилагается.
Посмотреть вложение Скрипт_AVZ.txt
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">"Скрипт сканера уязвимостей от AVZ. Осторожно, большой текст"</div></div><div class="sp-body"><div class="sp-content">{ Скрипт AVZ для обнаружения наиболее часто используемых уязвимостей. Версия 2.18
Автор: Андрей Кондауров, участник форума defendium.info (AndreyKa)
Скрипт может свободно распространяться, при условии сохранения данного комментария
Постоянный адрес скрипта: http://dataforce.ru/~kad/ScanVuln.txt
}
var
ICounter : Integer;
A00,A01,A02,A03,A04,A05,A06,A07,A08,A09,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,
A20,A21,A22,A23,A24,A25,
A26,A27,A28,A29,A30,A31,A32,A33,A34,A35,A36,A37,A38,A39,A40,A41,A42,A43,A44,A45,
A46,A47,DecimalSym : string;
noSP, bRU : boolean;

function IsFileBuldLow(VulnFileName: string; IMinVer: integer) : boolean;
var
ARes : string;
IPos, IBuild : Integer;
begin
ARes := GetFileVersion(VulnFileName, 6);
IPos := Pos('.', ARes);
while IPos > 0 do
begin
Delete(ARes, 1, IPos);
IPos := Pos('.', ARes);
end;
Result := False;
if ValidInt(ARes) then
begin
IBuild := StrToInt(ARes);
if IBuild < IMinVer then
Result := True
end;
end;

function IsFileSubVerLow(VulnFileName:string; IMinSubVer:Extended):boolean;
var
ARes: string;
IPos: Integer;
begin
ARes := GetFileVersion(VulnFileName, 6);
IPos := Pos('.', ARes);
Delete(ARes, 1, IPos);
IPos := Pos('.', ARes);
Delete(ARes, 1, IPos);
Result := False;
if ValidFloat(ARes) then
if StrToFloat(ARes) < IMinSubVer then
Result := True;
end;

Procedure WinVuln;
var
AOSVer, ASP, AResult, ID, AFName, URL : string;
IMinVer, IOSVer, IEVer : integer;
IMinSubVer: Extended;
FS : TFileSearch;
begin
if not IsNT then exit;
// Определить версию ОС
AOSVer := RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\Windows NT\CurrentVersion','CurrentVersion');
if AOSVer < '5.0' then exit;
IOSVer := 0;
ASP := RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\Windows NT\CurrentVersion','CSDVersion');
if AOSVer = '5.0' then
if ASP <> 'Service Pack 4' then
AddToLog(A01)
else
begin
IOSVer:=4;
AddToLog(A02);
AddToLog('http://support.microsoft.com/lifecycle/?p1=3071'+#13#10);
noSP:=true;
ICounter:=ICounter+1;
end;
if AOSVer = '5.1' then
if ASP < 'Service Pack 3' then
begin
AddToLog(A03+#13#10);
noSP:=true;
ICounter:=ICounter+1;
end
else
if ASP = 'Service Pack 3' then IOSVer := 13;
if AOSVer = '5.2' then
if ASP < 'Service Pack 2' then
begin
AddToLog(A04);
noSP:=true;
ICounter:=ICounter+1;
end
else
if ASP = 'Service Pack 2' then IOSVer := 22;
if AOSVer = '6.0' then
begin
ASP := RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\Windows NT\CurrentVersion','CurrentBuild');
if ASP < '6002' then
begin
if ASP = '6000' then
AddToLog(A05);
if IsWOW64 then
begin
if ASP = '6000' then
AddToLog(A00+'86d267bd-dfcd-47cf-aa76-dc0626dcdf10')
else
AddToLog(A32);
AddToLog(A00+'8ad69826-03d4-488c-8f26-074800c55bc3');
end
else
begin
if ASP = '6000' then
AddToLog(A00+'F559842A-9C9B-4579-B64A-09146A0BA746')
else
AddToLog(A32);
AddToLog(A00+'891ab806-2431-4d00-afa3-99ff6f22448d');
end;
AddToLog('');
noSP:=true;
ICounter:=ICounter+1;
end;
if ASP = '6001' then IOSVer := 31;
if ASP = '6002' then IOSVer := 32;
end;
if AOSVer = '6.1' then
begin
IOSVer := 40;
if IsWOW64 then
begin
SetupAVZ('X64R=NN');
ASP := RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\Windows NT\CurrentVersion','CSDVersion');
SetupAVZ('X64R=YY');
end;
if ASP = 'Service Pack 1' then IOSVer := 41;
end;

if IOSVer = 0 then
exit; // не удалось определить версию SP ОС или ОС не поддреживается
if IsWOW64 then IOSVer := IOSVer + 100;

FS := TFileSearch.Create(nil);

// MS08-067 ссылки на MS12-054
IMinVer := 0;
case IOSVer of
4 : begin IMinVer := 7203; ID:='E22EB3AE-1295-4FE2-9775-6F43C5C2AED3'; end; // MS08-067
13 : begin IMinVer := 5694; ID:='5403c78c-6b87-4788-89c3-0140b887ec6f'; end;
22 : begin IMinVer := 4392; ID:='2847952f-0234-4cf6-820a-1f0a285b2fb7'; end;
122: begin IMinVer := 4392; ID:='3833d768-1dab-4a85-822f-87c7fa3db261'; end;
end;
if IMinVer <> 0 then
if IsFileBuldLow('%System32%\Netapi32.dll', IMinVer) then
begin
AddToLog(A07);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

// MS11-020, для Windows 7 ссылки на MS11-048
IMinVer := 0;
ID := '';
case IOSVer of
4 : begin IMinVer:=7365; ID:='267ce982-54a0-418f-ad52-e4963610f714'; end; // MS10-012
13 : begin IMinVer:=6082; ID:='CCB08A8A-F4D9-4320-8FFB-3FD4FE217987'; end;
22 : begin IMinVer:=4832; ID:='64C550D4-C927-4382-91E1-473ED6790819'; end;
122: begin IMinVer:=4832; ID:='EF62DB94-4F72-4245-AC9F-6391035E2516'; end;
32 : ID:='D6EDDFF4-A242-4DEC-9D84-72891DB2B754';
132: ID:='2878C587-6544-40B4-9288-FC3B3CE1128D';
40 : ID:='CF9E5ECD-68F7-4982-B4ED-BE80859B757C';
41 : ID:='CF9E5ECD-68F7-4982-B4ED-BE80859B757C';
140: ID:='2707650A-604C-4044-ACC4-07A30B5640D8';
141: ID:='2707650A-604C-4044-ACC4-07A30B5640D8';
end;
AResult:='%System32%\drivers\Srv.sys';
if not FileExists(AResult) then AResult:='\\127.0.0.1\'+StringReplace(NormalFileName('%System32%\drivers\Srv.sys'),':','$');
if FileExists(AResult) and (ID<>'') then
if FS.FindFirst(AResult) then
if ((IMinVer=0) and (FS.FileLastWriteTime<StrToDateTime('17.02.2011'))) or ((IMinVer>0) and IsFileBuldLow(AResult, IMinVer)) then
begin
AddToLog(A08);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

// MS10-013
IMinVer := 0;
case IOSVer of
4:begin
AResult := RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\DirectX','Version');
AResult := Copy(AResult, 3, 2);
if ValidInt(AResult) then
case StrToInt(AResult) of
7: begin IMinVer := 738; ID := '16787c93-2c95-4c13-8492-be1db9d18146'; end;
9: begin IMinVer := 913; ID := '59a8bc19-02bb-4800-bac1-464f59e1cb7b'; end;
end;
end;
13 : begin IMinVer := 5908; ID := '7ab53be3-3f42-4e61-a2bc-3ed41d8736ff'; end;
22 : begin IMinVer := 4625; ID := '983c5484-6321-4765-97ec-8d42d42d1f70'; end;
122: begin IMinVer := 4625; ID := '7dc20252-6091-407b-befc-c25e8f5d3fb0'; end;
end;
if IMinVer <> 0 then
if IsFileBuldLow('%System32%\Quartz.dll', IMinVer) then
begin
AddToLog(A09);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

// MS13-009 (ссылки MS13-021)
AResult := RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\Internet Explorer','Version');
AResult := Copy(AResult, 1, 1);
ID := '';
if ValidInt(AResult) then
begin
IEVer:=StrToInt(AResult);
case IEVer of
7: case IOSVer of
13: ID := '50c59794-4ec7-404a-b316-dae314521ebb';
22: ID := '0f58d63e-0d2c-41d2-9792-edbb2f4a539d';
122:ID := '5a18b139-2773-44c8-85f9-8dce24249e71';
end;
8: case IOSVer of
13: ID := '7e5d96a7-d9f5-4832-b4f9-b6e0148c655b';
22: ID := 'e6b63da9-a414-40ee-b877-4fb0d62bacba';
122:ID := 'd6feba92-f014-4521-b6c4-7f5f358a3ce3';
end;
9: case IOSVer of
32: ID := 'c26f74fc-e224-4533-a4e3-b52125dca5cd';
132:ID := '3f1795a5-4376-4929-8748-743840ec2154';
40: ID := '54c619b7-e156-4f07-a90e-56ed9a618085';
41: ID := '54c619b7-e156-4f07-a90e-56ed9a618085';
140:ID := '86f2a369-d71d-4a36-95ed-d5be89cbbbae';
141:ID := '86f2a369-d71d-4a36-95ed-d5be89cbbbae';
end;
end;
if ((IEVer=6) or
((IEVer=7) or (IEVer=8)) and ((IOSVer=32) or (IOSVer=132) or (IOSVer=40) or (IOSVer=41) or (IOSVer=140) or (IOSVer=141))) then
begin
AddToLog(A46+#13#10);
ICounter:=ICounter+1;
end;
if FS.FindFirst('%System32%\Mshtml.dll') then
if ID <> '' then
if FS.FileLastWriteTime<StrToDateTime('19.12.2012') then
begin
AddToLog(A10);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;
end;

//http://www.microsoft.com/technet/security/advisory/2458511.mspx
AResult:=NormalFileName('%USERPROFILE%\KB2458511.CSS');
if FileExists(AResult) then
begin
DeleteFile(AResult);
RegKeyParamDel('HKCU','Software\Microsoft\Internet Explorer\Styles','User Stylesheet');
RegKeyIntParamWrite('HKCU','Software\Microsoft\Internet Explorer\Styles','Use My Stylesheet',0);
AResult:=NormalFileName('%USERPROFILE%\CSS-backup.reg');
if FileExists(AResult) then
begin
ExecuteFile('Regedit.exe','/c "'+AResult+'"',0,5000,true);
DeleteFile(AResult);
end;
end;

// MS10-034 (ссылки MS11-090)
if (IOSVer=122) or (IOSVer<14) then
if NoKillBit('{E0ECA9C3-D669-4EF4-8231-00724ED9288F}') then
begin
AddToLog(A11);
case IOSVer of
4: ID := 'd3955983-0079-476e-a488-99713097259c'; // MS10-034
13: ID := '21b4b999-2dbf-4921-80bd-cc7ab2cd1190';
22: ID := 'dfb948c5-8aee-4bcd-babf-3564b78712dd';
122: ID := '2d37a8cb-2316-4db4-980c-11b6dcbdc696';
end;
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

// MS10-042
IMinVer := 0;
case IOSVer of
13 : begin IMinVer := 5997; ID := '7C2122BB-0ECF-4467-A3BA-6FB862F603C5'; end;
22 : begin IMinVer := 4726; ID := 'CD4363B2-D7A7-4FFF-8BCD-6FD02BD1AC07'; end;
122: begin IMinVer := 4726; ID := 'A6BAFD3B-C921-466D-BEE0-59A3FE126712'; end;
end;
if IMinVer <> 0 then
begin
if IsFileBuldLow('%SystemRoot%\PCHEALTH\HELPCTR\Binaries\Helpsvc.exe', IMinVer) then
begin
AddToLog(A12);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end
else if not RegKeyExists('HKCR','HCP\shell') then
RegKeyParamWrite('HKCR','HCP\shell\open\command','','REG_EXPAND_SZ',
'%SystemRoot%\PCHEALTH\HELPCTR\Binaries\HelpCtr.exe -FromHCP -url "%1"');
end;

// http://securitytracker.com/alerts/2007/Oct/1018843.html
SetKillBit('{FDC7A535-4070-4B92-A0EA-D9994BCC0DC5}');

// MS10-046
ID := '';
case IOSVer of
40 : ID := '22E62B5C-E4C1-47D0-AE4A-8BD2D70D0A0A';
140: ID := '9499F771-C388-4DE3-A5C7-8CC8B00B4395';
end;
if ID <> '' then
if FS.FindFirst('%System32%\Shell32.dll') then
if FS.FileLastWriteTime<StrToDateTime('26.07.2010') then
begin
AddToLog(A13);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

// MS11-006
ID := '';
case IOSVer of
13 : ID := 'BBEA7EAD-6C5C-4DA8-AA03-A40325FD2DE3';
22 : ID := '2AA94528-5063-427B-97F7-2A0A55CBB6BF';
122: ID := '6E740922-6CE4-46EC-A35E-E94201A9E398';
32 : ID := '0C18ECCA-AFB9-4738-BC7B-76A0E815DFB8';
132: ID := '62DC454F-4B1E-4AC0-8FFE-6C73112F8D4D';
end;
if ID <> '' then
if FS.FindFirst('%System32%\Shell32.dll') then
if FS.FileLastWriteTime<StrToDateTime('21.01.2011') then
begin
AddToLog(A31);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

// MS10-061
if IOSVer = 13 then
begin
if IsFileBuldLow('%System32%\Spoolsv.exe', 6024) then
begin
AddToLog(A30);
AddToLog(A00+'93FABA6B-0A85-4ACC-B527-A012BBF56B13'+#13#10);
ICounter:=ICounter+1;
end;
end;

// KB971029
IMinVer := 0;
ID := '';
case IOSVer of
13 : begin IMinVer:=5853; ID:='96ca61f6-8b16-4157-9635-8cfc0bbf4c35'; end;
22 : begin IMinVer:=4559; ID:='edf9c049-bf1e-4130-87e6-0e64fa73f684'; end;
122: begin IMinVer:=4559; ID:='b8df9256-cbb0-418d-a336-d29dc4415a65'; end;
32 : ID:='dd6a61a3-b3c6-4b0a-a848-7b32be9f31c5';
132: ID:='12e3fe0f-db79-4a27-aa7d-a456ee1c6ac4';
end;
AResult:='%System32%\Shsvcs.dll';
if not FileExists(AResult) then AResult:='\\127.0.0.1\'+StringReplace(NormalFileName('%System32%\Shsvcs.dll'),':','$');
if (ID<>'') and FileExists(AResult) then
if FS.FindFirst(AResult) then
if ((IMinVer=0) and (FS.FileLastWriteTime<StrToDateTime('10.07.2009'))) or ((IMinVer>0) and IsFileBuldLow(AResult, IMinVer)) then
begin
AddToLog(A33);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

// MS11-087 ссылки на MS12-034
IMinVer := 0;
ID := '';
case IOSVer of
13 : begin IMinVer:=6178; ID:='8d341077-8fcd-4666-a27e-2141a04a321e'; end;
22 : begin IMinVer:=4938; ID:='6287b994-041f-45b7-a230-d689bf1901a8'; end;
122: begin IMinVer:=4938; ID:='f9f49cd0-24db-4438-afde-aa7113ec2035'; end;
32 : ID:='292d1f3b-a065-4d7d-9046-f35ab7f0591b';
132: ID:='8f90c09c-a2cb-4adb-ace7-a8bc38d78ba6';
40 : ID:='572af8d4-effb-41a6-8448-7576b03f18fd';
41 : ID:='572af8d4-effb-41a6-8448-7576b03f18fd';
140: ID:='c09cbb73-7814-4946-8c0a-323d304dd633';
141: ID:='c09cbb73-7814-4946-8c0a-323d304dd633';
end;
AResult:='%System32%\Win32k.sys';
if not FileExists(AResult) then AResult:='\\127.0.0.1\'+StringReplace(NormalFileName('%System32%\Win32k.sys'),':','$');
if (ID<>'') and FileExists(AResult) then
if FS.FindFirst(AResult) then
if ((IMinVer=0) and (FS.FileLastWriteTime<StrToDateTime('23.11.2011'))) or ((IMinVer>0) and IsFileBuldLow(AResult, IMinVer)) then
begin
AddToLog(A35);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

// MS10-092
ID := '';
case IOSVer of
32 : ID:='48F10251-34D8-4149-B4B2-BF3EC28F5846';
132: ID:='099CCC5F-B92F-4D06-BCB5-92E35C49F613';
40 : ID:='CF85CDB6-58C7-4144-82F6-F01A6A4F9C3A';
41 : ID:='CF85CDB6-58C7-4144-82F6-F01A6A4F9C3A';
140: ID:='0597018D-39F5-4CA9-B437-63D9E68F264D';
141: ID:='0597018D-39F5-4CA9-B437-63D9E68F264D';
end;
if ID<>'' then
begin
AResult:='%System32%\Taskeng.exe';
if not FileExists(AResult) then AResult:='\\127.0.0.1\'+StringReplace(NormalFileName('%System32%\Taskeng.exe'),':','$');
if FileExists(AResult) then
if FS.FindFirst(AResult) then
if FS.FileLastWriteTime<StrToDateTime('02.11.2010') then
begin
AddToLog(A36);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;
end;

// MS11-011
IMinVer := 0;
ID := '';
case IOSVer of
13 : begin IMinVer:=6055; ID:='A511D33A-9AE0-46EE-A225-9D97390DE7D1'; end;
22 : begin IMinVer:=4789; ID:='6BF2EEEC-8225-477F-A606-263D3EE434D6'; end;
122: begin IMinVer:=4789; ID:='EC544894-EE98-4A2B-AC4D-33B0C3754213'; end;
32 : ID:='66978514-BB7F-42CC-9360-2FD1C686F4E6';
132: ID:='8FDB8C37-1B22-457B-BDC0-21F6A5061DD3';
40 : ID:='E1224C90-B0BC-4E4B-999A-EFAE327213B4';
140: ID:='DDCF352E-742C-485E-9ED5-19CDBA673562';
end;
AResult:='%System32%\Ntdll.dll';
if not FileExists(AResult) then AResult:='\\127.0.0.1\'+StringReplace(NormalFileName('%System32%\Ntdll.dll'),':','$');
if (ID<>'') and FileExists(AResult) then
if FS.FindFirst(AResult) then
if ((IMinVer=0) and (FS.FileLastWriteTime<StrToDateTime('15.10.2010'))) or ((IMinVer>0) and IsFileBuldLow(AResult, IMinVer)) then
begin
AddToLog(A37);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

// MS12-004
IMinVer := 0;
ID := '';
case IOSVer of
13 : begin IMinVer:=6160; ID:='a142f7ba-4268-4453-a8eb-470213c028ac'; end;
22 : begin IMinVer:=4916; ID:='3c266dfb-630d-4f32-b2ca-63955279b6a9'; end;
122: begin IMinVer:=4916; ID:='8dd1c882-4ed1-4e47-a017-7d162bd94194'; end;
32 : ID:='99d9b9fc-ed37-4a32-a20d-6604a1b9c4ca';
132: ID:='44aa8d91-2b30-4191-8965-8aee2b860d50';
end;
AResult:='%System32%\Winmm.dll';
if not FileExists(AResult) then AResult:='\\127.0.0.1\'+StringReplace(NormalFileName('%System32%\Winmm.dll'),':','$');
if (ID<>'') and FileExists(AResult) then
if FS.FindFirst(AResult) then
if ((IMinVer=0) and (FS.FileLastWriteTime<StrToDateTime('14.10.2011'))) or ((IMinVer>0) and IsFileBuldLow(AResult, IMinVer)) then
begin
AddToLog(A38);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

// KB2718704
URL := '';
IMinVer := 0;
case IOSVer of
13 : IMinVer := 6237;
22 : IMinVer := 5012;
122 : IMinVer := 5012;
end;
if bRU then
case IOSVer of
13 : URL := 'http://www.microsoft.com/ru-ru/download/details.aspx?id=29975 (требуется лицензионный Windows) или'+#13#10+
'http://download.microsoft.com/download/1/1/A/11A221A6-953C-40E1-87CD-2A4CD98224C4/WindowsXP-KB2718704-x86-RUS.exe';
22 : URL := 'http://www.microsoft.com/ru-ru/download/details.aspx?id=29971 (требуется лицензионный Windows) или'+#13#10+
'http://download.microsoft.com/download/1/7/3/1733DB6F-F10B-4C25-94EF-FAD7BAAD81ED/WindowsServer2003-KB2718704-x86-RUS.exe';
122 : URL := 'http://www.microsoft.com/ru-ru/download/details.aspx?id=29976 (требуется лицензионный Windows) или'+#13#10+
'http://download.microsoft.com/download/B/D/6/BD6FA68A-2A23-476B-8CFC-F1D03118D96F/WindowsServer2003.WindowsXP-KB2718704-x64-RUS.exe';
end
else
case IOSVer of
13 : URL := 'http://www.microsoft.com/en-us/download/details.aspx?id=29975';
22 : URL := 'http://www.microsoft.com/en-us/download/details.aspx?id=29971';
122 : URL := 'http://www.microsoft.com/en-us/download/details.aspx?id=29976';
end;
if URL <>'' then
begin
AResult:='%System32%\Crypt32.dll';
if FileExists(AResult) then
if (IMinVer>0) and IsFileBuldLow(AResult, IMinVer) then
begin
AddToLog(A42);
AddToLog(URL+#13#10);
ICounter:=ICounter+1;
end;
end;
AFName := '';
case IOSVer of
32 : begin AFName :='X86_13f66e81425ab9718ea16821324e3faa_31bf3856ad364e35_6.0.6002.18642_none_4b
3c196b981fe80c.manifest';
URL :='http://download.microsoft.com/download/D/7/A/D7A4C58C-A0E8-4CD7-A405-36C787637474/Windows6.0-KB2718704-x86.msu'; end;
132: begin AFName :='X86_microsoft-windows-capi2-certs_31bf3856ad364e35_6.0.6002.18642_none_c44bff19916a7786.manifest';
URL :='http://download.microsoft.com/download/7/3/1/731F9EE8-438E-4411-A994-2D0A1443501F/Windows6.0-KB2718704-x64.msu'; end;
40 : begin AFName :='x86_microsoft-windows-capi2-certs_31bf3856ad364e35_6.1.7601.22008_none_c52e70d60b79c688.manifest';
URL :='http://download.microsoft.com/download/4/1/3/413A9B3D-DC56-4DD8-8944-9B0DB0CC8025/Windows6.1-KB2718704-x86.msu'; end;
41 : begin AFName :='x86_microsoft-windows-capi2-certs_31bf3856ad364e35_6.1.7601.22008_none_c52e70d60b79c688.manifest';
URL :='http://download.microsoft.com/download/4/1/3/413A9B3D-DC56-4DD8-8944-9B0DB0CC8025/Windows6.1-KB2718704-x86.msu'; end;
140: begin AFName :='amd64_4677e27d20f74740fec514c660d10fa4_31bf3856ad364e35_6.1.7601.22008_none_
d851475c9cba0cdf.manifest';
URL :='http://download.microsoft.com/download/1/7/8/1787B87D-5DA3-44EF-A393-F15BF8EA3FBF/Windows6.1-KB2718704-x64.msu'; end;
141: begin AFName :='amd64_4677e27d20f74740fec514c660d10fa4_31bf3856ad364e35_6.1.7601.22008_none_
d851475c9cba0cdf.manifest';
URL :='http://download.microsoft.com/download/1/7/8/1787B87D-5DA3-44EF-A393-F15BF8EA3FBF/Windows6.1-KB2718704-x64.msu'; end;
end;
if AFName<>'' then
begin
if IsWow64 then
SetupAVZ('X64R=NN');
AResult := NormalFileName('%windir%\winsxs\Manifests\'+AFName);
if not FileExists(AResult) then
begin
AddToLog(A42);
AddToLog(URL+#13#10);
ICounter:=ICounter+1;
end;
if IsWow64 then
SetupAVZ('X64R=YY');
end;

// MS12-043 частично ссылки на MS13-002
ID := '';
case IOSVer of
13 : ID:='017f1ed7-eed4-4de3-aca1-93fb25058866';
22 : ID:='b7321c17-0e8e-4217-8da6-4c270dbfc802';
122: ID:='29985fdc-8aba-44b2-9420-970ca475052e';
32 : ID:='f8ccdb90-66bd-471a-9c78-825d1140b5ac';
132: ID:='873eba5d-5a8f-410e-bad8-e9d538acf1b3';
40 : ID:='d8a4817c-481c-4ed2-980a-21623f0ca6d2';
41 : ID:='d8a4817c-481c-4ed2-980a-21623f0ca6d2';
140: ID:='4b442601-2808-4192-aa7d-b6476668cd23';
141: ID:='4b442601-2808-4192-aa7d-b6476668cd23';
end;
AResult:='%System32%\Msxml3.dll';
if (ID<>'') and FileExists(AResult) then
if FS.FindFirst(AResult) then
if (FS.FileLastWriteTime<StrToDateTime('04.06.2012')) then
begin
AddToLog(A43);
AddToLog(A00+ID+#13#10);
ICounter:=ICounter+1;
end;

ID := '';
case IOSVer of
13 : ID:='1e2738b9-d3c2-4dfe-8a79-335d5feee55b';
22 : ID:='1e2738b9-d3c2-4dfe-8a79-335d5feee55b';
122: ID:='7dabf372-4b31-4c9e-a660-4e0f4a65db04';
32 : ID:='1e2738b9-d3c2-4dfe-8a79-335d5feee55b';
132: ID:='7dabf372-4b31-4c9e-a660-4e0f4a65db04';
40 : ID:='1e2738b9-d3c2-4dfe-8a79-335d5feee55b';
41 : ID:='1e2738b9-d3c2-4dfe-8a79-335d5feee55b';
140: ID:='7dabf372-4b31-4c9e-a660-4e0f4a65db04';
141: ID:='7dabf372-4b31-4c9e-a660-4e0f4a65db04';
end;
AResult:='%System32%\Msxml4.dll';
if (ID<>'') and FileExists(AResult) then
if FS.FindFirst(AResult) then
if (FS.FileLastWriteTime<StrToDateTime('24.06.2012')) then
begin
AddToLog(A43);
AddToLog('http://www.microsoft.com/downloads/details.aspx?FamilyID='+ID);
if (IOSVer > 30) and (IOSVer <> 122) then AddToLog(A45);
AddToLog('');
ICounter:=ICounter+1;
end;

ID := '';
case IOSVer of
22 : ID:='3b56ba48-b74c-4681-8e17-715dc5d45e2c';
122: ID:='0b13a83c-1e51-4604-a09d-afb2e25646f9';
end;
AResult:='%System32%\Msxml6.dll';
if (ID<>'') and FileExists(AResult) then
if FS.FindFirst(AResult) then
if (FS.FileLastWriteTime<StrToDateTime('24.06.2012')) then
begin
AddToLog(A43);
AddToLog('http://www.microsoft.com/downloads/details.aspx?FamilyID='+ID+#13#10);
ICounter:=ICounter+1;
end;

FS.Free;
end;

Function NoKillBit(CLSID: string) : boolean;
begin
Result:=RegKeyExists('HKCR','CLSID\'+CLSID) and
not RegKeyExists('HKLM','SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\'+CLSID);
end;

Procedure SetKillBit(CLSID: string);
begin
if NoKillBit(CLSID) then
RegKeyIntParamWrite('HKLM','SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\'+CLSID,'Compatibility Flags', 1024);
end;

Procedure MSOffice;
var
AFName, AResult : string;
begin
// MS12-060
AFName := NormalFileName('%System32%\MSCOMCTL.OCX');
if FileExists(AFName) and IsFileBuldLow(AFName,9834) then
if RegKeyExists('HKLM','SOFTWARE\Microsoft\Office\14.0\Common\InstalledPackages') then
begin
AddToLog(A40+#13#10+A00+'4e08bab7-1408-444d-bad7-a4db76c7f6d3');
AResult := RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\Office\14.0\Common\ProductVersion','LastProduct');
if AResult < '14.0.6029.1000' then
AddToLog(A44);
AddToLog('');
ICounter:=ICounter+1;
end
else
if RegKeyParamExists('HKLM','SOFTWARE\Microsoft\Office\11.0\Common\InstallRoot','Path') then
begin
AddToLog(A40+#13#10+A00+'fd9626f7-4265-48ae-94b2-68243605db6b');
AResult := RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\Office\11.0\Common\ProductVersion','LastProduct');
if AResult < '11.0.8173.0' then
AddToLog(A41+'3'+#13#10+A00+'e25b7049-3e13-433b-b9d2-5e3c1132f206');
AddToLog('');
ICounter:=ICounter+1;
end
else
if RegKeyParamExists('HKLM','SOFTWARE\Microsoft\Office\12.0\Common\InstallRoot','Path') then
begin
AddToLog(A40+#13#10+A00+'b1c185e9-5328-4bf7-b175-fd9d7fc64097');
AResult := RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\Office\12.0\Common\ProductVersion','LastProduct');
if AResult < '12.0.6425.1000' then
AddToLog(A41+'7'+#13#10+A00+'0E40BBE7-1422-40EA-912D-2A29D709F93F');
AddToLog('');
ICounter:=ICounter+1;
end;
end;

Procedure AdobeFlashVuln;
var
AResult : string;
i : integer;
Plugin64Old, AX64old : boolean;
begin
// x64
Plugin64Old := false;
AX64old := false;
if IsWow64 then
begin
SetupAVZ('X64R=NN');
AResult := RegKeyStrParamRead('HKCR','CLSID\{D27CDB6E-AE6D-11cf-96B8-444553540000}\InprocServer32','');
if AResult <> '' then
begin
AResult := GetFileVersion(AResult, 6);
if IsFlashOld(AResult) then
AX64old := true;
end;
AResult := RegKeyStrParamRead('HKLM','SOFTWARE\MozillaPlugins\@adobe.com/FlashPlayer','Version');
if AResult <> '' then
if IsFlashOld(AResult) then
Plugin64Old := true;
SetupAVZ('X64R=YY');
end;

// x86
AResult := RegKeyStrParamRead('HKLM',
'SOFTWARE\Classes\CLSID\{D27CDB6E-AE6D-11cf-96B8-444553540000}\InprocServer32','');
AResult := GetFileVersion(AResult, 6);
if AX64Old or IsFlashOld(AResult) then
begin
AddToLog(A14);
AddToLog('http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_11_active_x.exe'+#13#10);
ICounter:=ICounter+1;
end;

AResult := RegKeyStrParamRead('HKLM',
'SOFTWARE\MozillaPlugins\@adobe.com/FlashPlayer','Version');
if Plugin64Old or IsFlashOld(AResult) then
begin
AddToLog(A15);
AddToLog('http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_11_plugin.exe'+#13#10);
ICounter:=ICounter+1;
end;
end;

function IsFlashOld(AFlVer: string) : boolean;
var
AVer, ABuild : string;
begin
if AFlVer = '' then exit;
Result := true;
AFlVer := StringReplace(AFlVer, ',', '.');
AVer := Copy(AFlVer, 1, 2);
Delete(AFlVer, 1, 5);
ABuild := AFlVer;
Delete(ABuild, 1, 4);
if ValidFloat(AFlVer) then
case AVer of
'11' : if StrToFloat(AFlVer) >= 602.171 then
if ValidInt(ABuild) then
if (StrToInt(ABuild) >= 171) or (AFlVer > '603') then Result:=false;
end
else
Result:=false;
end;

Procedure AdobeReaderVuln;
var
ARes, AVer, AMinVer, CVer, AKey, AExe : string;
begin
ARes:='';
if RegKeyExists('HKLM',
'SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\Browser Helper Objects\{06849E9F-C8D7-4D59-B87D-784B7D6BE0B3}')
then ARes:='06849E9F-C8D7-4D59-B87D-784B7D6BE0B3'
else if RegKeyExists('HKLM',
'SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\Browser Helper Objects\{18DF081C-E8AD-4283-A596-FA578C2EBDC3}')
then ARes:='18DF081C-E8AD-4283-A596-FA578C2EBDC3';
if ARes = '' then exit;
ARes := RegKeyStrParamRead('HKCR','CLSID\{'+ARes+'}\InprocServer32','');
AVer := GetFileVersion(ARes, 6);
AMinVer := '';
CVer := Copy(AVer, 1, 2);
if CVer[2]='.' then CVer:=CVer[1];
if ValidInt(CVer) then
case StrToInt(CVer) of
11:AMinVer := '11.0.02';
10:AMinVer := '10.1.6';
9: AMinVer:= '9.5.4';
end
else exit;
AExe := RegKeyStrParamRead('HKCR','Software\Adobe\Acrobat\Exe','');

if Pos('acrobat.exe',LowerCase(AExe)) > 0 then
begin
if AMinVer = '' then
begin
AddToLog(A16+#13#10);
ICounter:=ICounter+1;
end
else
begin
ARes:=RegKeyStrParamRead('HKLM','SOFTWARE\Adobe\Adobe Acrobat\'+CVer+'.0\Installer','ENU_GUID');
AVer:=RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\'+ARes,'DisplayVersion');
if AVer<AMinVer then
begin
AddToLog(A17 + AVer + A18 + AMinVer);
if CVer='9' then
begin
if AVer < '9.1' then
begin
AddToLog('Pro/Standard - http://ardownload.adobe.com/pub/adobe/acro...incr.msp');
AddToLog('Pro Extended - http://ardownload.adobe.com/pub/adobe/acro...incr.msp');
end;
if AVer < '9.1.2' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.1.2/misc/AcrobatUpd912_all_incr.msp');
if AVer < '9.1.3' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.1.3/misc/AcrobatUpd913_all_incr.msp');
if AVer < '9.2' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.2/misc/AcrobatUpd920_all_incr.msp');
if AVer < '9.3' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.3/misc/AcrobatUpd930_all_incr.msp');
if AVer < '9.3.2' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.3.2/misc/AcrobatUpd932_all_incr.msp');
if AVer < '9.3.3' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.3.3/misc/AcrobatUpd933_all_incr.msp');
if AVer < '9.4' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.4.0/misc/AcrobatUpd940_all_incr.msp');
if AVer < '9.4.2' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.4.2/misc/AcrobatUpd942_all_incr.msp');
if AVer < '9.4.5' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.4.5/misc/AcrobatUpd945_all_incr.msp');
if AVer < '9.4.6' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.4.6/misc/AcrobatUpd946_all_incr.msp');
if AVer < '9.5' then
AddToLog('http://ardownload.adobe.com/pub/adobe/acrobat/win/9.x/9.5.0/misc/AcrobatUpd950_all_incr.msp');
end;
AddToLog(''); ICounter:=ICounter+1;
end;
end;
end else
begin
if AMinVer = '' then
begin
AddToLog(A19);
AddToLog('http://get.adobe.com/reader/otherversions'+#13#10);
ICounter:=ICounter+1;
end else
begin
ARes:=RegKeyStrParamRead('HKLM','SOFTWARE\Adobe\Acrobat Reader\'+CVer+'.0\Installer','ENU_GUID');
AVer:=RegKeyStrParamRead('HKLM','SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\'+ARes,'DisplayVersion');
if AVer<AMinVer then
begin
AddToLog(A20 + AVer + A18 + AMinVer);
if CVer='11' then
begin
if AVer < '11.0.01' then
AddToLog('http://ardownload.adobe.com/pub/adobe/reader/win/11.x/11.0.01/misc/AdbeRdrUpd11001.msp');
if AVer < '11.0.02' then
AddToLog('http://ardownload.adobe.com/pub/adobe/reader/win/11.x/11.0.02/misc/AdbeRdrSecUpd11002.msp');
end;
if CVer='10' then
begin
if AVer<'10.1' then
begin
AddToLog(A19);
AddToLog('http://get.adobe.com/reader/otherversions/');
end
else
if AVer < '10.1.5' then
AddToLog('http://ardownload.adobe.com/pub/adobe/reader/win/10.x/10.1.5/misc/AdbeRdrUpd1015.msp');
if AVer < '10.1.6' then
AddToLog('http://ardownload.adobe.com/pub/adobe/reader/win/10.x/10.1.6/misc/AdbeRdrSecUpd1016.msp');
end;
if CVer='9' then
begin
AddToLog(A19);
AddToLog('http://get.adobe.com/reader/otherversions/');
end;
AddToLog(''); ICounter:=ICounter+1;
end;
end;
end;
end;

Procedure FireFoxVuln;
var
AResult,AVer,AFile:string;
Ver:integer;
FFIsOut:boolean;
begin
if RegKeyExists('HKCU','SOFTWARE\Mozilla\Mozilla Firefox') then
begin
AResult:=RegKeyStrParamRead('HKCU','SOFTWARE\Mozilla\Mozilla Firefox','');
AFile:=RegKeyStrParamRead('HKCU','SOFTWARE\Mozilla\Mozilla Firefox '+AResult+'\bin','PathToExe');
end
else if RegKeyExists('HKLM','SOFTWARE\Mozilla\Mozilla Firefox') then
begin
AResult:=RegKeyStrParamRead('HKLM','SOFTWARE\Mozilla\Mozilla Firefox','');
if not RegKeyExists('HKLM','SOFTWARE\Mozilla\Mozilla Firefox'+AResult) then
AResult:=RegKeyStrParamRead('HKLM','SOFTWARE\Mozilla\Mozilla Firefox','CurrentVersion');
AFile:=RegKeyStrParamRead('HKLM','SOFTWARE\Mozilla\Mozilla Firefox '+AResult+'\bin','PathToExe');
if AFile = '' then
AFile:=RegKeyStrParamRead('HKLM','SOFTWARE\Mozilla\Mozilla Firefox\'+AResult+'\Main','PathToExe');
end
else exit;
AResult := GetFileVersion(AFile, 6);
AVer := Copy(AResult, 1, Pos('.', AResult)-1);
if ValidInt(AVer) then Ver:=StrToInt(AVer) else exit;
FFIsOut:=false;
if (Ver = 1) and (AResult < '1.9.2.26') then FFIsOut:=true
else if Ver < 10 then FFIsOut:=true;
if FFIsOut then
begin
AddToLog('Firefox '+AResult+A22);
AddToLog('http://www.mozilla.com/'+#13#10);
ICounter:=ICounter+1;
end;
end;

Procedure JavaVuln;
var
ARes, ABuld, AURL : string;
JavaIsOut:boolean;
IPos: Integer;
begin
ARes := RegKeyStrParamRead('HKLM','SOFTWARE\JavaSoft\Java Runtime Environment','CurrentVersion');
JavaIsOut:=false;
ABuld := RegKeyStrParamRead('HKLM','SOFTWARE\JavaSoft\Java Runtime Environment','BrowserJavaVersion');
if ABuld='' then
ABuld := RegKeyStrParamRead('HKLM','SOFTWARE\JavaSoft\Java Web Start','CurrentVersion')
else if ARes='' then ARes := copy(ABuld, 1, 3);

AURL := A24;
case ARes of
'1.7': begin
IPos := Pos('.', ABuld);
Delete(ABuld, 1, IPos);
if ValidFloat(ABuld) then
if StrToFloat(ABuld) < 17 then
JavaIsOut:=true;
AURL := StringReplace(AURL,'_v6','');
end;
'1.6': if ABuld<'1.6.0_43' then JavaIsOut:=true;
'1.5': JavaIsOut:=true;
'1.4': JavaIsOut:=true;
end;
if JavaIsOut then
begin
AddToLog(A23);
AddToLog(A24+#13#10);
ICounter:=ICounter+1;
end;

if IsWow64 then
begin
SetupAVZ('X64R=NN');
ARes := RegKeyStrParamRead('HKLM','SOFTWARE\JavaSoft\Java Runtime Environment','CurrentVersion');
JavaIsOut:=false;
ABuld := RegKeyStrParamRead('HKLM','SOFTWARE\JavaSoft\Java Runtime Environment','BrowserJavaVersion');
if ABuld='' then
ABuld := RegKeyStrParamRead('HKLM','SOFTWARE\JavaSoft\Java Web Start','CurrentVersion');
AURL := A24;
case ARes of
'1.7': begin
IPos := Pos('.', ABuld);
Delete(ABuld, 1, IPos);
if ValidFloat(ABuld) then
if StrToFloat(ABuld) < 17 then
JavaIsOut:=true;
AURL := StringReplace(AURL,'_v6','');
end;
'1.6': if ABuld<'1.6.0_43' then JavaIsOut:=true;
end;
if JavaIsOut then
begin
A23 := StringReplace(A23,'32','64');
AddToLog(A23);
AddToLog(AURL+#13#10);
ICounter:=ICounter+1;
end;
SetupAVZ('X64R=YY');
end;
end;

Procedure OperaVuln;
var
AResult,AVer:string;
cVer:char;
iPos:integer;
begin
AResult:=RegKeyStrParamRead('HKLM','SOFTWARE\Opera Software','Last CommandLine v2');
if AResult = '' then
AResult:=RegKeyStrParamRead('HKCU','SOFTWARE\Opera Software','Last CommandLine v2');
if AResult = '' then exit;
iPos := Pos('.exe', AResult);
AResult := Copy(AResult, 1, iPos+4);
AVer := GetFileVersion(AResult, 6);
if ValidFloat(AVer) then
if StrToFloat(AVer) < 12.10 then
begin
AddToLog('Opera '+AVer+A25);
AddToLog('http://www.opera.com/browser/download'+#13#10);
ICounter:=ICounter+1;
end;
end;

Procedure QuickTimeVuln;
var
AResult, AVer :string;
begin
AResult:=RegKeyStrParamRead('HKCR','CLSID\{02BF25D5-8C17-4B23-BC80-D3488ABDDC6B}\InprocServer32','');
if not FileExists(AResult) then exit;
AVer:=GetFileVersion(AResult,3);
Delete(AVer,7,7);
if AVer<'7.6.8' then
begin
AddToLog('QuickTime '+AVer+A22);
AddToLog('http://www.apple.com/quicktime/download'+#13#10);
ICounter:=ICounter+1;
end;
end;

begin
ClearLog;
if GetAVZVersion<4.39 then begin
ShowMessage('Для этого скрипта требуется AVZ версии 4.39 или старше.'); Exit; end;
if TranslateStr('$AVZ0075')='DLLs' then
begin
bRU := false;
A00:='http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=';
A01:='Install Service Pack 4 for Windows 2000';
A02:='Windows 2000 lifecycle ended';
A03:='Install Service Pack 3 for Windows XP';
A04:='Install Service Pack 2 for Windows 2003';
A05:='Install Windows Vista Service Pack 1 and 2';
A06:='Search for critical vulnerabilities';
A07:='Vulnerability in Server Service Could Allow Remote Code Execution';
A08:='Vulnerabilities in SMB Server Could Allow Remote Code Execution';
A09:='Vulnerability in Microsoft DirectShow Could Allow Remote Code Execution';
A10:='Cumulative Security Update for Internet Explorer';
A11:='Cumulative Security Update of ActiveX Kill Bits';
A12:='Vulnerability in Help and Support Center Could Allow Remote Code Execution';
A13:='Vulnerability in Windows Shell Could Allow Remote Code Execution';
A14:='Vulnerabilities in Adobe Flash Player for Internet Explorer';
A15:='Vulnerabilities in Adobe Flash Player for Firefox/Safari/Opera';
A16:='Install Adobe Acrobat XI or uninstall vulnerable';
A17:='Adobe Acrobat ';
A18:='installed. Too dangerous to use the version below ';
A19:='Install Adobe Reader XI (11.0) or uninstall vulnerable.';
A20:='Adobe Reader ';
A21:='Install Adobe XI (11.0)';
A22:=' vulnerable. Uninstall it or install actual one';
A23:='Vulnerabilities in Java JDK and JRE (32-bit). Uninstall it and install actual one:';
A24:='http://www.java.com/en/download/manual_v6.jsp';
A25:=A22;
A26:='Frequently used critical vulnerabilities not found.';
A27:='Vulnerabilities found: ';
A28:='Log saved in subfolder Log';
A29:='Log saved in c:\avz_log.txt file';
A30:='Vulnerability in Print Spooler Service Could Allow Remote Code Execution';
A31:='Vulnerability in Windows Shell Graphics Processing could allow remote code execution';
A32:='Install Windows Vista Service Pack 2';
A33:='Update to the AutoPlay functionality in Windows';
A34:='Protected Mode for Adobe Reader X is disabled. Go to: Edit >Preferences >General and check "Enable Protected Mode at startup".';
A35:='Vulnerability in Windows Kernel-Mode Drivers Could Allow Remote Code Execution';
A36:='Vulnerability in Task Scheduler Could Allow Elevation of Privilege';
A37:='Vulnerabilities in Windows Kernel Could Allow Elevation of Privilege';
A38:='Vulnerabilities in Windows Media Could Allow Remote Code Execution';
A39:='dozens.';
A40:='Vulnerability in Windows Common Controls Could Allow Remote Code Execution';
A41:='This update require the SP3 installed on Office 200';
A42:='Unauthorized Digital Certificates Could Allow Spoofing';
A43:='Vulnerability in Microsoft XML Core Services Could Allow Remote Code Execution';
A44:='This update require the SP1 installed on Office 2010'+#13#10+
'http://www.microsoft.com/en-us/download/details.aspx?id=26622';
A45:='Run Update as Administrator';
A46:='Install new Internet Explorer'+#13#10+
'http://windows.microsoft.com/en-US/internet-explorer/download-ie';
A47:='Security Update for Internet Explorer';
end else
begin
bRU := true;
A00:='http://www.microsoft.com/downloads/details.aspx?displaylang=ru&FamilyID=';
A01:='Установите Service Pack 4 для Windows 2000';
A02:='Жизненный цикл Windows 2000 закончился';
A03:='Установите Service Pack 3 для Windows XP. Возможно, потребуется активация.';
A04:='Установите Service Pack 2 для Windows 2003';
A05:='Установите Service Pack 1 и 2 для Windows Vista. Возможно, потребуется активация.';
A06:='Поиск критических уязвимостей';
A07:='Уязвимость службы сервера делает возможным удаленное выполнение кода';
A08:='Уязвимости в протоколе SMB делают возможным удаленное выполнение кода';
A09:='Уязвимости в Microsoft DirectShow делают возможным удаленное выполнение кода';
A10:='Накопительное обновление безопасности для браузера Internet Explorer';
A11:='Накопительное обновление для системы безопасности, устанавливающее флаг блокировки для элемента ActiveX';
A12:='Уязвимость в Центре справки и поддержки Windows';
A13:='Уязвимость оболочки Windows делает возможным удаленное выполнение кода';
A14:='Уязвимости в Adobe Flash Player для Internet Explorer';
A15:='Уязвимости в Adobe Flash Player для Firefox/Safari/Opera';
A16:='Установите Adobe Acrobat XI или удалите старый';
A17:='Установлен Adobe Acrobat версии ';
A18:='. Опасно использовать версии до ';
A19:='Установите Adobe Reader XI (11.0) или удалите старый.';
A20:='Установлен Adobe Reader версии ';
A22:=' устарел. Удалите его или установите новый';
A21:='Установите Adobe Reader XI (11.0)';
A23:='Множественные уязвимости в Java JDK и JRE (32-разрядная версия). Деинсталлируйте старую версию и установите новую:';
A24:='http://www.java.com/ru/download/manual_v6.jsp';
A25:=' устарела. Удалите её или установите новую';
A26:='Часто используемые уязвимости не обнаружены.';
A27:='Обнаружено уязвимостей: ';
A28:='Протокол сохранён в под-папке Log';
A29:='Протокол сохранён в файле c:\avz_log.txt';
A30:='Уязвимость в службе диспетчера очереди печати делает возможным удаленное выполнение кода';
A31:='Уязвимость обработки графики в оболочке Windows делает возможным удаленное выполнение кода';
A32:='Установите Service Pack 2 для Windows Vista. Возможно, потребуется активация.';
A33:='Обновление функции автозапуска в Windows';
A34:='Зайдите в меню Adobe Reader X - Редактирование > Установки > Основные и отметьте "Включить защищённый режим при запуске"';
A35:='Уязвимость драйверов режима ядра Windows, делает возможным удаленное выполнение кода';
A36:='Уязвимость в планировщике заданий делает возможным несанкционированное получение прав';
A37:='Уязвимости в ядре Windows могут привести к несанкционированному получению прав';
A38:='Уязвимости в Windows Media делают возможным удаленное выполнение кода';
A39:='очень много.';
A40:='Уязвимость общих элементов управления Windows делает возможным удаленное выполнение кода';
A41:='Для установки этого обновления требуется установить SP3 для Office 200';
A42:='Несанкционированные цифровые сертификаты делают возможным подмену содержимого';
A43:='Уязвимость в MSXML делает возможным удаленное выполнение кода';
A44:='Для установки этого обновления требуется установить SP1 для Office 2010'+#13#10+
'http://www.microsoft.com/ru-ru/download/details.aspx?id=26622';
A45:='Запускайте обновление от имени Администратора';
A46:='Установите новый Internet Explorer'+#13#10+
'http://windows.microsoft.com/ru-ru/internet-explorer/download-ie';
A47:='Обновление безопасности для обозревателя Internet Explorer: 14 января 2013';
end;
ICounter:=0; noSP:=false;
AddToLog(A06);
WinVuln;
MSOffice;
AdobeFlashVuln;
AdobeReaderVuln;
FireFoxVuln;
JavaVuln;
OperaVuln;
QuickTimeVuln;

if (ICounter=0) then
begin
AddToLog(A26);
MessageDlg(A26, mtInformation, mbOk, 0);
end
else
begin
if noSP then
AddToLog(A27+A39)
else
AddToLog(A27+IntToStr(ICounter));
SaveLog(GetAVZDirectory+'log\avz_log.txt');
if FileExists(GetAVZDirectory+'log\avz_log.txt') then
AddToLog(A28)
else
begin
SaveLog('c:\avz_log.txt');
AddToLog(A29);
end;
end;
end.
 

Вложения