Archived
1
0

Initial commit

This commit is contained in:
2001-11-30 12:14:44 +01:00
commit bc7c109b0c
380 changed files with 26247 additions and 0 deletions

130
HACKING/CC.PAS Normal file
View File

@ -0,0 +1,130 @@
program CCMast;
uses Crt, DOS;
var c: record
len: integer;
str: string;
dig: array[1..16] of byte;
chk: integer;
typ: string;
val: string;
end;
procedure InputCC;
begin
Write('Enter CC#: ');
ReadLn(c.str);
end;
procedure CheckType(nam,pres,lens: string);
var clen: string;
i,oldidx: integer;
prechk, lenchk: boolean;
begin
oldidx := 1;
prechk := false;
for i:=1 to Length(pres) do begin
if pres[i]=',' then begin
if Copy(pres,oldidx,i-oldidx)=Copy(c.str,1,i-oldidx) then prechk := true;
oldidx := i+1;
end;
end;
oldidx := 1;
lenchk := false;
Str(c.len,clen);
for i:=1 to Length(lens) do begin
if lens[i]=',' then begin
if Copy(lens,oldidx,i-oldidx)=Copy(clen,1,i-oldidx) then lenchk := true;
oldidx := i+1;
end;
end;
{ WriteLn(nam:16,' -prechk: ',prechk:5,' -lenchk: ',lenchk:5); }
if prechk AND lenchk then c.typ := nam;
end;
procedure CheckCC;
var i,a,co: integer;
begin
c.len := Length(c.str);
for i:=1 to c.len do begin
Val(c.str[i],c.dig[i],co);
end;
c.chk := 0;
for i:=c.len downto 1 do begin
if (c.len-i) MOD 2=0 then a:=c.dig[i] else a:=c.dig[i]*2;
if a>9 then a := a-9;
{ WriteLn(i:2,': [',c[i],']: ',a:2); }
c.chk := c.chk + a;
end;
c.typ := 'unknown';
CheckType('MasterCard', '51,52,53,54,55,', '16,');
CheckType('VISA', '4,', '13,16,');
CheckType('American Express', '34,37,', '15,');
CheckType('Diner''s Club', '30,36,38,', '14,');
CheckType('Discover', '6011,', '16,');
CheckType('enRoute', '2014,2149,', '15,');
CheckType('JCB','3088,3096,3112,3158,3337,3528,','16,');
WriteLn('Type: ', c.typ);
Write('Checksum: ', c.chk);
if (c.chk MOD 10=0) AND (c.len>12) AND (c.len<17) then c.val:='VALID' else c.val:='INVALID';
WriteLn(' ',c.val);
end;
function Checksum(x: string): integer;
var ch, i, co, j: integer;
begin
ch := 0;
for i:=1 to Length(x) do begin
val(x[i],j,co);
if (Length(x)-i) MOD 2<>0 then j:=j*2;
if j>9 then j := j - 9;
ch := ch + j;
end;
Checksum := ch;
end;
function Valid(x: string): boolean;
begin
if Checksum(x) MOD 10=0 then Valid := true else Valid := false;
end;
procedure Interpolate;
var f: text;
i: integer;
n,o: string;
begin
Assign(f,'CC.out');
{$I-}
Append(f);
if IOResult<>0 then Rewrite(f);
{$I+}
WriteLn(f,'---- ---- ---- ----');
Write(f,'New Interpolation from ',c.typ,' card ');
for i:=1 to c.len do begin
Write(f,c.dig[i]:1);
if (i MOD 4 = 0) AND (i<>16) then Write(f,' ');
end;
WriteLn(f,' (Checksum: ',c.chk,' [',c.val,'])');
WriteLn(f,'');
for i:=0 to 9999 do begin
n := Copy(c.str,1,c.len-4);
if i<1000 then n := n + '0';
if i<100 then n := n + '0';
if i<10 then n := n + '0';
Str(i:0,o);
n := n + o;
if (Valid(n)) AND (n<>c.str) then
WriteLn(f, Copy(n,1,4),' ',Copy(n,5,4),' ',Copy(n,9,4),' ',Copy(n,13,Length(n)-12),' [',Checksum(n),']');
end;
Close(f);
end;
begin
InputCC;
CheckCC;
Interpolate;
end.

124
HACKING/DECODE.PAS Normal file
View File

@ -0,0 +1,124 @@
program DecodeSubraum;
uses Logo, Crt, VFx, Numbers;
var KeyF,DecF: text;
procedure Init;
begin
ClrScr;
CursorOff;
TextColor(14);
WriteCLn('-=<3D><> Subraum Decoder <20><>=-');
WriteLn;
TextColor(8);
WriteLn('Decodiert KEYFILES vom Programm HRECORD.EXE.');
WriteLn;
TextColor(7);
window(1,5,80,25);
end;
procedure OpenInOut(InFile,OutFile: string);
begin
WStat('<27>ffne '+InFile+' f<>r Eingabeoperationen');
Assign(KeyF,InFile);
{$I-}
Reset(KeyF);
if IOResult<>0 then begin
Wcheck('%%140#FAIL');
CWriteLn('%%12#FEHLER!! Datei "'+InFile+'" konnte nicht ge<67>ffnet werden.');
Halt;
end;
{$I+}
Wcheck('%%10# OK ');
WStat('<27>ffne '+OutFile+' f<>r Ausgabeoperationen');
Assign(DecF,OutFile);
{$I-}
Rewrite(DecF);
if IOResult<>0 then begin
Wcheck('%%140#FAIL');
CWriteLn('%%10#FEHLER!! Datei "'+OutFile+'" konnte nicht ge<67>ffnet werden.');
Halt;
end;
{$I+}
Wcheck('%%10# OK ');
end;
procedure Decode;
var tmp: string;
key: byte;
dat: string;
begin
WStat('Decodierung');
dat := '';
while NOT Eof(KeyF) do begin
ReadLn(KeyF,tmp);
if Copy(tmp,1,3)='KEY' then begin
key := Hex2Dec(Copy(tmp,9,2));
case key of
008: dat := Copy(dat,1,Length(dat)-1);
013: begin WriteLn(DecF,dat); dat := ''; end;
else
dat:=dat+Chr(key);
end;
end;
end;
Wcheck('%%10# OK ');
end;
procedure CloseInOut;
begin
WStat('Schlie<69>e Eingabedatei');
Close(KeyF);
Wcheck('%%10# OK ');
WStat('Schlie<69>e Ausgabedatei');
Close(DecF);
Wcheck('%%10# OK ');
end;
procedure OutIt;
begin
WriteLn;
window(1,1,80,25);
GotoXY(1,24);
WriteLn('Programm beendet.');
CursorOn;
end;
begin
Init;
if ((ParamStr(1)='/?') OR (ParamStr(1)='-?') OR (ParamStr(1)='?') OR ((ParamStr(1)='') AND (ParamStr(2)=''))) then begin
WriteLogo;
TextColor(14);
WriteCLn('+ + + Taste dr<64>cken + + +');
ReadKey;
GotoXY(1,WhereY-1);
Write(Space(80));
GotoXY(1,WhereY-1);
TextColor(7);
WriteLn('Die DAT-Dateien sind nach folgendem Schema aufgebaut:');
WriteLn('Die erste Zeile ist eine Leerzeile, in der 2. Zeile steht die Gesamtzahl der');
WriteLn('enthaltenen Zeichen. Danach folgen die einzelnen Zeichen in folgender Form:');
WriteLn;
WriteLn('KEY: xx yy zz aa');
WriteLn('(xx,yy,zz und aa sind Hexadezimalwerte)');
WriteLn;
WriteLn('xx ist dabei der SCANCODE des eingelesenen Zeichens, yy der <20>quivalente');
WriteLn('ASCII-Code und zz ein STATUS-Code. aa hat scheinbar keine Bedeutung.');
WriteLn;
WriteLn('Dieses Programm wandelt die ASCII-Codes wieder in ASCII-Zeichen um und');
WriteLn('erstellt eine Datei mit dem "dechiffrierten" Text.');
WriteLn;
WriteLn('Syntax: ',ParamStr(0),' <Eingabedatei> <Ausgabedatei>');
WriteLn;
OutIt;
Halt;
end;
OpenInOut(ParamStr(1),ParamStr(2));
Decode;
CloseInOut;
OutIt;
end.

13
HACKING/EXECTEST.PAS Normal file
View File

@ -0,0 +1,13 @@
{ $M $4000,0,0 }
program ExecTest;
uses Dos;
begin
SwapVectors;
Exec('c:\command.com','');
SwapVectors;
if DosError<>0 then WriteLn('Dos-Error: ',DosError);
WriteLn('Exitcode: ',DosExitCode);
end.

BIN
HACKING/HACKING.OVL Normal file

Binary file not shown.

55
HACKING/HACKING.PAS Normal file
View File

@ -0,0 +1,55 @@
{ $M $4000,0,0 }
program Hacking_and_Phreaking;
uses Crt, Logo, Dos, RC_Disk;
var s: string;
f: file;
TempFile: string;
procedure Init;
var f2c: string;
begin
GetDir(0,s);
f2c:=s+'\HACKING.OVL';
WriteLn(f2c);
WriteLn(TempFile);
FileCopy(f2c, TempFile);
WriteLn('Temp-Datei angelegt!');
Assign(f,TempFile);
end;
procedure Outit;
begin
{ Erase(f); }
end;
procedure Extract(what: string);
var Password, Params: string;
i: integer;
begin
Password := '_r';
Password := 'op' + Password + 'ul';
Password := 'boC' + Password + 'ez';
Password := 'Ro' + Password;
Params := '-s'+Password+' '+what;
SwapVectors;
WriteLn('Vectors swapped out');
Exec(TempFile, Params);
WriteLn('EXEC command performed ('+tempfile+' '+Params+')');
SwapVectors;
WriteLn('Vectors swapped in');
end;
begin
TempFile := GetEnv('TEMP')+'\~1234567.EXE';
ClrScr;
Init;
delay(100);
Extract('MADMAN.TXT');
SwapVectors;
Exec('c:\termin.exe','');
SwapVectors;
Outit;
end.

32
HACKING/RC_DISK.PAS Normal file
View File

@ -0,0 +1,32 @@
unit RC_Disk; { BLEA01.PAS }
interface
procedure FileCopy(src: string; tar: string);
implementation
procedure FileCopy(src: string; tar: string);
const
bytezahl=16384;
var
Quelle, Ziel: file ;
Puffer: array [1..bytezahl] of byte;
Recordzahl, Rest: integer;
begin
Assign(Quelle, src);
Reset(Quelle,1);
Assign(Ziel, tar);
Rewrite(Ziel,1);
Rest := FileSize(Quelle);
while Rest>0 do begin
if Bytezahl<=Rest then Recordzahl := Bytezahl else Recordzahl := Rest;
BlockRead(Quelle, Puffer, Recordzahl);
BlockWrite(Ziel, Puffer, Recordzahl);
Rest := Rest-Recordzahl;
end;
Close(Quelle);
Close(Ziel);
end;
end.

54
HACKING/smsar.pas Normal file
View File

@ -0,0 +1,54 @@
program SMSArchiverDecode;
uses Crt, DOS;
const ifile='smsar.dat';
var data: array[1..10] of string;
i,coe: integer;
f: text;
k: char;
cx,cy: integer;
function Decode(x: string): string;
var i,y: integer;
tmp: string;
begin
tmp := '';
for i:=1 to Length(x) do begin
y := Ord(x[i]);
tmp := tmp + Chr(y+coe);
end;
Decode := tmp;
end;
procedure Get10Lines;
var i: integer;
begin
for i:=1 to 10 do ReadLn(f,data[i]);
end;
begin
ClrScr;
Write('Opening ',ifile,' ... ');
Assign(f,ifile);
Reset(f);
WriteLn('OK.');
Write('Getting 10 lines ... ');
Get10Lines;
WriteLn('OK.');
cx := WhereX;
cy := WhereY;
repeat
ClrScr;
for i:=1 to 10 do WriteLn(Decode(data[i]));
WriteLn('Coefficient: ',coe);
k := ReadKey;
if k='+' then coe:=coe+1;
if k='-' then coe:=coe-1;
until k=#27;
Write('Closing file ... ');
Close(f);
WriteLn('OK.');
end.