0% found this document useful (0 votes)
145 views

Source Code Multi Injection

1. The document defines a program interface with various components like labels, buttons, groups, and a virtual scope for monitoring network traffic. 2. It includes procedures for handling button clicks and network events to modify outgoing and incoming traffic according to the selected mobile operator and display network usage stats. 3. The program acts as a proxy by intercepting CONNECT requests and injecting custom HTTP headers to force a response or bypass authentication, representing traffic from different Indonesian carriers.

Uploaded by

Khaeru Roziqin
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
145 views

Source Code Multi Injection

1. The document defines a program interface with various components like labels, buttons, groups, and a virtual scope for monitoring network traffic. 2. It includes procedures for handling button clicks and network events to modify outgoing and incoming traffic according to the selected mobile operator and display network usage stats. 3. The program acts as a proxy by intercepting CONNECT requests and injecting custom HTTP headers to force a response or bypass authentication, representing traffic from different Indonesian carriers.

Uploaded by

Khaeru Roziqin
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 4

unit Unit1;

interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, sSkinProvider, sSkinManager, IdIPWatch, IdBaseComponent,
IdComponent, IdTCPServer, IdMappedPortTCP, ExtCtrls, StdCtrls, sButton,
sEdit, sGroupBox, sComboBox, sRadioButton, ComCtrls, sStatusBar, VrScope,
VrControls, VrScale, sPanel, sLabel, sCheckBox;
type
THaidar = class(TForm)
ldownload: TsLabel;
lupload: TsLabel;
sPanel1: TsPanel;
VrScale1: TVrScale;
VrScope1: TVrScope;
sStatusBar1: TsStatusBar;
dl: TsRadioButton;
ul: TsRadioButton;
Opsel: TsComboBox;
sGroupBox1: TsGroupBox;
sGroupBox2: TsGroupBox;
Proxy: TsComboBox;
sGroupBox3: TsGroupBox;
Port: TsComboBox;
Bug: TsEdit;
Login: TsButton;
shp1: TShape;
shp2: TShape;
Timer1: TTimer;
IdMappedPortTCP1: TIdMappedPortTCP;
IdIPWatch1: TIdIPWatch;
sSkinManager1: TsSkinManager;
sSkinProvider1: TsSkinProvider;
lportcombox: TsGroupBox;
lport: TsComboBox;
sCheckBox1: TsCheckBox;
procedure ShapeDownload;
procedure ShapeUpload;
procedure LoginClick(Sender: TObject);
procedure IdMappedPortTCP1Execute(AThread: TIdMappedPortThread);
procedure IdMappedPortTCP1OutboundData(AThread: TIdMappedPortThread);
procedure Timer1Timer(Sender: TObject);
procedure dlClick(Sender: TObject);
procedure ulClick(Sender: TObject);
procedure sCheckBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Haidar: THaidar;
Download : Integer;
Upload
: Integer;
implementation

{$R *.dfm}
procedure THaidar.ShapeDownload;
begin
shp1.Refresh;
if shp1.brush.color=clWhite then
begin
shp1.brush.color:=clRed;
end else
begin
shp1.brush.color:=clWhite;
end;
end;
procedure THaidar.ShapeUpload;
begin
shp2.Refresh;
if shp2.brush.color=clWhite then
begin
shp2.brush.color:=clLime;
end else
begin
shp2.brush.color:=clWhite;
end;
end;
procedure THaidar.LoginClick(Sender: TObject);
begin
if Login.Caption ='Login' then begin
IdMappedPortTCP1.Bindings.Add.IP
:= '127.0.0.1';
IdMappedPortTCP1.Bindings.Add.Port := StrToInt(lport.Text);
IdMappedPortTCP1.Active
:= True;
Login.Caption
:= 'Stop';
Login.ImageIndex
:= 1;
IdMappedPortTCP1.MappedHost
:= Proxy.Text;
IdMappedPortTCP1.MappedPort
:= StrToInt(Port.Text);
Bug.Enabled
:= False;
lport.Enabled
:= False;
Opsel.Enabled
:= False;
Proxy.Enabled
:= False;
Port.Enabled
:= False;
end else begin
Sleep(100);
IdMappedPortTCP1.Active
:= False;
IdMappedPortTCP1.Bindings.Clear;
login.Caption
:= 'Login';
login.ImageIndex
:= 0;
Bug.Enabled
:= True;
lport.Enabled
:= True;
Opsel.Enabled
:= True;
Proxy.Enabled
:= True;
Port.Enabled
:= True;
end;
end;
procedure THaidar.IdMappedPortTCP1Execute(AThread: TIdMappedPortThread);
Var
haidar: string;

begin
ShapeUpload;
upload:= upload+Length(AThread.NetData);
if Opsel.Text = 'Telkomsel' then begin
if Pos('CONNECT',AThread.NetData)<>0 then begin
haidar:= 'METODE http://'+Bug.Text+'/ HTTP/1.1'#13#10#13#10'Host:
xt+''#13#10#13#10#13#10;
AThread.NetData := haidar;
end;
end else
if Opsel.Text = 'Three' then begin
if Pos('CONNECT',AThread.NetData)<>0 then begin
haidar:= 'METODE http://'+Bug.Text+'/ HTTP/1.1'#13#10#13#10'Host:
xt+''#13#10#13#10#13#10;
AThread.NetData := haidar;
end;
end else
if Opsel.Text = 'Xl' then begin
if Pos('CONNECT',AThread.NetData)<>0 then begin
haidar:= 'METODE http://'+Bug.Text+'/ HTTP/1.1'#13#10#13#10'Host:
xt+''#13#10#13#10#13#10;
AThread.NetData := haidar;
end;
end else
if Opsel.Text = 'Indosat' then begin
if Pos('CONNECT',AThread.NetData)<>0 then begin
haidar:= 'METODE http://'+Bug.Text+'/ HTTP/1.1'#13#10#13#10'Host:
xt+''#13#10#13#10#13#10;
AThread.NetData := haidar;
end;
end else
if Opsel.Text = 'Axis' then begin
if Pos('CONNECT',AThread.NetData)<>0 then begin
haidar:= 'METODE http://'+Bug.Text+'/ HTTP/1.1'#13#10#13#10'Host:
xt+''#13#10#13#10#13#10;
AThread.NetData := haidar;
end;
end;
end;

'+Bug.Te

'+Bug.Te

'+Bug.Te

'+Bug.Te

'+Bug.Te

procedure THaidar.IdMappedPortTCP1OutboundData(
AThread: TIdMappedPortThread);
begin
ShapeDownload;
download:= download+Length(AThread.NetData);
if Pos ('403 Forbidden', AThread.NetData) <>0 then begin
AThread.NetData := StringReplace(athread.NetData,'403 Forbidden','200 OK'
,[rfReplaceAll]);
end else
if Pos ('407 Proxy Authentication Required', AThread.NetData) <>0 then begin
AThread.NetData := StringReplace(athread.NetData,'407 Proxy Authenticatio
n Required','200 OK',[rfReplaceAll]);
end else
if Pos ('302 Found', AThread.NetData) <>0 then begin
AThread.NetData := StringReplace(athread.NetData,'302 Found','200 OK',[rf
ReplaceAll]);
end else
if Pos ('301 Moved Permanently', AThread.NetData) <>0 then begin
AThread.NetData := StringReplace(athread.NetData,'301 Moved Permanently',
'200 OK',[rfReplaceAll]);

end else
if Pos ('407 Proxy Authentication Required', AThread.NetData) <>0 then begin
AThread.NetData := StringReplace(athread.NetData,'407 Proxy Authenticatio
n Required','200 OK',[rfReplaceAll]);
end else
if Pos (' Set-Cookie', AThread.NetData) <>0 then begin
AThread.NetData := StringReplace(AThread.NetData,' Set-Cookie',' 200 OK',
[rfReplaceAll]);
end else
if Pos ('HTTP/1.1 302 Moved Temporarily', AThread.NetData) <> 0 then begin
AThread.NetData := '';
end;
end;
procedure THaidar.Timer1Timer(Sender: TObject);
begin
ldownload.Caption := FormatFloat('0',download/1024);
lupload.Caption := FormatFloat('0',upload/1024);
vrscope1.SetData(0,strtoint(ldownload.Caption));
vrscope1.SetData(1,strtoint(lupload.Caption));
sStatusBar1.Panels[1].Text := idipwatch1.LocalName;
sStatusBar1.Panels[0].Text := idipwatch1.LocalIP;
download:= 0;
upload:= 0;
end;
procedure THaidar.dlClick(Sender: TObject);
begin
vrScope1.Channels[0].Visible := dl.Checked;
end;
procedure THaidar.ulClick(Sender: TObject);
begin
vrScope1.Channels[1].Visible := ul.Checked;
end;
procedure THaidar.sCheckBox1Click(Sender: TObject);
begin
if sCheckBox1.Checked = true then
begin
Bug.PasswordChar:='+';
end else begin
Bug.PasswordChar:=#0;
end;
end;
end.

You might also like