url编码与解码工具代码,做sql注入分析时会用到
代码部分:
unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, HTTPApp;
type TForm1 = class(TForm) Button1: TButton; Memo1: TMemo; Memo2: TMemo; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } function URLEncode(const msg : String) : String; function GetMemoText(memo:TMemo):string; public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); var i: Integer; ss: string; begin ss := GetMemoText(Memo1); Memo1.Text :=ss; Memo2.Clear; for i := 1 to Length(ss) do begin Memo2.Text := Memo2.Text + '%' + IntToHex(Ord(ss), 2); end; end;
function TForm1.URLEncode(const msg: String): String; var I : Integer; begin Result := ''; for I := 1 to Length(msg) do begin if msg[I] = ' ' then Result := Result + '+' else if msg[I] in ['a'..'z', 'A'..'Z', '0'..'9'] then Result := Result + msg[I] else Result := Result + '%' + IntToHex(ord(msg[I]), 2); end;
end;
procedure TForm1.Button2Click(Sender: TObject); var ss:string; begin Memo2.Clear; ss :=GetMemoText(Memo1); Memo1.Text :=ss; Memo2.Text :=HTTPDecode(trim(ss)); end;
function TForm1.GetMemoText(memo: TMemo): string; var i:integer; begin for i:=0 to memo.Lines.Count-1 do begin Result :=Result + trim(memo.Lines); end; end;
end. url编码与解码工具附代码
url编码与解码工具附代码,代码很简单,做sql注入分析时经常用到,但一时又找不到,就写了一个
代码部分:
unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, HTTPApp;
type TForm1 = class(TForm) Button1: TButton; Memo1: TMemo; Memo2: TMemo; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } function URLEncode(const msg : String) : String; function GetMemoText(memo:TMemo):string; public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); var i: Integer; ss: string; begin ss := GetMemoText(Memo1); Memo1.Text :=ss; Memo2.Clear; for i := 1 to Length(ss) do begin Memo2.Text := Memo2.Text + '%' + IntToHex(Ord(ss), 2); end; end;
function TForm1.URLEncode(const msg: String): String; var I : Integer; begin Result := ''; for I := 1 to Length(msg) do begin if msg[I] = ' ' then Result := Result + '+' else if msg[I] in ['a'..'z', 'A'..'Z', '0'..'9'] then Result := Result + msg[I] else Result := Result + '%' + IntToHex(ord(msg[I]), 2); end;
end;
procedure TForm1.Button2Click(Sender: TObject); var ss:string; begin Memo2.Clear; ss :=GetMemoText(Memo1); Memo1.Text :=ss; Memo2.Text :=HTTPDecode(trim(ss)); end;
function TForm1.GetMemoText(memo: TMemo): string; var i:integer; begin for i:=0 to memo.Lines.Count-1 do begin Result :=Result + trim(memo.Lines); end; end;
end.
|