ืืืขืื ืืชืงืืคืช ืืืกืืจ ืฉื ืืืจืืื ืืคืื ืืืืืช ืืืื: ืืืืช ืืฉ ืฆืืจื ืืืืขืจ ืืช ืืกืคืจ ืืืืงืืจืื ืืืฉืจืืื ืขื ืืื ืืืืืื ืืืกืคืงืื ืฉืืจืืช ืืืืขืืฅ ืขื ืชืืื ืืช ืืืฉืืืื, ืืืืขื ืืืืช, ืืฉืชืืฉืื ืืขืชืื ืงืจืืืืช ืื ืฆืืื ืืจืขื ืืช ืขืืจืชื ืฉื ืืืืืื ืืืื ืืจืฆืืช ืืืชืขืืง. ืืช ืื ืืฉื ืขืฆืื, ืื ืืืืจืื "ืื ืืืืื - ืื ืืขืืจื - ืื ืืขืฉื ืืช ืื, ืืื ืื ื ืืขืฉื / ืืฉืชื ืงืคื ืืื'." ืืืขืืฅ ืืืคืื ื ืืขืช ืฉืืชืืฃ ืฉืจืช ืืขืื ืืืชืจ ืื ืืชื ืฆืืคื ืืืกื ืืืจืืืง.
ืืืืจ "ืืืฆืืช" ืืืืคื ืืื ืฉืื ื, ืืืืข ืฉืคืื ืขื ื ืืฉื ืืืืืจ ืืืคืืข:
ืื ืืืืืข ืืืื ืืืืขื ืืื ืกืืื ืกืืืืช ืืจืืืืช ืืืจื ืืื ืืื ืืืฉืื ืืช ืืชืืฆืื ืืจืฆืืื, ืืืฆืืช ืฉืืืืช ืืืืชืจืืช.
ืืื ืื "ืืืฉืื ืืช ืืืชืื ืืื ื", ืืชืืื ืขื ืืืืจืื: ืืืืคื ืืื ืขืืืืื ืขืืืจ ืืืฉืชืืฉ ืืืืืฆืข ืืืืฆืขืืช ืืื ืืฉืืจืืช
I. ืืกืืฃ ืืฆื RDP.
ืืื ืืฉืืืืฉ ืขื ืืืืืืช ืื ืื ืฉื ืืกืืฃ ืื ืื ืืฉืจืชืื -> QuickSessionCollection -> ืขื ืืื ืืืืฆื ืขื ืืืคืขืื ืฉื ืืืฉืชืืฉ ืืืขื ืืื, ืืืืจืช Shadow ืืชืคืจืื ืืืงืฉืจ ืืฆืืืช ืืืืจืื ืืืฆื ืืืฉืชืืฉ ืืชืืื ื, ืืื ื ืืืคืฆืื, ื ืืื ื ืฉืืืช "ืขืฅ" ื ืืกืคืช, ืืืืืจ:
1. ืืื ืืช ืืืื ื-RPP ืฉื ืืืคืขืื:
query user | findstr Administrator
ืืึน:
qwinsta | findstr Administrator
ืืชืจ ืขื ืื "| findstr ืื ืื"ืื ืืื ื ืื ืจืง ืืฉืืืขืช ืื ืืืืืง ืื ืื ืืชื ืฆืจืื, ืื ืืฉืชืืฉ ืจืง ืืืืง ืืจืืฉืื ืืื ืืจืืืช ืืช ืืืื ืืืืืจืื ืืฉืจืช.
2. ืืชืืืจ ืืืคืขืื ืื, ืืชื ืื ืฉืื ืืืืืืื ืืืื ืืืช ืงืืืฆืชืืช ืืืคืฉืจืืช "ืืืืจ ืืืื ืฉืืืื ืืจืืืง ืขืืืจ ืืคืขืืืช ืืฉืชืืฉ ืฉื ืฉืืจืืชื ืฉืืืื ืขืืืื ืืจืืืง" ื ืืืจื ืืืฉืจ ืืคืืืช ืืืคืฉืจืืช "ืคืงื ืืคืขืื ืขื ืืจืฉืืช ืืฉืชืืฉ" ื ืืืจื (
mstsc /shadow:127
ืฉืืื ืื ืฉืืจืฉืืื ืชืืื ืจืง ืื ืืกืืช ืืฉืชืืฉ.
ืื ื ืืืืจ ืขื ืื ืฉืืื ืืืืืืช ืืืืื ืชืงืื ืืช ืืืืจืื ืืืืื:
ืืื ืืฆืืจื ืืืชืืจ ืืืืื ืจืืฉืื ื ืฉื ืืชืืื ืืช ืฉืชืืืื, ืืฉืชืืฉืชื ืืืฉืืื ืขื ืืืืืืช ืื ืื.
II. ืชืื ืืช
ืื ืืฆืืจืช ืืืขืื: ืืฆืืจืช ืืืฉืง ืืจืคื ืคืฉืื ืืื ืืืชืืืจ ืืืืฉ ืืฆื ืฉื ืืืฉืชืืฉ ืืจืฉืืชื, ืฉืืืืช ืืืืขื ืืืฉืชืืฉ. ืกืืืืช ืืชืื ืืช ืฉื ืืืจื ืืื Lazarus.
1. ืื ื ืืงืืืื ืืช ืจืฉืืืช ืืืืืืื ืื ืืืืื ืฉื ืืฉืชืืฉืื "ืื ืืกื" - "ืฉื ืืื" ืืืื ืื, ืื ืฉืื ืืจื ืืืกืืฃ:
wmic useraccount get Name,FullName
ืืฃ ืืื ืื ืืืกืจ ืืคืืื ืืช ืื:
wmic useraccount get Name,FullName > c:testusername.txt
ืื ื ืืืื ืืื ืฉืืืืจืืก ืืืืชื ืืขืื ืืขืืืื ืืงืืืฅ ืืื, ืฉืื ืืืจืืจืช ืืืื ืืงืืืื ืฉืื ืืื UCS-2, ืื ืคืฉืื ืืืืชื ืฆืจืื ืืืืืจ ืืืชื ืืื ืืช ื-UTF-8 ืจืืื. ืืฉ ืืจืื ืืจืืืกืืืช ืืืื ื ืืงืืฆืื, ืื ืืืชืจ ื ืืื ืืจืื ืจืืืืื, ืฉืืืืื ืืขืื ืืืชื ืืืืคื ืชืื ืืชื, ืืืืงืื ืื ืืืืืืจ ืชืืคืชืจ ืืขืืืช ืืงืืืื, ืืืงืืืฅ ืืขืืืื ืืืืคื ืคืจืืืจืืื.
ืืื, ืืจืขืืื ืืื ืฉืชืืื ืชืืงืื ื ืืืฉื ืืืฉืชืืฉื ืืชืืื ื, ืืืฉื c:test, ืฉืื ืืืื 2 ืงืืฆืื: ืืจืืฉืื ืขื ืื ืืกื ืืฉื ืืื, ืืฉื ื ืขื id_rdp ืืื ืืกื ืฉื ืืฉืชืืฉืื. ืืืืจ ืืื, ืื ื ืืขืืืื ืืช ืื ืชืื ืื ืืืื ืืืืื ืืืืืชื ื :).
ืืื ืชืืื, ืืื ืืฉืืื ืืจืฉืืืช ืืคืขืืืช, ืื ื ืืขืืืจืื ืืช ืืชืืื ืืื (ืื ืืกื ืืฉื ืืื) ืืืขืจื:
procedure Tf_rdp.UserF2Array;
var
F:TextFile; i:integer; f1, line1:String; fL: TStringList;
begin //f_d ะณะปะพะฑะฐะปัะฝัะน ะฟััั ะบ ัะฐะทะผะตัะตะฝะธั ัะฐะนะปะพะฒ
f1:=f_d+'user_name.txt'; //ะทะฐะดะฐัะฐ ััะธัะฐัั ะฒ ะผะฐััะธะฒ ัะพะดะตัะถะธะผะพะต ัะฐะนะปะฐ
fL := TStringList.Create; // ัััะพะบั ะฟะพะดะฒะตัะณะฝะตะผ ะผะตัะฐะผะฐััะพะทะฐะผ ั ัะฐะทะดะตะปะธัะตะปัะผะธ
fL.Delimiter := '|'; fL.StrictDelimiter := True;
AssignFile(F,f1);
try // ะัะบัััั ัะฐะนะป ะดะปั ััะตะฝะธั
reset(F); ReadLn(F,line1);
i:=0;
while not eof(F) do // ะกัะธััะฒะฐะตะผ ัััะพะบะธ, ะฟะพะบะฐ ะฝะต ะทะฐะบะพะฝัะธััั ัะฐะนะป
begin
ReadLn(F,line1);
line1:= StringReplace(line1, ' ', '|',[]); //ะทะฐะผะตะฝัะตะผ ะฟะตัะฒัะน ะฟะพะฟะฐะฒั.2ะฟัะพะฑะตะปะฐ ัะฐะทะดะตะปะธัะตะปะตะผ |
// ัะดะฐะปัะตะผ ะฒัะต ะดะฒะพะนะฝัะต ะฟัะพะฑะตะปั
while pos(' ',line1)>0 do line1:= StringReplace(line1, ' ', ' ', [rfReplaceAll]);
begin
if (pos('|',line1)>0) then
begin //ะตัะปะธ ัะฐะทะดะตะปะธัะตะปั ัััะตััะฒัะตั ะทะฐะฝะพัะธะผ ะตะณะพ ะฒ ะผะฐััะธะฒ
fL.DelimitedText :=line1; // ัะฐะทะฑะธะฒะฐะตะผ ะฝะฐ ััะพะปะฑัั
if (fL[0]<>'') then //ะตัะปะธ ััะตัะบะฐ ะธะผะตะตั ะธะผั
begin //ะฒะฝะพัะธะผ ะตะต ะฒ ะผะฐััะธะฒ
inc(i); // ะธะทะฑะฐะฒะปัะตะผัั ะพั ะฒะพะทะผะพะถะฝัั
ะพะดะธะฝะพัะฝัั
ะฟัะพะฑะตะปะพะฒ ะฒ ะปะพะณะธะฝะต
fam[0,i]:=StringReplace(fL[1],' ','',[rfReplaceall, rfIgnoreCase]);
fam[1,i]:=fL[0];
end;end;end;end; // ะะพัะพะฒะพ. ะะฐะบััะฒะฐะตะผ ัะฐะนะป.
CloseFile(F);
Fl.Free;
except
on E: EInOutError do ShowMessage('ะัะธะฑะบะฐ ะพะฑัะฐะฑะพัะบะธ ัะฐะนะปะฐ. ะะตัะฐะปะธ: '+E.Message);
end;end;
ืื ื ืืชื ืฆื ืขื "ืืจืื ืงืื", ืื ืงืืืืช ืืืืืช ืืืื ืชืืฆืืชืืืช ืืืชืจ.
2. ืืขืืจืช ืืืชื ืฉืืื ืืืคืกืงื ืืงืืืืช, ืื ื ืงืืจืืื ืืช ืืชืืฆืื ืฉื ืขืืืื ืืจืฉืืื ืืืืื ื StringGrid, ืืขืื ืื ื ืืชื ืคืืกืช ืงืื "ืืฉืืขืืชืืช":
2.1 ืื ื ืืงืืืื ืืช ืืจืฉืืื ืื ืืืืืช ืฉื ืืคืขืืืช RDP ืืงืืืฅ:
f1:=f_d+'user.txt';
cmdline:='/c query user >'+ f1;
if ShellExecute(0,nil, PChar('cmd'),PChar(cmdline),nil,1)=0 then;
Sleep(500); // ะผะพะถะฝะพ ะธ ะฟะพะดะพะปััะต ะถะดะฐัั ะฟะพะบะฐ ัะฐะนะป ะดะปั ััะตะฝะธั ัะพะทะดะฐะตััั
2.2 ืขืื ืืช ืืงืืืฅ (ืจืง ืฉืืจืืช ืงืื ืืฉืืขืืชืืืช ืืกืืื ืืช):
StringGrid1.Cells[0,i]:=fL[1]; StringGrid1.Cells[2,i]:=fL[3]; //ะบะธะดะฐะตะผ ะฒ ัะธะบะปะต ะฒ StringGrid1
login1:=StringReplace(fL[1],' ','',[rfReplaceall, rfIgnoreCase]); //ัะฑะธัะฐะตะผ ะธะท ะปะพะณะธะฝะฐ ะฟัะพะฑะตะปั
if (SearchArr(login1)>=0) then //ะธัะตะผ ะฒ ะผะฐััะธะฒะต ะธะท ะฟ1. ะปะพะณะธะฝ ะธ ะทะฐะฟะธััะฒะฐะตะผ ะฒ ัะฐะฑะปะธัั ะคะะ
StringGrid1.Cells[1,i]:=fam[1,SearchArr(login1)]
else StringGrid1.Cells[1,i]:='+'; // ะปะธะฑะพ ะทะฐะฟะธััะฒะฐะตะผ ะฟะปััะธะบ:)
.... //ะฒ ะทะฐะฒะธัะธะผะพััะธ ะพั ะฒัะฑะพัะฐ ะฟะพะปัะทะพะฒะฐัะตะปั ัะพััะธััะตะผ ะธ ัะพัะผะฐัะธััะตะผ ะฟะพ ะดะฐะฝะฝัะผ
if (b_id.Checked=true) then SortGrid(0) else SortGrid(1);
StringGrid1.AutoSizeColumn(0);StringGrid1.AutoSizeColumn(1); StringGrid1.AutoSizeColumn(2);
3. ืืืืืจ ืืฉืืจ ืืขืฆืื ืืืืืฆื ืขื ืืฉืืจื ืขื ืืืฉืชืืฉ ืืืกืคืจ ืืคืืืฉื ืฉืื:
id:=(StringGrid1.Row);// ัะทะฝะฐะตะผ ะฝะพะผะตั ัััะพะบะธ IntToStr(StringGrid1.Row)
ids:=StringGrid1.Cells[2,id]; //ะฟะพะปััะฐะตะผ ะธะดะตะฝัะธัะธะบะฐัะพั rdp
cmdline:='/c mstsc /shadow:'+ ids; //ะธ ะฟะพะดะบะปััะฐะตะผัั....
if (b_rdp.Checked=True) then if ShellExecute(0,nil, PChar('cmd'),PChar(cmdline),nil,1) =0 then;
4. ื ืขืฉื ืขืื ืืื ืงืืฉืืืื, ืืื ืืืื ืืืืืฆื ืขื ืืคืชืืจ ืืจืืื, ืืืืืขืืช ืืืฉืชืืฉ ืื ืืื ืืืฉืชืืฉืื.
โ ื ืืชื ืืจืืืช ืืช ืงืื ืืืงืืจ ืืืื
III. ืฉืืืืฉ ื-AdminLink - ืื ืฉืจืืืชื:
AdminLink ืืื ืืืืฆืจ ืงืืฆืืจ ืืจื ืฉืืคื ื ืืืืงืื ืืื ืืฉืืจืืช admilaunch.exe, ืืขืืชืง ืืืฉื ืฉื ืืื ืืืฉืงื AdmiRun.Exe ืืฉืจ ื ืืฆื ืืชืืงืืื ืฉื ืืืฉืชืืฉ, ืืืฉื ืืืกืื, ืืงืื C:UsersvasyaWINDOWS. ืืืืคื ืืืื, ืื ืืื ืื ืื ืืจืืข: ืืชื ืืืื ืืฉืืง ืขื ืืืืืืช ืืืฉื ืืงืืืฅ ืงืืฆืืจื ืืืจื ืืืืจืื ืืื ืื ืงืืช ืืช ืืฆืคืื ืืื ืื ืฉืื.
ืืงืืจ: www.habr.com