diff --git a/SuperSQLInjection/Main.Designer.cs b/SuperSQLInjection/Main.Designer.cs index 6c38667..db0686d 100644 --- a/SuperSQLInjection/Main.Designer.cs +++ b/SuperSQLInjection/Main.Designer.cs @@ -79,6 +79,7 @@ this.log_col_code = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.log_col_bodyLength = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.log_col_sleepTime = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.col_proxy = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.log_cms_dataifo = new System.Windows.Forms.ContextMenuStrip(this.components); this.data_cms_clearLog = new System.Windows.Forms.ToolStripMenuItem(); this.data_cms_copyPaylaod = new System.Windows.Forms.ToolStripMenuItem(); @@ -108,8 +109,10 @@ this.data_lvw_ver_val = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.data_cms_vers = new System.Windows.Forms.ContextMenuStrip(this.components); this.data_cms_tsmi_getVariable = new System.Windows.Forms.ToolStripMenuItem(); - this.data_cms_tsmi_stopGetVariable = new System.Windows.Forms.ToolStripMenuItem(); this.data_cms_tsmi_copyVerValue = new System.Windows.Forms.ToolStripMenuItem(); + this.data_cms_tsmi_selectAllVers = new System.Windows.Forms.ToolStripMenuItem(); + this.data_cms_tsmi_selectReversVers = new System.Windows.Forms.ToolStripMenuItem(); + this.data_cms_tsmi_stopGetVariable = new System.Windows.Forms.ToolStripMenuItem(); this.tab_dbs = new System.Windows.Forms.TabPage(); this.spc_dbs = new System.Windows.Forms.SplitContainer(); this.data_dbs_ts = new System.Windows.Forms.ToolStrip(); @@ -198,6 +201,56 @@ this.chk_inject_foward_302 = new System.Windows.Forms.CheckBox(); this.btn_inject_setInject = new System.Windows.Forms.Button(); this.mytab = new System.Windows.Forms.TabControl(); + this.tab_proxy = new System.Windows.Forms.TabPage(); + this.groupBox25 = new System.Windows.Forms.GroupBox(); + this.label46 = new System.Windows.Forms.Label(); + this.proxy_lbl_proxyType = new System.Windows.Forms.Label(); + this.proxy_lbl_proxy_port = new System.Windows.Forms.Label(); + this.proxy_lbl_proxy_password = new System.Windows.Forms.Label(); + this.proxy_lbl_proxy_username = new System.Windows.Forms.Label(); + this.proxy_lbl_proxy_host = new System.Windows.Forms.Label(); + this.label45 = new System.Windows.Forms.Label(); + this.label39 = new System.Windows.Forms.Label(); + this.label38 = new System.Windows.Forms.Label(); + this.label35 = new System.Windows.Forms.Label(); + this.proxy_cmb_proxyMode = new System.Windows.Forms.ComboBox(); + this.groupBox24 = new System.Windows.Forms.GroupBox(); + this.toolStrip_proxyList = new System.Windows.Forms.ToolStrip(); + this.proxy_ts_btn_clearAllFailedProxy = new System.Windows.Forms.ToolStripLabel(); + this.proxy_ts_btn_proxy_checkNoCheckProxy = new System.Windows.Forms.ToolStripLabel(); + this.groupBox26 = new System.Windows.Forms.GroupBox(); + this.label40 = new System.Windows.Forms.Label(); + this.label41 = new System.Windows.Forms.Label(); + this.proxy_btn_importProxy = new System.Windows.Forms.Button(); + this.proxy_btn_addProxy = new System.Windows.Forms.Button(); + this.label44 = new System.Windows.Forms.Label(); + this.label43 = new System.Windows.Forms.Label(); + this.proxy_txt_addProxyPassword = new System.Windows.Forms.TextBox(); + this.label42 = new System.Windows.Forms.Label(); + this.proxy_txt_addProxyUserName = new System.Windows.Forms.TextBox(); + this.proxy_txt_addProxyHost = new System.Windows.Forms.TextBox(); + this.proxy_txt_addProxyPort = new System.Windows.Forms.TextBox(); + this.proxy_txt_addProxyType = new System.Windows.Forms.ComboBox(); + this.proxy_lvw_proxyList = new System.Windows.Forms.ListView(); + this.col_host = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.col_port = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.col_proxyType = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.col_username = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.col_password = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.col_conectIsOK = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.col_useTime = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.col_checkTime = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.proxy_cms = new System.Windows.Forms.ContextMenuStrip(this.components); + this.proxy_tsmi_setCurrentProxy = new System.Windows.Forms.ToolStripMenuItem(); + this.proxy_checkNoCheckProxy = new System.Windows.Forms.ToolStripMenuItem(); + this.proxy_checkSelectedProxy = new System.Windows.Forms.ToolStripMenuItem(); + this.proxy_checkAllProxy = new System.Windows.Forms.ToolStripMenuItem(); + this.proxy_importProxy = new System.Windows.Forms.ToolStripMenuItem(); + this.proxy_exportProxy = new System.Windows.Forms.ToolStripMenuItem(); + this.proxy_delSelectedProxy = new System.Windows.Forms.ToolStripMenuItem(); + this.proxy_copySelectedProxy = new System.Windows.Forms.ToolStripMenuItem(); + this.proxy_clearAllProxy = new System.Windows.Forms.ToolStripMenuItem(); + this.proxy_clearAllFailedProxy = new System.Windows.Forms.ToolStripMenuItem(); this.tab_cmd = new System.Windows.Forms.TabPage(); this.cmd_txt_result = new System.Windows.Forms.TextBox(); this.groupBox8 = new System.Windows.Forms.GroupBox(); @@ -322,6 +375,7 @@ this.status_lbl_all_status = new System.Windows.Forms.ToolStripStatusLabel(); this.toolStripStatusLabel11 = new System.Windows.Forms.ToolStripStatusLabel(); this.lbl_packsCount = new System.Windows.Forms.ToolStripStatusLabel(); + this.lbl_info = new System.Windows.Forms.ToolStripStatusLabel(); this.timer_status = new System.Windows.Forms.Timer(this.components); this.timer_scanInjection = new System.Windows.Forms.Timer(this.components); this.gb_basic.SuspendLayout(); @@ -371,6 +425,12 @@ this.groupBox16.SuspendLayout(); this.groupBox15.SuspendLayout(); this.mytab.SuspendLayout(); + this.tab_proxy.SuspendLayout(); + this.groupBox25.SuspendLayout(); + this.groupBox24.SuspendLayout(); + this.toolStrip_proxyList.SuspendLayout(); + this.groupBox26.SuspendLayout(); + this.proxy_cms.SuspendLayout(); this.tab_cmd.SuspendLayout(); this.groupBox8.SuspendLayout(); this.tab_bypass.SuspendLayout(); @@ -865,7 +925,8 @@ this.col_runtime, this.log_col_code, this.log_col_bodyLength, - this.log_col_sleepTime}); + this.log_col_sleepTime, + this.col_proxy}); this.log_lvw_httpLog.ContextMenuStrip = this.log_cms_dataifo; this.log_lvw_httpLog.Dock = System.Windows.Forms.DockStyle.Fill; this.log_lvw_httpLog.FullRowSelect = true; @@ -877,37 +938,40 @@ this.log_lvw_httpLog.View = System.Windows.Forms.View.Details; this.log_lvw_httpLog.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.log_lvw_httpLog_ColumnClick); this.log_lvw_httpLog.SelectedIndexChanged += new System.EventHandler(this.log_lvw_httpLog_SelectedIndexChanged); - this.log_lvw_httpLog.MouseClick += new System.Windows.Forms.MouseEventHandler(this.log_lvw_httpLog_MouseClick); // // log_col_index // this.log_col_index.Text = "发包序号"; - this.log_col_index.Width = 75; // // log_col_payload // this.log_col_payload.Text = "Payload"; - this.log_col_payload.Width = 376; + this.log_col_payload.Width = 360; // // col_runtime // this.col_runtime.Text = "用时[毫秒]"; - this.col_runtime.Width = 85; + this.col_runtime.Width = 72; // // log_col_code // this.log_col_code.Text = "状态码"; - this.log_col_code.Width = 65; + this.log_col_code.Width = 50; // // log_col_bodyLength // this.log_col_bodyLength.Text = "body长度"; - this.log_col_bodyLength.Width = 85; + this.log_col_bodyLength.Width = 80; // // log_col_sleepTime // this.log_col_sleepTime.Text = "延时[毫秒]"; - this.log_col_sleepTime.Width = 85; + this.log_col_sleepTime.Width = 72; + // + // col_proxy + // + this.col_proxy.Text = "代理"; + this.col_proxy.Width = 120; // // log_cms_dataifo // @@ -1192,10 +1256,12 @@ // this.data_cms_vers.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.data_cms_tsmi_getVariable, - this.data_cms_tsmi_stopGetVariable, - this.data_cms_tsmi_copyVerValue}); + this.data_cms_tsmi_copyVerValue, + this.data_cms_tsmi_selectAllVers, + this.data_cms_tsmi_selectReversVers, + this.data_cms_tsmi_stopGetVariable}); this.data_cms_vers.Name = "data_cms_getVariable"; - this.data_cms_vers.Size = new System.Drawing.Size(149, 70); + this.data_cms_vers.Size = new System.Drawing.Size(149, 114); // // data_cms_tsmi_getVariable // @@ -1204,13 +1270,6 @@ this.data_cms_tsmi_getVariable.Text = "获取环境变量"; this.data_cms_tsmi_getVariable.Click += new System.EventHandler(this.data_cms_tsmi_getVariable_Click); // - // data_cms_tsmi_stopGetVariable - // - this.data_cms_tsmi_stopGetVariable.Name = "data_cms_tsmi_stopGetVariable"; - this.data_cms_tsmi_stopGetVariable.Size = new System.Drawing.Size(148, 22); - this.data_cms_tsmi_stopGetVariable.Text = "立即停止"; - this.data_cms_tsmi_stopGetVariable.Click += new System.EventHandler(this.data_cms_tsmi_stopGetVariable_Click); - // // data_cms_tsmi_copyVerValue // this.data_cms_tsmi_copyVerValue.Name = "data_cms_tsmi_copyVerValue"; @@ -1218,6 +1277,27 @@ this.data_cms_tsmi_copyVerValue.Text = "复制变量值"; this.data_cms_tsmi_copyVerValue.Click += new System.EventHandler(this.data_cms_tsmi_copyVerValue_Click); // + // data_cms_tsmi_selectAllVers + // + this.data_cms_tsmi_selectAllVers.Name = "data_cms_tsmi_selectAllVers"; + this.data_cms_tsmi_selectAllVers.Size = new System.Drawing.Size(148, 22); + this.data_cms_tsmi_selectAllVers.Text = "全 选"; + this.data_cms_tsmi_selectAllVers.Click += new System.EventHandler(this.data_cms_tsmi_selectAllVers_Click); + // + // data_cms_tsmi_selectReversVers + // + this.data_cms_tsmi_selectReversVers.Name = "data_cms_tsmi_selectReversVers"; + this.data_cms_tsmi_selectReversVers.Size = new System.Drawing.Size(148, 22); + this.data_cms_tsmi_selectReversVers.Text = "反 选"; + this.data_cms_tsmi_selectReversVers.Click += new System.EventHandler(this.data_cms_tsmi_selectReversVers_Click); + // + // data_cms_tsmi_stopGetVariable + // + this.data_cms_tsmi_stopGetVariable.Name = "data_cms_tsmi_stopGetVariable"; + this.data_cms_tsmi_stopGetVariable.Size = new System.Drawing.Size(148, 22); + this.data_cms_tsmi_stopGetVariable.Text = "立即停止"; + this.data_cms_tsmi_stopGetVariable.Click += new System.EventHandler(this.data_cms_tsmi_stopGetVariable_Click); + // // tab_dbs // this.tab_dbs.Controls.Add(this.spc_dbs); @@ -1252,6 +1332,7 @@ // data_dbs_ts // this.data_dbs_ts.Dock = System.Windows.Forms.DockStyle.Bottom; + this.data_dbs_ts.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; this.data_dbs_ts.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.data_dbs_tsl_getDBS, this.data_dbs_tsl_getTables, @@ -1425,6 +1506,7 @@ // toolStrip1 // this.toolStrip1.Dock = System.Windows.Forms.DockStyle.Bottom; + this.toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.toolStripLabel3, this.data_dbs_txt_start, @@ -1515,7 +1597,7 @@ this.groupBox4.Controls.Add(this.data_dbs_lvw_data); this.groupBox4.Location = new System.Drawing.Point(3, 6); this.groupBox4.Name = "groupBox4"; - this.groupBox4.Size = new System.Drawing.Size(578, 379); + this.groupBox4.Size = new System.Drawing.Size(584, 379); this.groupBox4.TabIndex = 1; this.groupBox4.TabStop = false; this.groupBox4.Text = "获取数据"; @@ -1529,7 +1611,7 @@ this.data_dbs_lvw_data.GridLines = true; this.data_dbs_lvw_data.Location = new System.Drawing.Point(3, 17); this.data_dbs_lvw_data.Name = "data_dbs_lvw_data"; - this.data_dbs_lvw_data.Size = new System.Drawing.Size(572, 359); + this.data_dbs_lvw_data.Size = new System.Drawing.Size(578, 359); this.data_dbs_lvw_data.TabIndex = 1; this.data_dbs_lvw_data.UseCompatibleStateImageBehavior = false; this.data_dbs_lvw_data.View = System.Windows.Forms.View.Details; @@ -1580,6 +1662,7 @@ this.myicon_list.Images.SetKeyName(8, "tools.png"); this.myicon_list.Images.SetKeyName(9, "scan.png"); this.myicon_list.Images.SetKeyName(10, "Ilog.png"); + this.myicon_list.Images.SetKeyName(11, "proxy.png"); // // tab_injectCenter // @@ -1701,7 +1784,7 @@ this.groupBox17.Dock = System.Windows.Forms.DockStyle.Fill; this.groupBox17.Location = new System.Drawing.Point(3, 3); this.groupBox17.Name = "groupBox17"; - this.groupBox17.Size = new System.Drawing.Size(552, 260); + this.groupBox17.Size = new System.Drawing.Size(552, 329); this.groupBox17.TabIndex = 25; this.groupBox17.TabStop = false; this.groupBox17.Text = "获取Token的HTTP请求包"; @@ -1715,7 +1798,7 @@ this.token_txt_http_request.Multiline = true; this.token_txt_http_request.Name = "token_txt_http_request"; this.token_txt_http_request.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; - this.token_txt_http_request.Size = new System.Drawing.Size(546, 240); + this.token_txt_http_request.Size = new System.Drawing.Size(546, 309); this.token_txt_http_request.TabIndex = 8; this.token_txt_http_request.TextChanged += new System.EventHandler(this.token_txt_http_request_TextChanged); this.token_txt_http_request.KeyDown += new System.Windows.Forms.KeyEventHandler(this.token_txt_http_request_KeyDown); @@ -1728,9 +1811,9 @@ this.groupBox19.Controls.Add(this.token_txt_startStr); this.groupBox19.Controls.Add(this.token_btn_testGetToken); this.groupBox19.Dock = System.Windows.Forms.DockStyle.Bottom; - this.groupBox19.Location = new System.Drawing.Point(3, 263); + this.groupBox19.Location = new System.Drawing.Point(3, 332); this.groupBox19.Name = "groupBox19"; - this.groupBox19.Size = new System.Drawing.Size(552, 133); + this.groupBox19.Size = new System.Drawing.Size(552, 64); this.groupBox19.TabIndex = 25; this.groupBox19.TabStop = false; this.groupBox19.Text = "随机Token抓取规则"; @@ -1738,7 +1821,7 @@ // label36 // this.label36.AutoSize = true; - this.label36.Location = new System.Drawing.Point(231, 42); + this.label36.Location = new System.Drawing.Point(230, 27); this.label36.Name = "label36"; this.label36.Size = new System.Drawing.Size(65, 12); this.label36.TabIndex = 16; @@ -1747,7 +1830,7 @@ // label37 // this.label37.AutoSize = true; - this.label37.Location = new System.Drawing.Point(21, 42); + this.label37.Location = new System.Drawing.Point(20, 27); this.label37.Name = "label37"; this.label37.Size = new System.Drawing.Size(65, 12); this.label37.TabIndex = 16; @@ -1756,7 +1839,7 @@ // token_txt_endStr // this.token_txt_endStr.AcceptsReturn = true; - this.token_txt_endStr.Location = new System.Drawing.Point(303, 40); + this.token_txt_endStr.Location = new System.Drawing.Point(302, 25); this.token_txt_endStr.MaxLength = 100; this.token_txt_endStr.Name = "token_txt_endStr"; this.token_txt_endStr.Size = new System.Drawing.Size(121, 21); @@ -1766,7 +1849,7 @@ // token_txt_startStr // this.token_txt_startStr.AcceptsReturn = true; - this.token_txt_startStr.Location = new System.Drawing.Point(91, 40); + this.token_txt_startStr.Location = new System.Drawing.Point(90, 25); this.token_txt_startStr.MaxLength = 100; this.token_txt_startStr.Name = "token_txt_startStr"; this.token_txt_startStr.Size = new System.Drawing.Size(121, 21); @@ -1775,7 +1858,7 @@ // // token_btn_testGetToken // - this.token_btn_testGetToken.Location = new System.Drawing.Point(441, 38); + this.token_btn_testGetToken.Location = new System.Drawing.Point(440, 23); this.token_btn_testGetToken.Name = "token_btn_testGetToken"; this.token_btn_testGetToken.Size = new System.Drawing.Size(93, 23); this.token_btn_testGetToken.TabIndex = 6; @@ -1812,9 +1895,9 @@ this.groupBox21.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.groupBox21.Controls.Add(this.label28); - this.groupBox21.Location = new System.Drawing.Point(6, 316); + this.groupBox21.Location = new System.Drawing.Point(6, 340); this.groupBox21.Name = "groupBox21"; - this.groupBox21.Size = new System.Drawing.Size(543, 74); + this.groupBox21.Size = new System.Drawing.Size(543, 50); this.groupBox21.TabIndex = 10; this.groupBox21.TabStop = false; this.groupBox21.Text = "说明"; @@ -1822,7 +1905,7 @@ // label28 // this.label28.AutoSize = true; - this.label28.Location = new System.Drawing.Point(21, 38); + this.label28.Location = new System.Drawing.Point(19, 24); this.label28.Name = "label28"; this.label28.Size = new System.Drawing.Size(425, 12); this.label28.TabIndex = 9; @@ -1839,7 +1922,7 @@ this.txt_sencond_request.Multiline = true; this.txt_sencond_request.Name = "txt_sencond_request"; this.txt_sencond_request.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; - this.txt_sencond_request.Size = new System.Drawing.Size(551, 292); + this.txt_sencond_request.Size = new System.Drawing.Size(551, 316); this.txt_sencond_request.TabIndex = 8; this.txt_sencond_request.TextChanged += new System.EventHandler(this.txt_sencond_request_TextChanged); this.txt_sencond_request.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txt_sencond_request_KeyDown); @@ -2157,6 +2240,7 @@ | System.Windows.Forms.AnchorStyles.Right))); this.mytab.Controls.Add(this.tab_injectCenter); this.mytab.Controls.Add(this.tab_dataCenter); + this.mytab.Controls.Add(this.tab_proxy); this.mytab.Controls.Add(this.tab_file); this.mytab.Controls.Add(this.tab_cmd); this.mytab.Controls.Add(this.tab_bypass); @@ -2171,6 +2255,471 @@ this.mytab.Size = new System.Drawing.Size(840, 478); this.mytab.TabIndex = 1; // + // tab_proxy + // + this.tab_proxy.Controls.Add(this.groupBox25); + this.tab_proxy.Controls.Add(this.groupBox24); + this.tab_proxy.ImageKey = "proxy.png"; + this.tab_proxy.Location = new System.Drawing.Point(4, 23); + this.tab_proxy.Name = "tab_proxy"; + this.tab_proxy.Padding = new System.Windows.Forms.Padding(3); + this.tab_proxy.Size = new System.Drawing.Size(832, 451); + this.tab_proxy.TabIndex = 11; + this.tab_proxy.Text = "代理设置"; + this.tab_proxy.UseVisualStyleBackColor = true; + // + // groupBox25 + // + this.groupBox25.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupBox25.Controls.Add(this.label46); + this.groupBox25.Controls.Add(this.proxy_lbl_proxyType); + this.groupBox25.Controls.Add(this.proxy_lbl_proxy_port); + this.groupBox25.Controls.Add(this.proxy_lbl_proxy_password); + this.groupBox25.Controls.Add(this.proxy_lbl_proxy_username); + this.groupBox25.Controls.Add(this.proxy_lbl_proxy_host); + this.groupBox25.Controls.Add(this.label45); + this.groupBox25.Controls.Add(this.label39); + this.groupBox25.Controls.Add(this.label38); + this.groupBox25.Controls.Add(this.label35); + this.groupBox25.Controls.Add(this.proxy_cmb_proxyMode); + this.groupBox25.Location = new System.Drawing.Point(6, 6); + this.groupBox25.Name = "groupBox25"; + this.groupBox25.Size = new System.Drawing.Size(820, 53); + this.groupBox25.TabIndex = 6; + this.groupBox25.TabStop = false; + this.groupBox25.Text = "设置代理"; + // + // label46 + // + this.label46.AutoSize = true; + this.label46.Location = new System.Drawing.Point(439, 25); + this.label46.Name = "label46"; + this.label46.Size = new System.Drawing.Size(41, 12); + this.label46.TabIndex = 0; + this.label46.Text = "类型:"; + // + // proxy_lbl_proxyType + // + this.proxy_lbl_proxyType.AutoSize = true; + this.proxy_lbl_proxyType.Location = new System.Drawing.Point(486, 25); + this.proxy_lbl_proxyType.Name = "proxy_lbl_proxyType"; + this.proxy_lbl_proxyType.Size = new System.Drawing.Size(53, 12); + this.proxy_lbl_proxyType.TabIndex = 0; + this.proxy_lbl_proxyType.Text = "--------"; + // + // proxy_lbl_proxy_port + // + this.proxy_lbl_proxy_port.AutoSize = true; + this.proxy_lbl_proxy_port.Location = new System.Drawing.Point(385, 25); + this.proxy_lbl_proxy_port.Name = "proxy_lbl_proxy_port"; + this.proxy_lbl_proxy_port.Size = new System.Drawing.Size(41, 12); + this.proxy_lbl_proxy_port.TabIndex = 0; + this.proxy_lbl_proxy_port.Text = "------"; + // + // proxy_lbl_proxy_password + // + this.proxy_lbl_proxy_password.AutoSize = true; + this.proxy_lbl_proxy_password.Location = new System.Drawing.Point(731, 25); + this.proxy_lbl_proxy_password.Name = "proxy_lbl_proxy_password"; + this.proxy_lbl_proxy_password.Size = new System.Drawing.Size(77, 12); + this.proxy_lbl_proxy_password.TabIndex = 0; + this.proxy_lbl_proxy_password.Text = "------------"; + // + // proxy_lbl_proxy_username + // + this.proxy_lbl_proxy_username.AutoSize = true; + this.proxy_lbl_proxy_username.Location = new System.Drawing.Point(610, 25); + this.proxy_lbl_proxy_username.Name = "proxy_lbl_proxy_username"; + this.proxy_lbl_proxy_username.Size = new System.Drawing.Size(71, 12); + this.proxy_lbl_proxy_username.TabIndex = 0; + this.proxy_lbl_proxy_username.Text = "-----------"; + // + // proxy_lbl_proxy_host + // + this.proxy_lbl_proxy_host.AutoSize = true; + this.proxy_lbl_proxy_host.Location = new System.Drawing.Point(232, 25); + this.proxy_lbl_proxy_host.Name = "proxy_lbl_proxy_host"; + this.proxy_lbl_proxy_host.Size = new System.Drawing.Size(95, 12); + this.proxy_lbl_proxy_host.TabIndex = 0; + this.proxy_lbl_proxy_host.Text = "---------------"; + // + // label45 + // + this.label45.AutoSize = true; + this.label45.Location = new System.Drawing.Point(151, 25); + this.label45.Name = "label45"; + this.label45.Size = new System.Drawing.Size(77, 12); + this.label45.TabIndex = 0; + this.label45.Text = "固定代理IP:"; + // + // label39 + // + this.label39.AutoSize = true; + this.label39.Location = new System.Drawing.Point(687, 25); + this.label39.Name = "label39"; + this.label39.Size = new System.Drawing.Size(41, 12); + this.label39.TabIndex = 0; + this.label39.Text = "密码:"; + // + // label38 + // + this.label38.AutoSize = true; + this.label38.Location = new System.Drawing.Point(551, 25); + this.label38.Name = "label38"; + this.label38.Size = new System.Drawing.Size(53, 12); + this.label38.TabIndex = 0; + this.label38.Text = "用户名:"; + // + // label35 + // + this.label35.AutoSize = true; + this.label35.Location = new System.Drawing.Point(338, 25); + this.label35.Name = "label35"; + this.label35.Size = new System.Drawing.Size(41, 12); + this.label35.TabIndex = 0; + this.label35.Text = "端口:"; + // + // proxy_cmb_proxyMode + // + this.proxy_cmb_proxyMode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.proxy_cmb_proxyMode.FormattingEnabled = true; + this.proxy_cmb_proxyMode.Items.AddRange(new object[] { + "不开启代理", + "代理池随机选择", + "固定代理方式"}); + this.proxy_cmb_proxyMode.Location = new System.Drawing.Point(14, 22); + this.proxy_cmb_proxyMode.Name = "proxy_cmb_proxyMode"; + this.proxy_cmb_proxyMode.Size = new System.Drawing.Size(131, 20); + this.proxy_cmb_proxyMode.TabIndex = 5; + this.proxy_cmb_proxyMode.TextChanged += new System.EventHandler(this.proxy_cmb_proxyMode_TextChanged); + // + // groupBox24 + // + this.groupBox24.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupBox24.Controls.Add(this.toolStrip_proxyList); + this.groupBox24.Controls.Add(this.groupBox26); + this.groupBox24.Controls.Add(this.proxy_lvw_proxyList); + this.groupBox24.Location = new System.Drawing.Point(6, 65); + this.groupBox24.Name = "groupBox24"; + this.groupBox24.Size = new System.Drawing.Size(820, 380); + this.groupBox24.TabIndex = 6; + this.groupBox24.TabStop = false; + this.groupBox24.Text = "代理池列表"; + // + // toolStrip_proxyList + // + this.toolStrip_proxyList.Dock = System.Windows.Forms.DockStyle.Bottom; + this.toolStrip_proxyList.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip_proxyList.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.proxy_ts_btn_clearAllFailedProxy, + this.proxy_ts_btn_proxy_checkNoCheckProxy}); + this.toolStrip_proxyList.Location = new System.Drawing.Point(3, 352); + this.toolStrip_proxyList.Name = "toolStrip_proxyList"; + this.toolStrip_proxyList.RenderMode = System.Windows.Forms.ToolStripRenderMode.System; + this.toolStrip_proxyList.Size = new System.Drawing.Size(814, 25); + this.toolStrip_proxyList.TabIndex = 7; + this.toolStrip_proxyList.Text = "toolStrip2"; + // + // proxy_ts_btn_clearAllFailedProxy + // + this.proxy_ts_btn_clearAllFailedProxy.Name = "proxy_ts_btn_clearAllFailedProxy"; + this.proxy_ts_btn_clearAllFailedProxy.Size = new System.Drawing.Size(80, 22); + this.proxy_ts_btn_clearAllFailedProxy.Text = "清除无效代理"; + this.proxy_ts_btn_clearAllFailedProxy.Click += new System.EventHandler(this.proxy_ts_btn_clearAllFailedProxy_Click); + // + // proxy_ts_btn_proxy_checkNoCheckProxy + // + this.proxy_ts_btn_proxy_checkNoCheckProxy.Name = "proxy_ts_btn_proxy_checkNoCheckProxy"; + this.proxy_ts_btn_proxy_checkNoCheckProxy.Size = new System.Drawing.Size(92, 22); + this.proxy_ts_btn_proxy_checkNoCheckProxy.Text = "验证未验证代理"; + this.proxy_ts_btn_proxy_checkNoCheckProxy.Click += new System.EventHandler(this.proxy_ts_btn_proxy_checkNoCheckProxy_Click); + // + // groupBox26 + // + this.groupBox26.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupBox26.Controls.Add(this.label40); + this.groupBox26.Controls.Add(this.label41); + this.groupBox26.Controls.Add(this.proxy_btn_importProxy); + this.groupBox26.Controls.Add(this.proxy_btn_addProxy); + this.groupBox26.Controls.Add(this.label44); + this.groupBox26.Controls.Add(this.label43); + this.groupBox26.Controls.Add(this.proxy_txt_addProxyPassword); + this.groupBox26.Controls.Add(this.label42); + this.groupBox26.Controls.Add(this.proxy_txt_addProxyUserName); + this.groupBox26.Controls.Add(this.proxy_txt_addProxyHost); + this.groupBox26.Controls.Add(this.proxy_txt_addProxyPort); + this.groupBox26.Controls.Add(this.proxy_txt_addProxyType); + this.groupBox26.Location = new System.Drawing.Point(6, 15); + this.groupBox26.Name = "groupBox26"; + this.groupBox26.Size = new System.Drawing.Size(808, 57); + this.groupBox26.TabIndex = 6; + this.groupBox26.TabStop = false; + // + // label40 + // + this.label40.AutoSize = true; + this.label40.Location = new System.Drawing.Point(274, 26); + this.label40.Name = "label40"; + this.label40.Size = new System.Drawing.Size(41, 12); + this.label40.TabIndex = 0; + this.label40.Text = "类型:"; + // + // label41 + // + this.label41.AutoSize = true; + this.label41.Location = new System.Drawing.Point(6, 25); + this.label41.Name = "label41"; + this.label41.Size = new System.Drawing.Size(53, 12); + this.label41.TabIndex = 0; + this.label41.Text = "代理IP:"; + // + // proxy_btn_importProxy + // + this.proxy_btn_importProxy.ImageKey = "(无)"; + this.proxy_btn_importProxy.Location = new System.Drawing.Point(737, 21); + this.proxy_btn_importProxy.Name = "proxy_btn_importProxy"; + this.proxy_btn_importProxy.Size = new System.Drawing.Size(65, 23); + this.proxy_btn_importProxy.TabIndex = 5; + this.proxy_btn_importProxy.Text = "导入代理"; + this.proxy_btn_importProxy.UseVisualStyleBackColor = true; + this.proxy_btn_importProxy.Click += new System.EventHandler(this.proxy_btn_importProxy_Click); + // + // proxy_btn_addProxy + // + this.proxy_btn_addProxy.ImageKey = "(无)"; + this.proxy_btn_addProxy.Location = new System.Drawing.Point(664, 21); + this.proxy_btn_addProxy.Name = "proxy_btn_addProxy"; + this.proxy_btn_addProxy.Size = new System.Drawing.Size(65, 23); + this.proxy_btn_addProxy.TabIndex = 5; + this.proxy_btn_addProxy.Text = "添加代理"; + this.proxy_btn_addProxy.UseVisualStyleBackColor = true; + this.proxy_btn_addProxy.Click += new System.EventHandler(this.proxy_btn_addProxy_Click); + // + // label44 + // + this.label44.AutoSize = true; + this.label44.Location = new System.Drawing.Point(545, 26); + this.label44.Name = "label44"; + this.label44.Size = new System.Drawing.Size(41, 12); + this.label44.TabIndex = 0; + this.label44.Text = "密码:"; + // + // label43 + // + this.label43.AutoSize = true; + this.label43.Location = new System.Drawing.Point(415, 26); + this.label43.Name = "label43"; + this.label43.Size = new System.Drawing.Size(53, 12); + this.label43.TabIndex = 0; + this.label43.Text = "用户名:"; + // + // proxy_txt_addProxyPassword + // + this.proxy_txt_addProxyPassword.Location = new System.Drawing.Point(591, 22); + this.proxy_txt_addProxyPassword.Name = "proxy_txt_addProxyPassword"; + this.proxy_txt_addProxyPassword.Size = new System.Drawing.Size(65, 21); + this.proxy_txt_addProxyPassword.TabIndex = 4; + this.proxy_txt_addProxyPassword.TextChanged += new System.EventHandler(this.txt_basic_port_TextChanged); + // + // label42 + // + this.label42.AutoSize = true; + this.label42.Location = new System.Drawing.Point(187, 26); + this.label42.Name = "label42"; + this.label42.Size = new System.Drawing.Size(41, 12); + this.label42.TabIndex = 0; + this.label42.Text = "端口:"; + // + // proxy_txt_addProxyUserName + // + this.proxy_txt_addProxyUserName.Location = new System.Drawing.Point(472, 23); + this.proxy_txt_addProxyUserName.Name = "proxy_txt_addProxyUserName"; + this.proxy_txt_addProxyUserName.Size = new System.Drawing.Size(65, 21); + this.proxy_txt_addProxyUserName.TabIndex = 4; + this.proxy_txt_addProxyUserName.TextChanged += new System.EventHandler(this.txt_basic_port_TextChanged); + // + // proxy_txt_addProxyHost + // + this.proxy_txt_addProxyHost.Location = new System.Drawing.Point(65, 22); + this.proxy_txt_addProxyHost.Name = "proxy_txt_addProxyHost"; + this.proxy_txt_addProxyHost.Size = new System.Drawing.Size(116, 21); + this.proxy_txt_addProxyHost.TabIndex = 4; + this.proxy_txt_addProxyHost.TextChanged += new System.EventHandler(this.txt_basic_port_TextChanged); + // + // proxy_txt_addProxyPort + // + this.proxy_txt_addProxyPort.Location = new System.Drawing.Point(229, 23); + this.proxy_txt_addProxyPort.Name = "proxy_txt_addProxyPort"; + this.proxy_txt_addProxyPort.Size = new System.Drawing.Size(39, 21); + this.proxy_txt_addProxyPort.TabIndex = 4; + this.proxy_txt_addProxyPort.TextChanged += new System.EventHandler(this.txt_basic_port_TextChanged); + // + // proxy_txt_addProxyType + // + this.proxy_txt_addProxyType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.proxy_txt_addProxyType.FormattingEnabled = true; + this.proxy_txt_addProxyType.Items.AddRange(new object[] { + "Socks5", + "HTTP/HTTPS"}); + this.proxy_txt_addProxyType.Location = new System.Drawing.Point(321, 23); + this.proxy_txt_addProxyType.Name = "proxy_txt_addProxyType"; + this.proxy_txt_addProxyType.Size = new System.Drawing.Size(88, 20); + this.proxy_txt_addProxyType.TabIndex = 5; + this.proxy_txt_addProxyType.SelectedIndexChanged += new System.EventHandler(this.cbox_basic_injectType_SelectedIndexChanged); + // + // proxy_lvw_proxyList + // + this.proxy_lvw_proxyList.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.proxy_lvw_proxyList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { + this.col_host, + this.col_port, + this.col_proxyType, + this.col_username, + this.col_password, + this.col_conectIsOK, + this.col_useTime, + this.col_checkTime}); + this.proxy_lvw_proxyList.ContextMenuStrip = this.proxy_cms; + this.proxy_lvw_proxyList.FullRowSelect = true; + this.proxy_lvw_proxyList.Location = new System.Drawing.Point(6, 83); + this.proxy_lvw_proxyList.Name = "proxy_lvw_proxyList"; + this.proxy_lvw_proxyList.Size = new System.Drawing.Size(808, 266); + this.proxy_lvw_proxyList.TabIndex = 0; + this.proxy_lvw_proxyList.UseCompatibleStateImageBehavior = false; + this.proxy_lvw_proxyList.View = System.Windows.Forms.View.Details; + // + // col_host + // + this.col_host.Text = "域名或IP"; + this.col_host.Width = 120; + // + // col_port + // + this.col_port.Text = "代理端口"; + this.col_port.Width = 80; + // + // col_proxyType + // + this.col_proxyType.Text = "代理类型"; + this.col_proxyType.Width = 80; + // + // col_username + // + this.col_username.Text = "代理账号"; + this.col_username.Width = 120; + // + // col_password + // + this.col_password.Text = "代理密码"; + this.col_password.Width = 120; + // + // col_conectIsOK + // + this.col_conectIsOK.Text = "是否可用"; + this.col_conectIsOK.Width = 70; + // + // col_useTime + // + this.col_useTime.Text = "用时[毫秒]"; + this.col_useTime.Width = 80; + // + // col_checkTime + // + this.col_checkTime.Text = "验证时间"; + this.col_checkTime.Width = 130; + // + // proxy_cms + // + this.proxy_cms.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.proxy_tsmi_setCurrentProxy, + this.proxy_checkNoCheckProxy, + this.proxy_checkSelectedProxy, + this.proxy_checkAllProxy, + this.proxy_importProxy, + this.proxy_exportProxy, + this.proxy_delSelectedProxy, + this.proxy_copySelectedProxy, + this.proxy_clearAllProxy, + this.proxy_clearAllFailedProxy}); + this.proxy_cms.Name = "proxy_cms"; + this.proxy_cms.Size = new System.Drawing.Size(161, 224); + // + // proxy_tsmi_setCurrentProxy + // + this.proxy_tsmi_setCurrentProxy.Name = "proxy_tsmi_setCurrentProxy"; + this.proxy_tsmi_setCurrentProxy.Size = new System.Drawing.Size(160, 22); + this.proxy_tsmi_setCurrentProxy.Text = "设置固定代理"; + this.proxy_tsmi_setCurrentProxy.Click += new System.EventHandler(this.proxy_tsmi_setCurrentProxy_Click); + // + // proxy_checkNoCheckProxy + // + this.proxy_checkNoCheckProxy.Name = "proxy_checkNoCheckProxy"; + this.proxy_checkNoCheckProxy.Size = new System.Drawing.Size(160, 22); + this.proxy_checkNoCheckProxy.Text = "验证未验证代理"; + this.proxy_checkNoCheckProxy.Click += new System.EventHandler(this.proxy_checkNoCheckProxy_Click); + // + // proxy_checkSelectedProxy + // + this.proxy_checkSelectedProxy.Name = "proxy_checkSelectedProxy"; + this.proxy_checkSelectedProxy.Size = new System.Drawing.Size(160, 22); + this.proxy_checkSelectedProxy.Text = "验证选中代理"; + this.proxy_checkSelectedProxy.Click += new System.EventHandler(this.proxy_checkSelectedProxy_Click); + // + // proxy_checkAllProxy + // + this.proxy_checkAllProxy.Name = "proxy_checkAllProxy"; + this.proxy_checkAllProxy.Size = new System.Drawing.Size(160, 22); + this.proxy_checkAllProxy.Text = "验证全部代理"; + this.proxy_checkAllProxy.Click += new System.EventHandler(this.proxy_checkAllProxy_Click); + // + // proxy_importProxy + // + this.proxy_importProxy.Name = "proxy_importProxy"; + this.proxy_importProxy.Size = new System.Drawing.Size(160, 22); + this.proxy_importProxy.Text = "导入代理"; + this.proxy_importProxy.Click += new System.EventHandler(this.proxy_importProxy_Click); + // + // proxy_exportProxy + // + this.proxy_exportProxy.Name = "proxy_exportProxy"; + this.proxy_exportProxy.Size = new System.Drawing.Size(160, 22); + this.proxy_exportProxy.Text = "导出代理"; + this.proxy_exportProxy.Click += new System.EventHandler(this.proxy_exportProxy_Click); + // + // proxy_delSelectedProxy + // + this.proxy_delSelectedProxy.Name = "proxy_delSelectedProxy"; + this.proxy_delSelectedProxy.Size = new System.Drawing.Size(160, 22); + this.proxy_delSelectedProxy.Text = "删除此代理"; + this.proxy_delSelectedProxy.Click += new System.EventHandler(this.proxy_delSelectedProxy_Click); + // + // proxy_copySelectedProxy + // + this.proxy_copySelectedProxy.Name = "proxy_copySelectedProxy"; + this.proxy_copySelectedProxy.Size = new System.Drawing.Size(160, 22); + this.proxy_copySelectedProxy.Text = "复制此代理"; + this.proxy_copySelectedProxy.Click += new System.EventHandler(this.proxy_copySelectedProxy_Click); + // + // proxy_clearAllProxy + // + this.proxy_clearAllProxy.Name = "proxy_clearAllProxy"; + this.proxy_clearAllProxy.Size = new System.Drawing.Size(160, 22); + this.proxy_clearAllProxy.Text = "清空代理池"; + this.proxy_clearAllProxy.Click += new System.EventHandler(this.proxy_clearAllProxy_Click); + // + // proxy_clearAllFailedProxy + // + this.proxy_clearAllFailedProxy.Name = "proxy_clearAllFailedProxy"; + this.proxy_clearAllFailedProxy.Size = new System.Drawing.Size(160, 22); + this.proxy_clearAllFailedProxy.Text = "清除无效代理"; + this.proxy_clearAllFailedProxy.Click += new System.EventHandler(this.proxy_clearAllFailedProxy_Click); + // // tab_cmd // this.tab_cmd.Controls.Add(this.cmd_txt_result); @@ -3171,7 +3720,7 @@ this.tab_injectLog.Padding = new System.Windows.Forms.Padding(3); this.tab_injectLog.Size = new System.Drawing.Size(832, 451); this.tab_injectLog.TabIndex = 10; - this.tab_injectLog.Text = "识别注入记录"; + this.tab_injectLog.Text = "注入记录"; this.tab_injectLog.UseVisualStyleBackColor = true; // // lvw_injectLog @@ -3281,7 +3830,8 @@ this.toolStripStatusLabel8, this.status_lbl_all_status, this.toolStripStatusLabel11, - this.lbl_packsCount}); + this.lbl_packsCount, + this.lbl_info}); this.statusStrip1.Location = new System.Drawing.Point(0, 728); this.statusStrip1.Name = "statusStrip1"; this.statusStrip1.Padding = new System.Windows.Forms.Padding(1, 0, 15, 0); @@ -3390,6 +3940,11 @@ this.lbl_packsCount.Size = new System.Drawing.Size(15, 17); this.lbl_packsCount.Text = "0"; // + // lbl_info + // + this.lbl_info.Name = "lbl_info"; + this.lbl_info.Size = new System.Drawing.Size(0, 17); + // // timer_status // this.timer_status.Enabled = true; @@ -3487,6 +4042,16 @@ this.groupBox15.ResumeLayout(false); this.groupBox15.PerformLayout(); this.mytab.ResumeLayout(false); + this.tab_proxy.ResumeLayout(false); + this.groupBox25.ResumeLayout(false); + this.groupBox25.PerformLayout(); + this.groupBox24.ResumeLayout(false); + this.groupBox24.PerformLayout(); + this.toolStrip_proxyList.ResumeLayout(false); + this.toolStrip_proxyList.PerformLayout(); + this.groupBox26.ResumeLayout(false); + this.groupBox26.PerformLayout(); + this.proxy_cms.ResumeLayout(false); this.tab_cmd.ResumeLayout(false); this.tab_cmd.PerformLayout(); this.groupBox8.ResumeLayout(false); @@ -3822,6 +4387,60 @@ private System.Windows.Forms.ColumnHeader data_lvw_ver_val; private System.Windows.Forms.Label label34; private System.Windows.Forms.TextBox txt_inject_unionTemplate; + private System.Windows.Forms.ToolStripStatusLabel lbl_info; + private System.Windows.Forms.TabPage tab_proxy; + private System.Windows.Forms.ToolStripMenuItem data_cms_tsmi_selectAllVers; + private System.Windows.Forms.ToolStripMenuItem data_cms_tsmi_selectReversVers; + private System.Windows.Forms.GroupBox groupBox25; + private System.Windows.Forms.GroupBox groupBox24; + private System.Windows.Forms.ListView proxy_lvw_proxyList; + private System.Windows.Forms.ColumnHeader col_host; + private System.Windows.Forms.ColumnHeader col_port; + private System.Windows.Forms.ColumnHeader col_username; + private System.Windows.Forms.ColumnHeader col_password; + private System.Windows.Forms.ColumnHeader col_conectIsOK; + private System.Windows.Forms.ColumnHeader col_checkTime; + private System.Windows.Forms.ColumnHeader col_useTime; + private System.Windows.Forms.ContextMenuStrip proxy_cms; + private System.Windows.Forms.ToolStripMenuItem proxy_checkSelectedProxy; + private System.Windows.Forms.ToolStripMenuItem proxy_checkAllProxy; + private System.Windows.Forms.ToolStripMenuItem proxy_importProxy; + private System.Windows.Forms.ToolStripMenuItem proxy_exportProxy; + private System.Windows.Forms.ToolStripMenuItem proxy_tsmi_setCurrentProxy; + private System.Windows.Forms.ToolStripMenuItem proxy_delSelectedProxy; + private System.Windows.Forms.ToolStripMenuItem proxy_copySelectedProxy; + private System.Windows.Forms.ToolStripMenuItem proxy_clearAllProxy; + private System.Windows.Forms.ColumnHeader col_proxyType; + private System.Windows.Forms.GroupBox groupBox26; + private System.Windows.Forms.Label label40; + private System.Windows.Forms.Label label41; + private System.Windows.Forms.Button proxy_btn_addProxy; + private System.Windows.Forms.Label label42; + private System.Windows.Forms.TextBox proxy_txt_addProxyHost; + private System.Windows.Forms.TextBox proxy_txt_addProxyPort; + private System.Windows.Forms.ComboBox proxy_txt_addProxyType; + private System.Windows.Forms.Button proxy_btn_importProxy; + private System.Windows.Forms.Label label44; + private System.Windows.Forms.Label label43; + private System.Windows.Forms.TextBox proxy_txt_addProxyPassword; + private System.Windows.Forms.TextBox proxy_txt_addProxyUserName; + private System.Windows.Forms.Label label46; + private System.Windows.Forms.Label label45; + private System.Windows.Forms.Label label39; + private System.Windows.Forms.Label label38; + private System.Windows.Forms.Label label35; + private System.Windows.Forms.Label proxy_lbl_proxyType; + private System.Windows.Forms.Label proxy_lbl_proxy_port; + private System.Windows.Forms.Label proxy_lbl_proxy_password; + private System.Windows.Forms.Label proxy_lbl_proxy_username; + private System.Windows.Forms.Label proxy_lbl_proxy_host; + private System.Windows.Forms.ComboBox proxy_cmb_proxyMode; + private System.Windows.Forms.ToolStripMenuItem proxy_clearAllFailedProxy; + private System.Windows.Forms.ToolStrip toolStrip_proxyList; + private System.Windows.Forms.ToolStripLabel proxy_ts_btn_clearAllFailedProxy; + private System.Windows.Forms.ColumnHeader col_proxy; + private System.Windows.Forms.ToolStripMenuItem proxy_checkNoCheckProxy; + private System.Windows.Forms.ToolStripLabel proxy_ts_btn_proxy_checkNoCheckProxy; } } diff --git a/SuperSQLInjection/Main.cs b/SuperSQLInjection/Main.cs index 9d50e7c..f843825 100644 --- a/SuperSQLInjection/Main.cs +++ b/SuperSQLInjection/Main.cs @@ -19,6 +19,9 @@ using System.Management; using Microsoft.Win32; using System.Drawing; using System.Reflection; +using static System.Windows.Forms.ListView; +using SuperSQLInjection.tools.http; +using System.Net.Sockets; namespace SuperSQLInjection { @@ -55,7 +58,16 @@ namespace SuperSQLInjection public int injectionURLCount = 0;//注入URL数 - + //代理池 + public Dictionary proxy_List = new Dictionary(); + + public int loadProxyList = 0;//代理池未加载完成,1加载完成,加载完成后,才允许人工添加 + + //不放到Config中序列化,防止信息泄露 + //当前设置的代理 + public Proxy proxy = new Proxy(); + public int checkProxyStatus = 0;//验证代理状态,如果是1,表示正在验证,否则表示完成 + private SmartThreadPool stp = new SmartThreadPool(); public void sendRequestAndShowResponse() @@ -104,6 +116,21 @@ namespace SuperSQLInjection private void Main_Shown(object sender, EventArgs e) { + HTTP.initMain(this); + //清空日志 + Thread t = new Thread(Tools.delHTTPLog); + t.Start(); + + //加载代理池 + Thread loadProxyListThread = new Thread(reloadProxyList); + loadProxyList = 0; + loadProxyListThread.Start(); + + //加载注入日志记录 + Thread tt = new Thread(loadInjectLogs); + tt.Start(); + + //初始化配置 this.Text = "超级SQL注入工具 v1.0 正式版 " + version; this.cbox_basic_encoding.SelectedIndex = 0; @@ -114,21 +141,39 @@ namespace SuperSQLInjection this.bypass_cbox_sendHTTPSleepTime.SelectedIndex = 0; this.cbox_bypass_urlencode_count.SelectedIndex = 0; this.cbox_base64Count.SelectedIndex = 0; + this.proxy_txt_addProxyType.SelectedIndex = 0; - HTTP.initMain(this); - //清空日志 - Thread t = new Thread(Tools.delHTTPLog); - t.Start(); + + + //加载当前代理配置 try { - this.config = XML.readConfig("lastConfig.xml"); + this.proxy = (Proxy)XML.readObject(AppDomain.CurrentDomain.BaseDirectory + "/proxy/proxy.xml", proxy); + this.proxy_lbl_proxy_host.Text = this.proxy.host; + this.proxy_lbl_proxy_port.Text = this.proxy.port.ToString(); + this.proxy_lbl_proxyType.Text = this.proxy.proxyType; + this.proxy_lbl_proxy_username.Text = this.proxy.username; + this.proxy_lbl_proxy_password.Text = this.proxy.password; + log("自动加载当前固定代理配置成功!", LogLevel.success); + } + catch (Exception ex) + { + log("自动加载当前固定代理配置失败!", LogLevel.waring); + Tools.SysLog("加载当前固定代理配置失败!" + ex.Message); + } + + //加载配置 + try + { + this.config = XML.readConfig(AppDomain.CurrentDomain.BaseDirectory+"/lastConfig.xml"); reloadConfig(this.config); + this.Invoke(new showLogDelegate(log), "自动加载上次配置成功!", LogLevel.success); } catch (Exception ex) { Tools.SysLog("加载配置发生错误!" + ex.Message); } - this.Invoke(new showLogDelegate(log), "自动加载上次配置成功!",LogLevel.success); + InjectionTools.addErrorCode(); //读取模板 List templates = FileTool.readAllDic("/config/template/"); @@ -140,10 +185,25 @@ namespace SuperSQLInjection { new Thread(checkUpdate).Start(); } - //加载注入日志记录 - Thread tt = new Thread(loadInjectLogs); - tt.Start(); + } + private void reloadProxyList() { + try + { + this.proxy_List = FileTool.ReadProxyList(AppDomain.CurrentDomain.BaseDirectory + "/proxy/proxylist.txt"); + if (this.proxy_List.Count > 0) { + foreach (Proxy proxy in this.proxy_List.Values) + { + this.proxy_lvw_proxyList.Invoke(new DelegateAddItemToProxy(addItemsToProxy_lvw), proxy); + } + } + this.Invoke(new showLogDelegate(log), "自动加载上次代理池配置成功,发现代理:" + this.proxy_List.Count+"个!", LogLevel.success); + loadProxyList = 1; + } + catch (Exception e) { + this.Invoke(new showLogDelegate(log), "自动加载上次代理池配置失败!"+e.Message, LogLevel.waring); + } + } public void loadInjectLogs() { //加载注入日志记录 @@ -154,6 +214,8 @@ namespace SuperSQLInjection this.Invoke(new delegatelogInject(logInjectTolvw), config); } } + + public void HttpDownloadFile(string url, string path) { // 设置参数 @@ -163,17 +225,23 @@ namespace SuperSQLInjection HttpWebResponse response = request.GetResponse() as HttpWebResponse; //直到request.GetResponse()程序才开始向目标网页发送Post请求 Stream responseStream = response.GetResponseStream(); - + long sum = response.ContentLength; //创建本地文件写入流 Stream stream = new FileStream(path, FileMode.Create); - + byte[] bArr = new byte[1024]; int size = responseStream.Read(bArr, 0, (int)bArr.Length); + int csum = 0; + csum += size; while (size > 0) { stream.Write(bArr, 0, size); size = responseStream.Read(bArr, 0, (int)bArr.Length); + csum += size; + int val = (int)(csum*100 / sum); + this.lbl_info.Text = "下载更新文件:" + val + "%"; } + this.lbl_info.Text = "下载更新文件完成!"; stream.Close(); responseStream.Close(); } @@ -230,7 +298,7 @@ namespace SuperSQLInjection return sid; } - public static int version = 20190104; + public static int version = 20190107; public static string versionURL = "http://www.shack2.org/soft/getNewVersion?ENNAME=SSuperSQLInjection&NO=" + URLEncode.UrlEncode(getSid()) + "&VERSION=" + version; //检查更新 public void checkUpdate() @@ -2403,9 +2471,9 @@ namespace SuperSQLInjection return len; } - public delegate void sendHTTPLogDelegate(String index, ServerInfo server, String payload); + public delegate void sendHTTPLogDelegate(String index, ServerInfo server, String payload,String proxy); - public void sendHTTPLog(String index, ServerInfo server, String payload) + public void sendHTTPLog(String index, ServerInfo server, String payload, String proxy) { ListViewItem lvi = new ListViewItem(index); lvi.Tag = index; @@ -2415,6 +2483,7 @@ namespace SuperSQLInjection lvi.SubItems.Add(server.code + ""); lvi.SubItems.Add(server.length + ""); lvi.SubItems.Add(server.sleepTime.ToString()); + lvi.SubItems.Add(proxy); this.log_lvw_httpLog.Items.Add(lvi); } @@ -5950,46 +6019,10 @@ namespace SuperSQLInjection } else { - MessageBox.Show("请在左边点击选择列!"); } } - - private void log_lvw_httpLog_MouseClick(object sender, MouseEventArgs e) - { - if (this.log_lvw_httpLog.SelectedItems.Count > 0) - { - try - { - String tag = this.log_lvw_httpLog.SelectedItems[0].Tag.ToString(); - this.log_txt_request.Text = FileTool.readFileToString(Tools.httpLogPath + tag + "-request.txt"); - String response = FileTool.readFileToString(Tools.httpLogPath + tag + "-response.txt"); - if (!String.IsNullOrEmpty(response)) - { - int index = response.IndexOf("\r\n\r\n"); - - if (index != -1) - { - this.log_txt_response.Text = response; - this.webBro_log.ScriptErrorsSuppressed = true; - this.webBro_log.DocumentText = response.Substring(index, response.Length - index); - } - - - } - else - { - MessageBox.Show("没有读到详细HTTP日志,可能上一次清除记录时已清除!"); - } - } - catch (Exception ee) - { - Tools.SysLog("查看详细HTTP日志,发生异常----" + ee.Message); - } - } - } - private void data_cms_clearLog_Click(object sender, EventArgs e) { @@ -6004,7 +6037,7 @@ namespace SuperSQLInjection { if (autoinject == 0) { - if (config.request.IndexOf("#inject#") != -1) + if (config.request.IndexOf(setInjectStr) != -1) { MessageBox.Show("已经标记好注入,无需识别!"); return; @@ -6063,7 +6096,7 @@ namespace SuperSQLInjection } - String strparam = data.Replace("", "").Replace("", "").Replace("#inject#", ""); + String strparam = data.Replace("", "").Replace("", "").Replace(setInjectStr, ""); //获取原始的页面信息 String request = config.request.Replace(data, strparam); @@ -6121,7 +6154,7 @@ namespace SuperSQLInjection } this.Invoke(new showLogDelegate(log), "报告大侠,正在对参数参数" + param + "进行盲注测试!", LogLevel.info); String newParam = "";//标记注入 - String payload_location = strparam.Replace(param, param + "#inject#"); + String payload_location = strparam.Replace(param, param + ""+ setInjectStr + ""); String payload_request = request.Replace(strparam, payload_location); String currentDB = "UnKnow"; //读取payload @@ -6234,7 +6267,7 @@ namespace SuperSQLInjection } } //用于标记注入的新字符 - newParam = strparam.Replace(param, param + "" + pals[0].Replace(pals[3], "#inject#") + ""); + newParam = strparam.Replace(param, param + "" + pals[0].Replace(pals[3], setInjectStr) + ""); unionStartPayLoad = pals[0].Substring(0, pals[0].IndexOf(pals[3])); if (!String.IsNullOrEmpty(currentDB)) @@ -6329,7 +6362,7 @@ namespace SuperSQLInjection //标记注入 selectInjectType(InjectType.Error); errorInject = true; - newParam = strparam.Replace(param, param + "" + pals[0].Replace(pals[4], "#inject#") + ""); + newParam = strparam.Replace(param, param + "" + pals[0].Replace(pals[4], setInjectStr) + ""); config.testPayload = pals[0]; unionStartPayLoad = pals[0].Substring(0, pals[0].IndexOf(pals[4])).Replace(" or", " and"); this.Invoke(new showLogDelegate(log), "自动标记错误显示注入完成!", LogLevel.info); @@ -6439,7 +6472,7 @@ namespace SuperSQLInjection if (cunionServer.code == 200 && cunionServer.body.IndexOf("1111111111") != -1) { isFind = true; - newParam = strparam.Replace(param, param + "" + payload.Replace("{payload}", "#inject#") + ""); + newParam = strparam.Replace(param, param + "" + payload.Replace("{payload}", setInjectStr) + ""); unionInject = true; selectInjectType(InjectType.Union); this.txt_inject_unionTemplate.Text = tp; @@ -6465,7 +6498,7 @@ namespace SuperSQLInjection if (unionServer.code == 200 && unionServer.body.IndexOf("1111111111") != -1) { isFind = true; - newParam = strparam.Replace(param, param + "" + payload.Replace("{payload}", "#inject#") + ""); + newParam = strparam.Replace(param, param + "" + payload.Replace("{payload}", setInjectStr) + ""); unionInject = true; selectInjectType(InjectType.Union); this.txt_inject_unionColumnsCount.Text = i + ""; @@ -6485,11 +6518,11 @@ namespace SuperSQLInjection if (unionServer.code == 200 && unionServer.body.IndexOf((basecolumn)) != -1) { isFind = true; - newParam = strparam.Replace(param, param + "" + payload.Replace("{payload}", "#inject#") + ""); + newParam = strparam.Replace(param, param + "" + payload.Replace("{payload}", setInjectStr) + ""); if ("Access".Equals(currentDB)) { //%16不能被URL编码 - newParam = strparam.Replace(param, param + "" + payload.Replace("{payload}", "#inject#") + "%16"); + newParam = strparam.Replace(param, param + "" + payload.Replace("{payload}", setInjectStr) + "%16"); } selectInjectType(InjectType.Union); unionInject = true; @@ -6747,7 +6780,9 @@ namespace SuperSQLInjection try { Type type = Type.GetType("SuperSQLInjection.payload." + config.dbType.ToString()); - vers = (List)type.GetField("vers").GetValue(null); + if (type != null) { + vers = (List)type.GetField("vers").GetValue(null); + } } catch (Exception e) { @@ -6807,13 +6842,31 @@ namespace SuperSQLInjection try { - XML.saveConfig("lastConfig.xml", this.config); + XML.saveConfig(AppDomain.CurrentDomain.BaseDirectory+"/lastConfig.xml", this.config); } catch (Exception ex) { Tools.SysLog("保存配置发生错误!" + ex.Message); } + try + { + XML.saveObject(AppDomain.CurrentDomain.BaseDirectory + "/proxy/proxy.xml", proxy); + } + catch (Exception ex) + { + Tools.SysLog("保存代理配置发生错误!" + ex.Message); + } + + try + { + FileTool.SaveProxyList(AppDomain.CurrentDomain.BaseDirectory + "/proxy/proxylist.txt", this.proxy_List.Values); + } + catch (Exception ex) + { + Tools.SysLog("保存代理池发生错误!" + ex.Message); + } + System.Environment.Exit(0); } @@ -7094,7 +7147,10 @@ namespace SuperSQLInjection this.bypass_chk_usebetween.Checked = config.useBetweenByPass; this.bypass_hex.Checked = config.usehex; this.bypass_chk_use_unicode.Checked = config.useUnicode; - + + //proxy + this.proxy_cmb_proxyMode.SelectedIndex = config.proxy_mode; + //替换字符 this.chk_reaplaceBeforURLEncode.Checked = config.reaplaceBeforURLEncode; String[] replaceStrs = Regex.Split(config.replaceStrs, "\\n"); @@ -8954,8 +9010,6 @@ namespace SuperSQLInjection String html = response.Substring(index, response.Length - index); this.webBro_log.DocumentText = html; } - - } else { @@ -9621,22 +9675,11 @@ namespace SuperSQLInjection private void data_dbs_tsmi_selectAllSubNode_Click(object sender, EventArgs e) { - TreeNode tn = this.data_tvw_dbs.SelectedNode; - if (tn != null) - { - tn.Checked = true; - foreach (TreeNode stn in this.data_tvw_dbs.SelectedNode.Nodes) { - if (!stn.Checked){ - stn.Checked = true; - } - } - } - + SelectAllNodes(this.data_tvw_dbs); } - private void data_dbs_tsmi_selectReversSubNode_Click(object sender, EventArgs e) - { - TreeNode tn = this.data_tvw_dbs.SelectedNode; + private void SelectReversNodes(TreeView tvw) { + TreeNode tn = tvw.SelectedNode; if (tn != null) { tn.Checked = true; @@ -9654,6 +9697,60 @@ namespace SuperSQLInjection } } + private void SelectAllNodes(TreeView tvw) { + TreeNode tn = this.data_tvw_dbs.SelectedNode; + if (tn != null) + { + tn.Checked = true; + foreach (TreeNode stn in this.data_tvw_dbs.SelectedNode.Nodes) + { + if (!stn.Checked) + { + stn.Checked = true; + } + } + } + } + + private void SelectReversNodes(ListView lvw) + { + ListViewItemCollection lvl = lvw.Items; + if (lvl != null&& lvl.Count>0) + { + + foreach (ListViewItem lvi in lvl) + { + if (lvi.Checked) + { + lvi.Checked = false; + } + else + { + lvi.Checked = true; + } + } + } + } + + private void SelectAllNodes(ListView lvw) + { + ListViewItemCollection lvl = lvw.Items; + if (lvl != null && lvl.Count > 0) + { + foreach (ListViewItem lvi in lvl) + { + if (!lvi.Checked) + { + lvi.Checked = true; + } + } + } + } + + private void data_dbs_tsmi_selectReversSubNode_Click(object sender, EventArgs e) + { + SelectReversNodes(this.data_tvw_dbs); + } private void tsmi_injectLog_clearAllLog_Click(object sender, EventArgs e) { @@ -9761,5 +9858,403 @@ namespace SuperSQLInjection { config.unionFillTemplate = this.txt_inject_unionTemplate.Text; } + + private void data_cms_tsmi_selectAllVers_Click(object sender, EventArgs e) + { + SelectAllNodes(this.data_lvw_ver); + } + + private void data_cms_tsmi_selectReversVers_Click(object sender, EventArgs e) + { + SelectReversNodes(this.data_lvw_ver); + } + + private void proxy_btn_addProxy_Click(object sender, EventArgs e) + { + if (loadProxyList != 1) { + MessageBox.Show("请稍后,正在加载上一次设置的代理池!"); + return; + } + String host = this.proxy_txt_addProxyHost.Text; + int port = Tools.convertToInt(this.proxy_txt_addProxyPort.Text); + if (!StringTools.CheckIsDomainOrIP(host)) { + MessageBox.Show("代理IP未填写或格式错误!"); + return; + } + if (port <= 0|| port>65535) + { + MessageBox.Show("代理端口未填写或格式错误!"); + return; + } + String key = host + port; + if (proxy_List.ContainsKey(key)) { + MessageBox.Show("代理已经存在,不能重复添加!"); + return; + } + + Proxy proxy = new Proxy(); + proxy.host = host; + proxy.port = port; + proxy.proxyType = this.proxy_txt_addProxyType.Text; + proxy.username = this.proxy_txt_addProxyUserName.Text; + proxy.password = this.proxy_txt_addProxyPassword.Text; + proxy.proxyType = this.proxy_txt_addProxyType.Text; + addItemsToProxy_lvw(proxy); + } + + private delegate void DelegateAddItemToProxy(Proxy proxy); + private void addItemsToProxy_lvw(Proxy proxy){ + + String key = proxy.host + proxy.port; + ListViewItem lvi = new ListViewItem(proxy.host); + lvi.Tag = key; + lvi.SubItems.Add(proxy.port.ToString()); + lvi.SubItems.Add(proxy.proxyType); + lvi.SubItems.Add(proxy.username); + lvi.SubItems.Add(proxy.password); + lvi.SubItems.Add(proxy.isOk); + lvi.SubItems.Add(proxy.useTime.ToString()); + lvi.SubItems.Add(proxy.checkTime); + if ("是".Equals(proxy.isOk)) { + lvi.ForeColor = Color.Green; + } + else if ("否".Equals(proxy.isOk)) + { + lvi.ForeColor = Color.Red; + } + this.proxy_lvw_proxyList.Items.Add(lvi); + if (!proxy_List.ContainsKey(key)) + { + proxy_List.Add(key, proxy); + } + + } + + private void proxy_delSelectedProxy_Click(object sender, EventArgs e) + { + if (this.proxy_lvw_proxyList.SelectedItems.Count > 0) { + foreach (ListViewItem lvi in this.proxy_lvw_proxyList.SelectedItems) { + String key = lvi.Tag.ToString(); + if (this.proxy_List.ContainsKey(key)) + { + this.proxy_List.Remove(key); + } + this.proxy_lvw_proxyList.Items.Remove(lvi); + } + + MessageBox.Show("删除成功!"); + } + } + + private void proxy_tsmi_setCurrentProxy_Click(object sender, EventArgs e) + { + if (this.proxy_lvw_proxyList.SelectedItems.Count > 0) + { + Proxy proxy = new Proxy(); + proxy.host = this.proxy_lvw_proxyList.SelectedItems[0].SubItems[0].Text; + proxy.port = int.Parse(this.proxy_lvw_proxyList.SelectedItems[0].SubItems[1].Text); + proxy.proxyType = this.proxy_lvw_proxyList.SelectedItems[0].SubItems[2].Text; + proxy.username = this.proxy_lvw_proxyList.SelectedItems[0].SubItems[3].Text; + proxy.password = this.proxy_lvw_proxyList.SelectedItems[0].SubItems[4].Text; + proxy.isOk = this.proxy_lvw_proxyList.SelectedItems[0].SubItems[5].Text; + proxy.useTime = Tools.convertToInt(this.proxy_lvw_proxyList.SelectedItems[0].SubItems[6].Text); + if (this.proxy_cmb_proxyMode.SelectedIndex != 2) + { + this.proxy_cmb_proxyMode.SelectedIndex = 2; + } + this.proxy_lbl_proxy_host.Text = proxy.host; + this.proxy_lbl_proxy_port.Text = proxy.port.ToString(); + this.proxy_lbl_proxyType.Text = proxy.proxyType; + this.proxy_lbl_proxy_username.Text = proxy.username; + this.proxy_lbl_proxy_password.Text = proxy.password; + this.proxy = proxy; + MessageBox.Show("选择代理成功!"); + } + } + + private void proxy_cmb_proxyMode_TextChanged(object sender, EventArgs e) + { + config.proxy_mode = this.proxy_cmb_proxyMode.SelectedIndex; + if (config.proxy_mode == 1) + { + if (this.proxy_List.Count <= 0) + { + MessageBox.Show("选择随机代理,但是目前代理池没有代理资源,请添加代理资源,才能生效!"); + } + } + else if (config.proxy_mode == 2) + { + if (String.IsNullOrEmpty(this.proxy.host) || this.proxy.port <= 0) + { + //固定代理 + MessageBox.Show("请在代理池中选择固定代理!"); + } + + } + } + + private void proxy_clearAllProxy_Click(object sender, EventArgs e) + { + this.proxy_List.Clear(); + this.proxy_lvw_proxyList.Items.Clear(); + MessageBox.Show("代理池已经清空!"); + } + + private void proxy_copySelectedProxy_Click(object sender, EventArgs e) + { + if (this.proxy_lvw_proxyList.SelectedItems.Count >0) + { + StringBuilder sb = new StringBuilder(); + + for (int i = 0; i < this.proxy_lvw_proxyList.SelectedItems[0].SubItems.Count; i++) { + sb.Append(this.proxy_lvw_proxyList.SelectedItems[0].SubItems[i].Text+"\t"); + } + if (sb.Length > 1) + { + sb.Remove(sb.Length - 1, 1); + } + Clipboard.SetText(sb.ToString()); + MessageBox.Show("复制成功!"); + } + + } + + + private void loadAddProxyList(Object path) { + + Dictionary list= FileTool.ReadProxyList(path.ToString()); + int i = 0; + if (this.proxy_List.Count > 0) + { + + foreach (String key in list.Keys) + { + if (!this.proxy_List.ContainsKey(key)) { + + Proxy cproxy = null; + bool istrue = list.TryGetValue(key, out cproxy); + if (istrue&&cproxy!=null) { + i++; + this.proxy_lvw_proxyList.Invoke(new DelegateAddItemToProxy(addItemsToProxy_lvw), proxy); + this.proxy_List.Add(cproxy.host+cproxy.port,cproxy); + } + } + } + } + else { + this.proxy_List = list; + } + this.proxy_btn_importProxy.Enabled = true; + this.Invoke(new showLogDelegate(log), "导入代理成功,发现代理:" + i + "个!", LogLevel.success); + + } + + private void proxy_btn_importProxy_Click(object sender, EventArgs e) + { + OpenFileDialog ofd = new OpenFileDialog { Filter = "文本文件(*.txt)|*.txt" }; + if (ofd.ShowDialog() == DialogResult.OK) + { + Thread th = new Thread(new ParameterizedThreadStart(loadAddProxyList)); + this.proxy_btn_importProxy.Enabled = false; + th.Start(ofd.FileName); + + } + } + + private void checkOneProxy(ListViewItem lvi) { + + Proxy proxy = null; + bool isok = this.proxy_List.TryGetValue(lvi.Tag.ToString(), out proxy); + if (proxy != null && isok) + { + bool istrue = false; + if ("Socks5".Equals(proxy.proxyType)) + { + SocketProxy sp = new SocketProxy(); + TcpClient client = sp.creatProxySocket(proxy.host, proxy.port, config.timeOut); + if (client != null) + { + istrue = sp.ConnectProxyServer(config.proxy_check_host, config.proxy_check_port, client, proxy.username, proxy.password, config.timeOut); + proxy.useTime = sp.ConectProxyUseTime; + } + } + else + { + istrue = HttpProxy.checkConnection(config, proxy); + proxy.useTime = HttpProxy.ConectProxyUseTime; + } + proxy.checkTime = DateTime.Now.ToString(); + if (istrue) + { + proxy.isOk = "是"; + lvi.ForeColor = Color.Green; + } + else + { + proxy.isOk = "否"; + lvi.ForeColor = Color.Red; + } + lvi.SubItems[5].Text = proxy.isOk; + lvi.SubItems[6].Text = proxy.useTime.ToString(); + lvi.SubItems[7].Text = proxy.checkTime; + } + } + + private void checkSelectProxy(Object obj) { + this.checkProxyStatus = 1; + SelectedListViewItemCollection list = (SelectedListViewItemCollection)obj; + if (list.Count > 0) + { + foreach (ListViewItem lvi in list) + { + checkOneProxy(lvi); + } + } + this.checkProxyStatus = 0; + } + + private void checkAllProxy(Object obj) + { + this.checkProxyStatus = 1; + ListViewItemCollection list = (ListViewItemCollection)obj; + if (list.Count > 0) + { + foreach (ListViewItem lvi in list) + { + checkOneProxy(lvi); + } + } + this.checkProxyStatus = 0; + } + + private void checkNoCheckProxy(Object obj) + { + this.checkProxyStatus = 1; + ListViewItemCollection list = (ListViewItemCollection)obj; + if (list.Count > 0) + { + foreach (ListViewItem lvi in list) + { + if ("未验证".Equals(lvi.SubItems[5].Text)) { + + checkOneProxy(lvi); + } + } + } + this.checkProxyStatus = 0; + } + + private void proxy_checkSelectedProxy_Click(object sender, EventArgs e) + { + if (this.checkProxyStatus == 0) + { + if (String.IsNullOrEmpty(config.proxy_check_host)||config.proxy_check_port<=0) { + MessageBox.Show("代理验证域名端口设置错误,请在系统设置中更正!"); + return; + } + Thread t = new Thread(new ParameterizedThreadStart(checkSelectProxy)); + t.Start(this.proxy_lvw_proxyList.SelectedItems); + } + else { + MessageBox.Show("上一次验证还未结束,请稍后再试!"); + } + + } + + private void proxy_importProxy_Click(object sender, EventArgs e) + { + OpenFileDialog ofd = new OpenFileDialog { Filter = "文本文件(*.txt)|*.txt" }; + if (ofd.ShowDialog() == DialogResult.OK) + { + Thread th = new Thread(new ParameterizedThreadStart(loadAddProxyList)); + th.Start(ofd.FileName); + } + } + + private void proxy_checkAllProxy_Click(object sender, EventArgs e) + { + if (this.checkProxyStatus == 0) + { + if (String.IsNullOrEmpty(config.proxy_check_host) || config.proxy_check_port <= 0) + { + MessageBox.Show("代理验证域名端口设置错误,请在系统设置中更正!"); + return; + } + Thread t = new Thread(new ParameterizedThreadStart(checkAllProxy)); + t.Start(this.proxy_lvw_proxyList.Items); + } + else + { + MessageBox.Show("上一次验证还未结束,请稍后再试!"); + } + } + private void clearAllFailedProxy() { + + if (this.proxy_lvw_proxyList.Items.Count > 0) + { + foreach (ListViewItem lvi in this.proxy_lvw_proxyList.Items) + { + String isok = lvi.SubItems[5].Text; + String key = lvi.Tag.ToString(); + if ("否".Equals(isok)) + { + if (this.proxy_List.ContainsKey(key)) + { + this.proxy_List.Remove(key); + } + this.proxy_lvw_proxyList.Items.Remove(lvi); + } + } + MessageBox.Show("清除无效代理成功!"); + } + } + private void proxy_clearAllFailedProxy_Click(object sender, EventArgs e) + { + clearAllFailedProxy(); + } + + private void proxy_ts_btn_clearAllFailedProxy_Click(object sender, EventArgs e) + { + clearAllFailedProxy(); + } + + private void proxy_exportProxy_Click(object sender, EventArgs e) + { + SaveFileDialog saveFileDialog = new SaveFileDialog(); + saveFileDialog.Filter = "文本文件|*.txt"; + if (saveFileDialog.ShowDialog() == DialogResult.OK) + { + FileTool.SaveProxyList(saveFileDialog.FileName, this.proxy_List.Values); + MessageBox.Show("导出代理池成功!"); + } + } + + private void checkNoCheckProxy() { + + if (this.checkProxyStatus == 0) + { + if (String.IsNullOrEmpty(config.proxy_check_host) || config.proxy_check_port <= 0) + { + MessageBox.Show("代理验证域名端口设置错误,请在系统设置中更正!"); + return; + } + Thread t = new Thread(new ParameterizedThreadStart(checkNoCheckProxy)); + t.Start(this.proxy_lvw_proxyList.Items); + } + else + { + MessageBox.Show("上一次验证还未结束,请稍后再试!"); + } + } + + private void proxy_checkNoCheckProxy_Click(object sender, EventArgs e) + { + checkNoCheckProxy(); + } + + private void proxy_ts_btn_proxy_checkNoCheckProxy_Click(object sender, EventArgs e) + { + checkNoCheckProxy(); + } } -} \ No newline at end of file +} \ No newline at end of file diff --git a/SuperSQLInjection/Main.resx b/SuperSQLInjection/Main.resx index dc95831..6814ad2 100644 --- a/SuperSQLInjection/Main.resx +++ b/SuperSQLInjection/Main.resx @@ -123,12 +123,119 @@ 182, 17 + + 747, 17 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADc + FQAAAk1TRnQBSQFMAgEBDAEAAUABCAFAAQgBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + AwABQAMAAUADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA + AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 + AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA + AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm + AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM + AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA + ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz + AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ + AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM + AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA + AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA + AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ + AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/ + AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA + AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm + ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ + Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz + AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA + AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM + AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM + ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM + Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA + AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM + AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ + AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz + AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm + AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw + AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8ABQAB8QHv + AbwB8wL0BP8C9AGTAW8BBw0AAf8B9AQAAe0BDgEPAQ4BAAEOAwABDgEAAe0IAAH/AfAB9wHvAbwB8wH/ + AwAB7wHyAfcBvAf/AZMBbwGUAW8MAAHwAg4B7wMAARMB9wHyAfcBvAHwAQcBEQHyAfEB7wETCAAB8gHt + A64B9wHwAf8CAAHxAfcB8QH3AfEFAAGTAW8BFgFvAQcFAAb/AfIBDgFDARQBDgHzAgABEwH3AewBEQHy + AQAB8gH3AZIBBwHvARMHAAHzAu0BbQIUAW0B7QHzAwAB8QHvAfAB7wHxAwABkwFvARYBbwEaBQAC/wHx + Ae8B7AHtAfcB7AERAhQBDgH/AgABEwH3AewBAAHzAewB8wEVAfIB6wERARMGAAH0AfcBrgHtARIB7AES + ARUBEwHxBAAB8QHvAbwB7wHxAQABkwFvARYBbwEaBQAB/wH0AQcB7wHwAfMB8gHwAfcBbQETAQ8BBwMA + AhMBFQEAAQ8B7AEPAQABQwHtAUMBEwUAAf8B7wKuAe0BEgHvAd0BBwHrAbwFAAHxAe8BvAEHAbwBbwHj + AW8BGgYAAf8CBwHwAbQCiwG0AfABBwFtAe8EAAHsCvAB7AQAAf8BBwOuAe0B6gHvAfAB3QGSAe8GAAHx + AQcBbwFFAeMBFgEaBwAB8gHvAfEBigSyAa0B8gHvAfIEAAHtAQAB/wUHAbwCAAHtAwAB/wG8Au0CrgHt + AeoBBwHxAfAC9wH/BgAB8QFGAZQBRgG8CAABBwHxAbQBswWyAbQB8QEHBAAB7QEAAfIB/wP0Af8BvAIA + Ae0DAAHzAfcDtQLtAeoBvAHzAfIB7wHtAf8GAAEHARwCbwEHAu8BBwHwAf8DAAH3AfQGswGyAbMB9AH3 + BAAB7QEAAfIB/wP0Af8BvAIAAe0DAAHzBrUBbQHwAf8B9AG8AewB/wUAAgcBvAHyAbwCBwK8AgcB/wIA + Ae8B9AGzAbkGswH0Ae8EAAHtAQAB8gH/A/QB/wG8AgAB7QMAAfMGtQHrAfIC/wHyAewB9AQAAQcCvAEA + Af8BvAIHAbwB7wHxAQcB8QIAAQcB8gG6AbkB2wHaAtsBuQG6AfIBBwQAAe0BAAHyAf8D9AH/AbwCAAHt + AwAB8wa1AewB7QH3Ae8BvAHsAfQDAAEHArwDAAHwArwB7wHzAQcB8gHwAgAB8wEHAfQBswTbAbMB8wEH + AfMEAAHtAQAB8gX3AewC9AHsAwAB8wIJAgcDtQH3Ae0C7AFtAfMBAAHxAQcC8AQAAfEB8AHvAfMBAAH/ + AfAB8QMAAfEB8AHzAboBtAK6AfMC8QUAAe0BAAHyAesBEwERAm0DAAGSAwAB8wEJAd0CCQG8At0D8wG8 + AfcB8gEAAbwB8wHwBQAB8gG8AfEB7wH/AQAC/wMAAf8B8QEHAfMB9AH/AfMBvAHxAf8FAAHtAQAB/wHz + AfIB8QLyARABAAHrAf8DAAHzA90FGQHzAvQB8QHyAQAB8gHxAfIFAAH/AfEB8AHyAbwB/wcAAfMB8AIH + AfAB8wcAAe0HAAERARMB/wQAAfMBGQHzBfQB8wLxAfIB8wH/CgAB/wHzAvEB/xQAAfcH7QEVAf8FAAH0 + AvEE8AHxAfMB9AH/BgAB/wG0AgABBwgSAQcQ/wESBBUB/wFDASoC/wHvAhUBEhIAAbUEzwEAAeoI/wHq + Af8O1AH/AW0F/wEqAfYCIwP/AW0SAAHPAQAB/wG0AgABbQH/AvQE8wH/AW0B/wHUAtwBGQL0ARkB3AHb + AdoB0wHUAdsB1AH/AW0B/wPzAf8BKgH2AcMBegGmAv8BbQIAAuwEAAPsBAAC7AEAAc8FAAFtAf8B9AXz + Af8BbQH/AdQC3AEZAvQBGQHcAdsB2gHTAdQB2wHUAf8BbQH/A/QC/wEqAXoBswHTAaYB/wEHAgAB7AH/ + BOwB/wHsAf8E7AH/AewHAAHrAf8G8wH/AesB/wHUAhkB9AL/AfQBGQEJA9wBCQHUAf8B6wH/BPQB/wEq + AQkB4gGzAdMBpgL/AQAB7AX/AewB/wHsBf8B7AEAAbsFbAHsAf8G8wH/AewB/w7UAf8B6wH/BPQC/wGs + AQkB4gGzAdMBpgL/AewG/wHsBv8B7AEAAYsFGQHsAf8G8wH/AewB/wHUAtwBGQL0ARkB3AHbAdoB0wHU + AdsB1AH/AesB/wX0Av8BrAEJAeIBswHTAaYB/wHsAf8B7AH/AewB/wHsAf8B7AX/AewBAAGLBRkB7AH/ + BPMD/wHsAf8B1ALcARkC9AEZAdwB2wHaAdMB1AHbAdQB/wHrCf8BrAEJAeIBswEmASAB7AL/AewD/wHs + Bv8B7AEAAZAFGQHtAf8E8wH/Au0B8AH/AdQC3AEZAvQBGQHcAdsB2gHTAdQB2wHUAf8B7Ar/AawBCQH/ + ASYBIAHsAf8B7AP/AewB/wHsBf8B7AEAAZAFGQGSBv8BkgEHAQAB/wHUAhkB9AL/AfQBGQEJA9wBCQHU + Af8B7Av/AawBJgHeASUB7AL/AuwC/wHsBv8B7AEAAbMFGQEHBvcB8AIAAf8O1AH/AewJ/wL0Af8BJQEg + Af8B7AH/AewD/wHsAf8B7AX/AewBAAGzBRkCCQEZAbMGAAH/AdQC3AEZAvQBGQHcAdsB2gHTAdQB2wHU + Af8B7Aj/AbUC6gEHA/8B7AL/AuwC/wHsBv8B7AEAAbkEGQEJAxkBuQQAAc8BAAH/AdQC3AEZAvQBGQHc + AdsB2gHTAdQB2wHUAf8B7Aj/AbUD/wH3AgAC7AT/AewB/wHsBP8C7AEAAbkDGQIJARkCuQEJAf8BtAIA + Ac8BAAH/AdQCGQH0Av8B9AEZAQkD3AEJAdQB/wHsCP8BtQL/AfcFAATsAQAB7AEABOwDAAG5BhkBuQG6 + AQAEzwG1AQAB/w7UAf8B7Qj/AbUB/wH3FAABCQa5AQkCAAH/AbQEABD/Cu0B90gAAvABvAHvApEB7wG8 + AvAHAAEHAXIBTwNJAXIBBwUADv8DAAG8DAABBwIAAbwBBwH3Ae8BswLbAbMC7wEHAbwFAAGYAU8BUASY + AU8BSQEcBAABBwzrAQcCAAHzAQACBwr/AgAB8AG7ArMBkAG6AtsBugGQArMBuwHwAwABmAFPAXgBCAGY + ApcBmAEIAZcBSQEcAwAB6wwHAesFAAP0CP8CAAHwAbQC3AbbAtwBtAHwAgABBwFPAXgBCAaXAQgBlwFJ + AQcCAAHsAbwKDwG8AewCAAHzAQACBwP0B/8CAAG8AbMB3ALbAdwC2wHcAtsB3AGzAbwCAAF4AVYBCAKX + AXgBGwGYA5cBCAFPAXICAAHsAfAKEAHwAewFAAP0AesBDgEQAewBEQP/AQABvAHvAbQD2wGzAroBswPb + AbQB7wG8AQABUAKYAZcBeAP/AZgClwKYAU8CAAHsAfEBEAIRAv8BEQH/AhEBEAHxAewCAAHzAQACBwH0 + AfABAAHwAfQB7QEAA/8BAAEHAbMBugHbAdwBswG8AgABvAGzAdwB2wG6AbMBBwEAAU8BmAGXAXgC/wH0 + Av8BmAKXAZgBSQIAAewB8QERAUMB/wZDAREB8QHsBQAC8wHyAQ4B7AHzAbwBAAH0Av8BAAG7AdsC3AHb + AbQEAAG0AdsC3AHbAbsBAAFVAQgBeAGXAQgB8QGXAQgC/wGYAZcBmAFPAgAB7AHyAREBFQH/AxUB/wIV + AREB8gHsAgAB8wEAAQcB7wLzAQcBEwEOAQ8BAAL0Af8BAAG7AdsD3AG0AbwC8AG8AbQD3AHbAbsBAAFW + ApgFlwEIAf8B8wKYAU8CAAHsAfMBQwIVAv8EFQFDAfMB7AUAA/MBvAHyAfQB7AEQA/QBAAG8AbMC2wHc + AbMBkgIHAZIBswHcAtsBswG8AQABmAGXAQgGlwEIAZcBCAFQAZcCAAHsAfQBQwgUAUMB9AHsAgAB8wEA + AQcB7wLzAewBDwEOAREB7wP0AgABvAG0AdsB4QHcAbMCkAGzAdwB4QHbAbQBvAIAAQgBVgF4AQgGlwEI + AXgBTwEHAgAB7QH/CkMB/wHtBQAB8gfzA/QCAAG8AbMBGQPhAtwD4QEZAbMBvAMAAZgBVgF4AQgBmAJ4 + AZgBCAF4AU8BmAMAAe0M/wHtAgAB8wEAAQcB7wLyBvMC9AMAAbQB3AHiAtsC4QLbAeIB3AG0BQABmAFW + AZcEmAGXAVABmAQAAfAM7QHwBQAE8gfzAwABuwG0AbMBtAHbAuIB2wG0AbMBtAG7BgABCAGYBFYBmAEH + FQAB8wEADP8FAAK8AbMC2wGzArwmAAG8DAABvAYAAbwCuwG8BgABQgFNAT4HAAE+AwABKAMAAUADAAFA + AwABAQEAAQEGAAECFgAD/4IAAQEB/wHzAcABAwH8AQcBAAEBAf8B4QHAAQMB/AEDAQcBwQHwAQABwAED + AfgBAwKDAeABAAHAAQMB8AEDAcEBBwHAAQEBwAEDAeABAwHgAQ8BwAEDAcABAwHAAQMB8AEfAcABAwHQ + ARsBgAEBAfgBPwHAAQMB0AEbAYABAQH4AQEBwAEDAdABGwGAAQEB8AEAAcABAwHQARsBgAEBAeIBAAHA + AQMB0AEbAYABAQHHAQABwAEDAdABAwGAAQEBDwEIAeABBwHQAQMBgAEBAR8BBAHgAQcB0AEDAYABAQEf + AQMB+AEfAd8BxwGAAQEB/wGDAv8BwAEPAYABDwHMBAABAwL/AQQEAAEDAv8BTAQAAQMBPAF5AXwEAAED + AQABAQH8BAABAQEAAQEHAAEBBwABAQcAAQEHAAEBAQABAQUAAQEBAAEDBQABAQEAAT8FAAEBAQABPQMA + AQMBAAEBAQABDQMAAQcBwgGHAQABQQMAAQ8C/wEAAc8DAAEfCP8B4AEHAfABDwGAAQEBwAEAAcABAwHg + AQcBgAEBAYABAAGAAQEBwAEDAYABAQGAAQABgAEBAYABAQGAAQEBgAEAAYABAQGAAQEBgAEBAYADAAGA + AQEBgAEBAYABAAEBAoABAQGAAQEBgAEAAQMBwAGAAQEBgAEBAYADAAGAAQEBgAEBAYADAAGAAQEBgAEB + AYABAAGAAQEBgAEBAYABAQGAAQABgAEBAcABAwGAAQEBgAEAAcABAwHgAQcBgAEBAYABAAHAAQMB8AEP + Av8BgAEAAfABDwT/AcABAAH8AT8L + + 477, 17 17, 55 + + 278, 55 + @@ -186,7 +293,7 @@ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACq - DQAAAk1TRnQBSQFMAgEBBwEAAYgBBwGIAQcBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + DQAAAk1TRnQBSQFMAgEBBwEAAbgBBwG4AQcBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA @@ -247,9 +354,6 @@ AQEEAAGAAQEBgAEBBAAE/wQABP8CAAs= - - 278, 55 - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 @@ -283,104 +387,6 @@ 538, 55 - - 747, 17 - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w - LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 - ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAB8 - FAAAAk1TRnQBSQFMAgEBCwEAARABCAEQAQgBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo - AwABQAMAATADAAEBAQABCAYAAQwYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA - AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 - AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA - AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm - AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM - AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA - ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz - AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ - AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM - AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA - AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA - AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ - AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/ - AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA - AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm - ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ - Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz - AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA - AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM - AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM - ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM - Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA - AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM - AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ - AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz - AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm - AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw - AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wEAAfEB7wG8AfMC9AT/ - AvQBkwFvAQcNAAH/AfQEAAHtAQ4BDwEOAQABDgMAAQ4BAAHtEgAB7wHyAfcBvAf/AZMBbwGUAW8MAAHw - Ag4B7wMAARMB9wHyAfcBvAHwAQcBEQHyAfEB7wETEgAB8QH3AfEB9wHxBQABkwFvARYBbwEHBQAG/wHy - AQ4BQwEUAQ4B8wIAARMB9wHsAREB8gEAAfIB9wGSAQcB7wETEwAB8QHvAfAB7wHxAwABkwFvARYBbwEa - BQAC/wHxAe8B7AHtAfcB7AERAhQBDgH/AgABEwH3AewBAAHzAewB8wEVAfIB6wERARMUAAHxAe8BvAHv - AfEBAAGTAW8BFgFvARoFAAH/AfQBBwHvAfAB8wHyAfAB9wFtARMBDwEHAwACEwEVAQABDwHsAQ8BAAFD - Ae0BQwETFQAB8QHvAbwBBwG8AW8B4wFvARoGAAH/AgcB8AG0AosBtAHwAQcBbQHvBAAB7ArwAewWAAHx - AQcBbwFFAeMBFgEaBwAB8gHvAfEBigSyAa0B8gHvAfIEAAHtAQAB/wUHAbwCAAHtFwAB8QFGAZQBRgG8 - CAABBwHxAbQBswWyAbQB8QEHBAAB7QEAAfIB/wP0Af8BvAIAAe0XAAEHARwCbwEHAu8BBwHwAf8DAAH3 - AfQGswGyAbMB9AH3BAAB7QEAAfIB/wP0Af8BvAIAAe0WAAIHAbwB8gG8AgcCvAIHAf8CAAHvAfQBswG5 - BrMB9AHvBAAB7QEAAfIB/wP0Af8BvAIAAe0VAAEHArwBAAH/AbwCBwG8Ae8B8QEHAfECAAEHAfIBugG5 - AdsB2gLbAbkBugHyAQcEAAHtAQAB8gH/A/QB/wG8AgAB7RQAAQcCvAMAAfACvAHvAfMBBwHyAfACAAHz - AQcB9AGzBNsBswHzAQcB8wQAAe0BAAHyBfcB7AL0AewSAAHxAQcC8AQAAfEB8AHvAfMBAAH/AfAB8QMA - AfEB8AHzAboBtAK6AfMC8QUAAe0BAAHyAesBEwERAm0DAAGSEgABvAHzAfAFAAHyAbwB8QHvAf8BAAL/ - AwAB/wHxAQcB8wH0Af8B8wG8AfEB/wUAAe0BAAH/AfMB8gHxAvIBEAEAAesB/xIAAfIB8QHyBQAB/wHx - AfAB8gG8Af8HAAHzAfACBwHwAfMHAAHtBwABEQETAf8cAAH/AfMC8QH/FAAB9wftARUB/xYAAf8BtAIA - AQcIEgEHEP8BEgQVAf8BQwEqAv8B7wIVARISAAG1BM8BAAHqCP8B6gH/DtQB/wFtBf8BKgH2AiMD/wFt - EgABzwEAAf8BtAIAAW0B/wL0BPMB/wFtAf8B1ALcARkC9AEZAdwB2wHaAdMB1AHbAdQB/wFtAf8D8wH/ - ASoB9gHDAXoBpgL/AW0CAALsBAAD7AQAAuwBAAHPBQABbQH/AfQF8wH/AW0B/wHUAtwBGQL0ARkB3AHb - AdoB0wHUAdsB1AH/AW0B/wP0Av8BKgF6AbMB0wGmAf8BBwIAAewB/wTsAf8B7AH/BOwB/wHsBwAB6wH/ - BvMB/wHrAf8B1AIZAfQC/wH0ARkBCQPcAQkB1AH/AesB/wT0Af8BKgEJAeIBswHTAaYC/wEAAewF/wHs - Af8B7AX/AewBAAG7BWwB7AH/BvMB/wHsAf8O1AH/AesB/wT0Av8BrAEJAeIBswHTAaYC/wHsBv8B7Ab/ - AewBAAGLBRkB7AH/BvMB/wHsAf8B1ALcARkC9AEZAdwB2wHaAdMB1AHbAdQB/wHrAf8F9AL/AawBCQHi - AbMB0wGmAf8B7AH/AewB/wHsAf8B7AH/AewF/wHsAQABiwUZAewB/wTzA/8B7AH/AdQC3AEZAvQBGQHc - AdsB2gHTAdQB2wHUAf8B6wn/AawBCQHiAbMBJgEgAewC/wHsA/8B7Ab/AewBAAGQBRkB7QH/BPMB/wLt - AfAB/wHUAtwBGQL0ARkB3AHbAdoB0wHUAdsB1AH/AewK/wGsAQkB/wEmASAB7AH/AewD/wHsAf8B7AX/ - AewBAAGQBRkBkgb/AZIBBwEAAf8B1AIZAfQC/wH0ARkBCQPcAQkB1AH/AewL/wGsASYB3gElAewC/wLs - Av8B7Ab/AewBAAGzBRkBBwb3AfACAAH/DtQB/wHsCf8C9AH/ASUBIAH/AewB/wHsA/8B7AH/AewF/wHs - AQABswUZAgkBGQGzBgAB/wHUAtwBGQL0ARkB3AHbAdoB0wHUAdsB1AH/AewI/wG1AuoBBwP/AewC/wLs - Av8B7Ab/AewBAAG5BBkBCQMZAbkEAAHPAQAB/wHUAtwBGQL0ARkB3AHbAdoB0wHUAdsB1AH/AewI/wG1 - A/8B9wIAAuwE/wHsAf8B7AT/AuwBAAG5AxkCCQEZArkBCQH/AbQCAAHPAQAB/wHUAhkB9AL/AfQBGQEJ - A9wBCQHUAf8B7Aj/AbUC/wH3BQAE7AEAAewBAATsAwABuQYZAbkBugEABM8BtQEAAf8O1AH/Ae0I/wG1 - Af8B9xQAAQkGuQEJAgAB/wG0BAAQ/wrtAfdIAALwAbwB7wKRAe8BvALwBwABBwFyAU8DSQFyAQcFAA7/ - AwABvAwAAQcCAAG8AQcB9wHvAbMC2wGzAu8BBwG8BQABmAFPAVAEmAFPAUkBHAQAAQcM6wEHAgAB8wEA - AgcK/wIAAfABuwKzAZABugLbAboBkAKzAbsB8AMAAZgBTwF4AQgBmAKXAZgBCAGXAUkBHAMAAesMBwHr - BQAD9Aj/AgAB8AG0AtwG2wLcAbQB8AIAAQcBTwF4AQgGlwEIAZcBSQEHAgAB7AG8Cg8BvAHsAgAB8wEA - AgcD9Af/AgABvAGzAdwC2wHcAtsB3ALbAdwBswG8AgABeAFWAQgClwF4ARsBmAOXAQgBTwFyAgAB7AHw - ChAB8AHsBQAD9AHrAQ4BEAHsARED/wEAAbwB7wG0A9sBswK6AbMD2wG0Ae8BvAEAAVACmAGXAXgD/wGY - ApcCmAFPAgAB7AHxARACEQL/AREB/wIRARAB8QHsAgAB8wEAAgcB9AHwAQAB8AH0Ae0BAAP/AQABBwGz - AboB2wHcAbMBvAIAAbwBswHcAdsBugGzAQcBAAFPAZgBlwF4Av8B9AL/AZgClwGYAUkCAAHsAfEBEQFD - Af8GQwERAfEB7AUAAvMB8gEOAewB8wG8AQAB9AL/AQABuwHbAtwB2wG0BAABtAHbAtwB2wG7AQABVQEI - AXgBlwEIAfEBlwEIAv8BmAGXAZgBTwIAAewB8gERARUB/wMVAf8CFQERAfIB7AIAAfMBAAEHAe8C8wEH - ARMBDgEPAQAC9AH/AQABuwHbA9wBtAG8AvABvAG0A9wB2wG7AQABVgKYBZcBCAH/AfMCmAFPAgAB7AHz - AUMCFQL/BBUBQwHzAewFAAPzAbwB8gH0AewBEAP0AQABvAGzAtsB3AGzAZICBwGSAbMB3ALbAbMBvAEA - AZgBlwEIBpcBCAGXAQgBUAGXAgAB7AH0AUMIFAFDAfQB7AIAAfMBAAEHAe8C8wHsAQ8BDgERAe8D9AIA - AbwBtAHbAeEB3AGzApABswHcAeEB2wG0AbwCAAEIAVYBeAEIBpcBCAF4AU8BBwIAAe0B/wpDAf8B7QUA - AfIH8wP0AgABvAGzARkD4QLcA+EBGQGzAbwDAAGYAVYBeAEIAZgCeAGYAQgBeAFPAZgDAAHtDP8B7QIA - AfMBAAEHAe8C8gbzAvQDAAG0AdwB4gLbAuEC2wHiAdwBtAUAAZgBVgGXBJgBlwFQAZgEAAHwDO0B8AUA - BPIH8wMAAbsBtAGzAbQB2wLiAdsBtAGzAbQBuwYAAQgBmARWAZgBBxUAAfMBAAz/BQACvAGzAtsBswK8 - JgABvAwAAbwGAAG8ArsBvAYAAUIBTQE+BwABPgMAASgDAAFAAwABMAMAAQEBAAEBBQABgAEBFgAD/wIA - AQEB/wHzAcABAwMAAQEB/wHhAcABAwIAAQcBwQHwAQABwAEDAgACgwHgAQABwAEDAgABwQEHAcABAQHA - AQMCAAHgAQ8BwAEDAcABAwIAAfABHwHAAQMB0AEbAgAB+AE/AcABAwHQARsCAAH4AQEBwAEDAdABGwIA - AfABAAHAAQMB0AEbAgAB4gEAAcABAwHQARsCAAHHAQABwAEDAdABAwIAAQ8BCAHgAQcB0AEDAgABHwEE - AeABBwHQAQMCAAEfAQMB+AEfAd8BxwIAAf8BgwL/AcABDwIAAcwEAAEDAv8BBAQAAQMC/wFMBAABAwE8 - AXkBfAQAAQMBAAEBAfwEAAEBAQABAQcAAQEHAAEBBwABAQcAAQEBAAEBBQABAQEAAQMFAAEBAQABPwUA - AQEBAAE9AwABAwEAAQEBAAENAwABBwHCAYcBAAFBAwABDwL/AQABzwMAAR8I/wHgAQcB8AEPAYABAQHA - AQABwAEDAeABBwGAAQEBgAEAAYABAQHAAQMBgAEBAYABAAGAAQEBgAEBAYABAQGAAQABgAEBAYABAQGA - AQEBgAMAAYABAQGAAQEBgAEAAQECgAEBAYABAQGAAQABAwHAAYABAQGAAQEBgAMAAYABAQGAAQEBgAMA - AYABAQGAAQEBgAEAAYABAQGAAQEBgAEBAYABAAGAAQEBwAEDAYABAQGAAQABwAEDAeABBwGAAQEBgAEA - AcABAwHwAQ8C/wGAAQAB8AEPBP8BwAEAAfwBPws= - - 138, 55 @@ -396,6 +402,12 @@ Connection: close Pragma: no-cache Cache-Control: no-cache,no-store + + 1253, 55 + + + 1139, 55 + 1204, 17 @@ -418,7 +430,7 @@ Cache-Control: no-cache,no-store 973, 55 - 110 + 100 diff --git a/SuperSQLInjection/ProgressBar.Designer.cs b/SuperSQLInjection/ProgressBar.Designer.cs deleted file mode 100644 index 3eca654..0000000 --- a/SuperSQLInjection/ProgressBar.Designer.cs +++ /dev/null @@ -1,46 +0,0 @@ -namespace SuperSQLInjection -{ - partial class ProgressBar - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - this.SuspendLayout(); - // - // ProgressBar - // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(487, 146); - this.Name = "ProgressBar"; - this.Text = "ProgressBar"; - this.ResumeLayout(false); - - } - - #endregion - } -} \ No newline at end of file diff --git a/SuperSQLInjection/ProgressBar.cs b/SuperSQLInjection/ProgressBar.cs deleted file mode 100644 index 365dd06..0000000 --- a/SuperSQLInjection/ProgressBar.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Windows.Forms; - -namespace SuperSQLInjection -{ - public partial class ProgressBar : Form - { - public ProgressBar() - { - InitializeComponent(); - } - } -} diff --git a/SuperSQLInjection/ProgressBar.resx b/SuperSQLInjection/ProgressBar.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SuperSQLInjection/ProgressBar.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SuperSQLInjection/Seting.Designer.cs b/SuperSQLInjection/Seting.Designer.cs index 1a9577d..81fa157 100644 --- a/SuperSQLInjection/Seting.Designer.cs +++ b/SuperSQLInjection/Seting.Designer.cs @@ -30,22 +30,30 @@ { this.groupBox1 = new System.Windows.Forms.GroupBox(); this.chk_redirectDoGet = new System.Windows.Forms.CheckBox(); + this.label3 = new System.Windows.Forms.Label(); + this.cmb_unionFill = new System.Windows.Forms.ComboBox(); this.lbl_maxColumnsCount = new System.Windows.Forms.Label(); - this.cob_maxClolumnsCount = new System.Windows.Forms.ComboBox(); + this.cmb_maxClolumnsCount = new System.Windows.Forms.ComboBox(); this.chk_isAutoSaveConfig = new System.Windows.Forms.CheckBox(); this.chk_autoCheckUpdate = new System.Windows.Forms.CheckBox(); this.chk_mysqlMuStr = new System.Windows.Forms.CheckBox(); this.chk_openHTTPLog = new System.Windows.Forms.CheckBox(); this.chk_openInfoLog = new System.Windows.Forms.CheckBox(); this.label1 = new System.Windows.Forms.Label(); - this.cob_oneDomainMaxSpiderCount = new System.Windows.Forms.ComboBox(); - this.cob_oneDomainMaxScanCount = new System.Windows.Forms.ComboBox(); + this.cmb_oneDomainMaxSpiderCount = new System.Windows.Forms.ComboBox(); + this.cmb_oneDomainMaxScanCount = new System.Windows.Forms.ComboBox(); this.label2 = new System.Windows.Forms.Label(); this.groupBox2 = new System.Windows.Forms.GroupBox(); - this.cmb_unionFill = new System.Windows.Forms.ComboBox(); - this.label3 = new System.Windows.Forms.Label(); + this.groupBox3 = new System.Windows.Forms.GroupBox(); + this.label5 = new System.Windows.Forms.Label(); + this.txt_proxy_host = new System.Windows.Forms.TextBox(); + this.label4 = new System.Windows.Forms.Label(); + this.txt_proxy_port = new System.Windows.Forms.TextBox(); + this.label6 = new System.Windows.Forms.Label(); + this.txt_proxy_keys = new System.Windows.Forms.TextBox(); this.groupBox1.SuspendLayout(); this.groupBox2.SuspendLayout(); + this.groupBox3.SuspendLayout(); this.SuspendLayout(); // // groupBox1 @@ -54,7 +62,7 @@ this.groupBox1.Controls.Add(this.label3); this.groupBox1.Controls.Add(this.cmb_unionFill); this.groupBox1.Controls.Add(this.lbl_maxColumnsCount); - this.groupBox1.Controls.Add(this.cob_maxClolumnsCount); + this.groupBox1.Controls.Add(this.cmb_maxClolumnsCount); this.groupBox1.Controls.Add(this.chk_isAutoSaveConfig); this.groupBox1.Controls.Add(this.chk_autoCheckUpdate); this.groupBox1.Controls.Add(this.chk_mysqlMuStr); @@ -78,6 +86,27 @@ this.chk_redirectDoGet.UseVisualStyleBackColor = true; this.chk_redirectDoGet.CheckedChanged += new System.EventHandler(this.chk_redirectDoGet_CheckedChanged); // + // label3 + // + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(274, 132); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(71, 12); + this.label3.TabIndex = 6; + this.label3.Text = "Union填充:"; + // + // cmb_unionFill + // + this.cmb_unionFill.FormattingEnabled = true; + this.cmb_unionFill.Items.AddRange(new object[] { + "1", + "null"}); + this.cmb_unionFill.Location = new System.Drawing.Point(351, 129); + this.cmb_unionFill.Name = "cmb_unionFill"; + this.cmb_unionFill.Size = new System.Drawing.Size(70, 20); + this.cmb_unionFill.TabIndex = 5; + this.cmb_unionFill.SelectedValueChanged += new System.EventHandler(this.cmb_unionFill_SelectedValueChanged); + // // lbl_maxColumnsCount // this.lbl_maxColumnsCount.AutoSize = true; @@ -87,10 +116,10 @@ this.lbl_maxColumnsCount.TabIndex = 6; this.lbl_maxColumnsCount.Text = "最大列数:"; // - // cob_maxClolumnsCount + // cmb_maxClolumnsCount // - this.cob_maxClolumnsCount.FormattingEnabled = true; - this.cob_maxClolumnsCount.Items.AddRange(new object[] { + this.cmb_maxClolumnsCount.FormattingEnabled = true; + this.cmb_maxClolumnsCount.Items.AddRange(new object[] { "5", "10", "15", @@ -105,11 +134,11 @@ "100", "150", "200"}); - this.cob_maxClolumnsCount.Location = new System.Drawing.Point(88, 86); - this.cob_maxClolumnsCount.Name = "cob_maxClolumnsCount"; - this.cob_maxClolumnsCount.Size = new System.Drawing.Size(70, 20); - this.cob_maxClolumnsCount.TabIndex = 5; - this.cob_maxClolumnsCount.SelectedValueChanged += new System.EventHandler(this.cob_maxClolumnsCount_SelectedValueChanged); + this.cmb_maxClolumnsCount.Location = new System.Drawing.Point(88, 86); + this.cmb_maxClolumnsCount.Name = "cmb_maxClolumnsCount"; + this.cmb_maxClolumnsCount.Size = new System.Drawing.Size(70, 20); + this.cmb_maxClolumnsCount.TabIndex = 5; + this.cmb_maxClolumnsCount.SelectedValueChanged += new System.EventHandler(this.cob_maxClolumnsCount_SelectedValueChanged); // // chk_isAutoSaveConfig // @@ -175,10 +204,10 @@ this.label1.TabIndex = 8; this.label1.Text = "单域名最大爬行数:"; // - // cob_oneDomainMaxSpiderCount + // cmb_oneDomainMaxSpiderCount // - this.cob_oneDomainMaxSpiderCount.FormattingEnabled = true; - this.cob_oneDomainMaxSpiderCount.Items.AddRange(new object[] { + this.cmb_oneDomainMaxSpiderCount.FormattingEnabled = true; + this.cmb_oneDomainMaxSpiderCount.Items.AddRange(new object[] { "3", "5", "10", @@ -187,26 +216,26 @@ "30", "40", "50"}); - this.cob_oneDomainMaxSpiderCount.Location = new System.Drawing.Point(136, 31); - this.cob_oneDomainMaxSpiderCount.Name = "cob_oneDomainMaxSpiderCount"; - this.cob_oneDomainMaxSpiderCount.Size = new System.Drawing.Size(70, 20); - this.cob_oneDomainMaxSpiderCount.TabIndex = 7; - this.cob_oneDomainMaxSpiderCount.SelectedValueChanged += new System.EventHandler(this.cob_oneDomainMaxSpiderCount_SelectedValueChanged); + this.cmb_oneDomainMaxSpiderCount.Location = new System.Drawing.Point(136, 31); + this.cmb_oneDomainMaxSpiderCount.Name = "cmb_oneDomainMaxSpiderCount"; + this.cmb_oneDomainMaxSpiderCount.Size = new System.Drawing.Size(70, 20); + this.cmb_oneDomainMaxSpiderCount.TabIndex = 7; + this.cmb_oneDomainMaxSpiderCount.SelectedValueChanged += new System.EventHandler(this.cob_oneDomainMaxSpiderCount_SelectedValueChanged); // - // cob_oneDomainMaxScanCount + // cmb_oneDomainMaxScanCount // - this.cob_oneDomainMaxScanCount.FormattingEnabled = true; - this.cob_oneDomainMaxScanCount.Items.AddRange(new object[] { + this.cmb_oneDomainMaxScanCount.FormattingEnabled = true; + this.cmb_oneDomainMaxScanCount.Items.AddRange(new object[] { "3", "5", "10", "15", "20"}); - this.cob_oneDomainMaxScanCount.Location = new System.Drawing.Point(393, 31); - this.cob_oneDomainMaxScanCount.Name = "cob_oneDomainMaxScanCount"; - this.cob_oneDomainMaxScanCount.Size = new System.Drawing.Size(70, 20); - this.cob_oneDomainMaxScanCount.TabIndex = 7; - this.cob_oneDomainMaxScanCount.SelectedValueChanged += new System.EventHandler(this.cob_oneDomainMaxScanCount_SelectedValueChanged); + this.cmb_oneDomainMaxScanCount.Location = new System.Drawing.Point(393, 31); + this.cmb_oneDomainMaxScanCount.Name = "cmb_oneDomainMaxScanCount"; + this.cmb_oneDomainMaxScanCount.Size = new System.Drawing.Size(70, 20); + this.cmb_oneDomainMaxScanCount.TabIndex = 7; + this.cmb_oneDomainMaxScanCount.SelectedValueChanged += new System.EventHandler(this.cob_oneDomainMaxScanCount_SelectedValueChanged); // // label2 // @@ -221,8 +250,8 @@ // this.groupBox2.Controls.Add(this.label2); this.groupBox2.Controls.Add(this.label1); - this.groupBox2.Controls.Add(this.cob_oneDomainMaxScanCount); - this.groupBox2.Controls.Add(this.cob_oneDomainMaxSpiderCount); + this.groupBox2.Controls.Add(this.cmb_oneDomainMaxScanCount); + this.groupBox2.Controls.Add(this.cmb_oneDomainMaxSpiderCount); this.groupBox2.Location = new System.Drawing.Point(12, 204); this.groupBox2.Name = "groupBox2"; this.groupBox2.Size = new System.Drawing.Size(487, 75); @@ -230,32 +259,78 @@ this.groupBox2.TabStop = false; this.groupBox2.Text = "批量注入设置"; // - // cmb_unionFill + // groupBox3 // - this.cmb_unionFill.FormattingEnabled = true; - this.cmb_unionFill.Items.AddRange(new object[] { - "1", - "null"}); - this.cmb_unionFill.Location = new System.Drawing.Point(351, 129); - this.cmb_unionFill.Name = "cmb_unionFill"; - this.cmb_unionFill.Size = new System.Drawing.Size(70, 20); - this.cmb_unionFill.TabIndex = 5; - this.cmb_unionFill.SelectedValueChanged += new System.EventHandler(this.cmb_unionFill_SelectedValueChanged); + this.groupBox3.Controls.Add(this.txt_proxy_port); + this.groupBox3.Controls.Add(this.txt_proxy_keys); + this.groupBox3.Controls.Add(this.txt_proxy_host); + this.groupBox3.Controls.Add(this.label4); + this.groupBox3.Controls.Add(this.label6); + this.groupBox3.Controls.Add(this.label5); + this.groupBox3.Location = new System.Drawing.Point(12, 285); + this.groupBox3.Name = "groupBox3"; + this.groupBox3.Size = new System.Drawing.Size(487, 75); + this.groupBox3.TabIndex = 9; + this.groupBox3.TabStop = false; + this.groupBox3.Text = "代理验证设置"; // - // label3 + // label5 // - this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(274, 132); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(71, 12); - this.label3.TabIndex = 6; - this.label3.Text = "Union填充:"; + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(17, 34); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(65, 12); + this.label5.TabIndex = 8; + this.label5.Text = "验证域名:"; + // + // txt_proxy_host + // + this.txt_proxy_host.Location = new System.Drawing.Point(88, 30); + this.txt_proxy_host.Name = "txt_proxy_host"; + this.txt_proxy_host.Size = new System.Drawing.Size(96, 21); + this.txt_proxy_host.TabIndex = 9; + this.txt_proxy_host.TextChanged += new System.EventHandler(this.txt_proxy_host_TextChanged); + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(190, 34); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(41, 12); + this.label4.TabIndex = 8; + this.label4.Text = "端口:"; + // + // txt_proxy_port + // + this.txt_proxy_port.Location = new System.Drawing.Point(237, 30); + this.txt_proxy_port.Name = "txt_proxy_port"; + this.txt_proxy_port.Size = new System.Drawing.Size(38, 21); + this.txt_proxy_port.TabIndex = 9; + this.txt_proxy_port.TextChanged += new System.EventHandler(this.txt_proxy_port_TextChanged); + // + // label6 + // + this.label6.AutoSize = true; + this.label6.Location = new System.Drawing.Point(281, 34); + this.label6.Name = "label6"; + this.label6.Size = new System.Drawing.Size(53, 12); + this.label6.TabIndex = 8; + this.label6.Text = "关键词:"; + // + // txt_proxy_keys + // + this.txt_proxy_keys.Location = new System.Drawing.Point(340, 30); + this.txt_proxy_keys.Name = "txt_proxy_keys"; + this.txt_proxy_keys.Size = new System.Drawing.Size(123, 21); + this.txt_proxy_keys.TabIndex = 9; + this.txt_proxy_keys.TextChanged += new System.EventHandler(this.txt_proxy_keys_TextChanged); // // Seting // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(519, 300); + this.ClientSize = new System.Drawing.Size(513, 379); + this.Controls.Add(this.groupBox3); this.Controls.Add(this.groupBox2); this.Controls.Add(this.groupBox1); this.Name = "Seting"; @@ -266,6 +341,8 @@ this.groupBox1.PerformLayout(); this.groupBox2.ResumeLayout(false); this.groupBox2.PerformLayout(); + this.groupBox3.ResumeLayout(false); + this.groupBox3.PerformLayout(); this.ResumeLayout(false); } @@ -279,14 +356,21 @@ private System.Windows.Forms.CheckBox chk_autoCheckUpdate; private System.Windows.Forms.CheckBox chk_isAutoSaveConfig; private System.Windows.Forms.Label lbl_maxColumnsCount; - private System.Windows.Forms.ComboBox cob_maxClolumnsCount; + private System.Windows.Forms.ComboBox cmb_maxClolumnsCount; private System.Windows.Forms.Label label1; - private System.Windows.Forms.ComboBox cob_oneDomainMaxSpiderCount; - private System.Windows.Forms.ComboBox cob_oneDomainMaxScanCount; + private System.Windows.Forms.ComboBox cmb_oneDomainMaxSpiderCount; + private System.Windows.Forms.ComboBox cmb_oneDomainMaxScanCount; private System.Windows.Forms.Label label2; private System.Windows.Forms.GroupBox groupBox2; private System.Windows.Forms.CheckBox chk_redirectDoGet; private System.Windows.Forms.Label label3; private System.Windows.Forms.ComboBox cmb_unionFill; + private System.Windows.Forms.GroupBox groupBox3; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.TextBox txt_proxy_port; + private System.Windows.Forms.TextBox txt_proxy_host; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.TextBox txt_proxy_keys; + private System.Windows.Forms.Label label6; } } \ No newline at end of file diff --git a/SuperSQLInjection/Seting.cs b/SuperSQLInjection/Seting.cs index d37b2d6..13e026e 100644 --- a/SuperSQLInjection/Seting.cs +++ b/SuperSQLInjection/Seting.cs @@ -5,6 +5,7 @@ using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; +using tools; namespace SuperSQLInjection { @@ -52,27 +53,29 @@ namespace SuperSQLInjection this.chk_mysqlMuStr.Checked = main.config.isMuStr; this.chk_autoCheckUpdate.Checked = main.config.isAutoCheckUpdate; this.chk_isAutoSaveConfig.Checked = main.config.isSavaConfigWhenClose; - this.cob_maxClolumnsCount.Text = main.config.maxClolumns.ToString(); - this.cob_oneDomainMaxSpiderCount.Text = main.config.maxSpiderCount.ToString(); - this.cob_oneDomainMaxScanCount.Text = main.config.maxScanCount.ToString(); + this.cmb_maxClolumnsCount.Text = main.config.maxClolumns.ToString(); + this.cmb_oneDomainMaxSpiderCount.Text = main.config.maxSpiderCount.ToString(); + this.cmb_oneDomainMaxScanCount.Text = main.config.maxScanCount.ToString(); this.chk_redirectDoGet.Checked=main.config.redirectDoGet; this.cmb_unionFill.Text = main.config.unionFill; - + this.txt_proxy_host.Text = main.config.proxy_check_host; + this.txt_proxy_port.Text = main.config.proxy_check_port.ToString(); + this.txt_proxy_keys.Text = main.config.proxy_check_Keys; } private void cob_maxClolumnsCount_SelectedValueChanged(object sender, EventArgs e) { - main.config.maxClolumns = int.Parse(this.cob_maxClolumnsCount.Text); + main.config.maxClolumns = int.Parse(this.cmb_maxClolumnsCount.Text); } private void cob_oneDomainMaxSpiderCount_SelectedValueChanged(object sender, EventArgs e) { - main.config.maxSpiderCount = int.Parse(this.cob_oneDomainMaxSpiderCount.Text); + main.config.maxSpiderCount = int.Parse(this.cmb_oneDomainMaxSpiderCount.Text); } private void cob_oneDomainMaxScanCount_SelectedValueChanged(object sender, EventArgs e) { - main.config.maxScanCount = int.Parse(this.cob_oneDomainMaxScanCount.Text); + main.config.maxScanCount = int.Parse(this.cmb_oneDomainMaxScanCount.Text); } private void chk_redirectDoGet_CheckedChanged(object sender, EventArgs e) @@ -84,5 +87,20 @@ namespace SuperSQLInjection { main.config.unionFill = this.cmb_unionFill.Text; } + + private void txt_proxy_host_TextChanged(object sender, EventArgs e) + { + main.config.proxy_check_host = this.txt_proxy_host.Text; + } + + private void txt_proxy_port_TextChanged(object sender, EventArgs e) + { + main.config.proxy_check_port = Tools.convertToInt(this.txt_proxy_port.Text); + } + + private void txt_proxy_keys_TextChanged(object sender, EventArgs e) + { + main.config.proxy_check_Keys = this.txt_proxy_keys.Text; + } } } diff --git a/SuperSQLInjection/SuperSQLInjection.csproj b/SuperSQLInjection/SuperSQLInjection.csproj index 6d030e0..56b3462 100644 --- a/SuperSQLInjection/SuperSQLInjection.csproj +++ b/SuperSQLInjection/SuperSQLInjection.csproj @@ -127,6 +127,7 @@ Main.cs + @@ -151,12 +152,6 @@ - - Form - - - ProgressBar.cs - @@ -177,6 +172,8 @@ + + @@ -209,6 +206,7 @@ + @@ -231,9 +229,6 @@ Main.cs - - ProgressBar.cs - ResXFileCodeGenerator Resources.Designer.cs diff --git a/SuperSQLInjection/model/Config.cs b/SuperSQLInjection/model/Config.cs index 8b70f7e..b1bdc57 100644 --- a/SuperSQLInjection/model/Config.cs +++ b/SuperSQLInjection/model/Config.cs @@ -33,7 +33,7 @@ namespace SuperSQLInjection.model public Boolean useCode = false; public int columnsCount = 0; - public String unionFillTemplate = ""; + public String unionFillTemplate = "";//DB2填充模板 public Boolean sencondInject = false;//二次注入 public int showColumn = 0; @@ -80,5 +80,11 @@ namespace SuperSQLInjection.model public int linkCount = 1; public int maxSpiderCount=10; public int maxScanCount = 10; + + //proxy + public int proxy_mode = 0;//0关闭代理,1随机代理,2固定代理 + public String proxy_check_host = "www.baidu.com"; + public int proxy_check_port = 80; + public String proxy_check_Keys = "百度一下,你就知道"; } } diff --git a/SuperSQLInjection/model/Proxy.cs b/SuperSQLInjection/model/Proxy.cs new file mode 100644 index 0000000..654aad9 --- /dev/null +++ b/SuperSQLInjection/model/Proxy.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Collections; + +namespace SuperSQLInjection.model +{ + [Serializable] + public class Proxy + { + public Proxy() { + + } + public String host = ""; + public int port = 0; + public String proxyType = "";//socks5,或HTTP/HTTPS + public String username = "";//代理账户 + public String password = "";//代理密码 + public String isOk ="未验证";//未验证,是,否 + public int useTime = 0;//连接使用时间 + public String checkTime = "";//验证时间 + } +} diff --git a/SuperSQLInjection/payload/Access.cs b/SuperSQLInjection/payload/Access.cs index b97bb4b..09bb992 100644 --- a/SuperSQLInjection/payload/Access.cs +++ b/SuperSQLInjection/payload/Access.cs @@ -6,6 +6,7 @@ namespace SuperSQLInjection.payload { class Access { + public static List vers = null; //获取数据条数 public static String data_count = "(select count(*) from {table})"; diff --git a/SuperSQLInjection/payload/PostgreSQL.cs b/SuperSQLInjection/payload/PostgreSQL.cs index fcd6adf..49763d8 100644 --- a/SuperSQLInjection/payload/PostgreSQL.cs +++ b/SuperSQLInjection/payload/PostgreSQL.cs @@ -8,7 +8,7 @@ namespace SuperSQLInjection.payload class PostgreSQL { //加载对应配置(需要读取的环境变量) - public static String path = "config/vers/db2.txt"; + public static String path = "config/vers/postgresql.txt"; public static List vers = FileTool.readFileToList(path); public static String char_length = "(char_length({data}))"; diff --git a/SuperSQLInjection/tools/StringTools.cs b/SuperSQLInjection/tools/StringTools.cs new file mode 100644 index 0000000..ab0d075 --- /dev/null +++ b/SuperSQLInjection/tools/StringTools.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Text.RegularExpressions; + +namespace SuperSQLInjection.tools +{ + class StringTools + { + + public static bool CheckIsIP(String ipStr) { + return Regex.IsMatch(ipStr, @"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}"); + } + + public static bool CheckIsDomain(String ipStr) + { + return Regex.IsMatch(ipStr, "[\\w\\-\\.]{1,100}[a-zA-Z]{1,8}"); + } + + public static bool IsNumber(String ipStr) + { + return Regex.IsMatch(ipStr, @"[\d]{1,5}"); + } + + public static bool CheckIsDomainOrIP(String str) + { + return (CheckIsDomain(str)|| CheckIsIP(str)); + } + } +} diff --git a/SuperSQLInjection/tools/XML.cs b/SuperSQLInjection/tools/XML.cs index 4b2b78b..30b9a54 100644 --- a/SuperSQLInjection/tools/XML.cs +++ b/SuperSQLInjection/tools/XML.cs @@ -42,6 +42,32 @@ namespace SuperSQLInjection.tools } } + public static void saveObject(String fileName, Object obj) + { + Stream fStream = null; + try + { + fStream = new FileStream(fileName, FileMode.Create, FileAccess.ReadWrite); + //创建XML序列化器,需要指定对象的类型 + XmlSerializer xmlFormat = new XmlSerializer(obj.GetType()); + xmlFormat.Serialize(fStream, obj); + + } + catch (Exception e) + { + + throw e; + } + finally + { + if (fStream != null) + { + fStream.Close(); + } + + } + } + public static Config readConfig(String configPath) { Stream fStream = null; @@ -67,6 +93,33 @@ namespace SuperSQLInjection.tools } } + public static Object readObject(String configPath,Object obj) + { + Stream fStream = null; + try + { + XmlSerializer xml = new XmlSerializer(obj.GetType()); + //创建XML序列化器,需要指定对象的类型 + fStream = new FileStream(configPath, FileMode.Open, FileAccess.ReadWrite); + XmlTextReader reader = new XmlTextReader(fStream); + reader.Normalization = false; + return xml.Deserialize(reader); + } + catch (Exception e) + { + throw e; + } + finally + { + if (fStream != null) + { + fStream.Close(); + } + } + } + + + public static void saveDBS(String fileName, DataBase dbs) { Stream fStream = null; diff --git a/SuperSQLInjection/tools/file/FileTool.cs b/SuperSQLInjection/tools/file/FileTool.cs index 4218c80..aad73e5 100644 --- a/SuperSQLInjection/tools/file/FileTool.cs +++ b/SuperSQLInjection/tools/file/FileTool.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Text; using System.IO; +using SuperSQLInjection.model; namespace tools { @@ -189,11 +190,6 @@ namespace tools sw = new StreamWriter(fs_dir); sw.WriteLine(log); - - sw.Close(); - - fs_dir.Close(); - } catch (Exception e) { @@ -213,5 +209,103 @@ namespace tools } } + /// + /// 注意:vals为空或null会清空代理 + /// + /// + /// + public static void SaveProxyList(String path, Dictionary.ValueCollection vals) + { + + FileStream fs_dir = null; + StreamWriter sw = null; + try + { + if (vals != null && vals.Count > 0) + { + fs_dir = new FileStream(path, FileMode.Create, FileAccess.Write); + sw = new StreamWriter(fs_dir, Encoding.UTF8); + foreach(Proxy proxy in vals) + { + String line = proxy.host + "\t" + proxy.port + "\t" + proxy.proxyType + "\t" + proxy.username + "\t" + proxy.password + "\t" + proxy.isOk + "\t" + proxy.useTime + "\t" + proxy.checkTime; + sw.WriteLine(line); + } + } + else { + //如果为空,则删除代理 + File.Delete(path); + } + } + catch (Exception e) + { + Tools.SysLog("保存代理池发生异常!" + e.Message); + } + finally + { + if (sw != null) + { + sw.Close(); + } + if (fs_dir != null) + { + fs_dir.Close(); + } + } + + } + + public static Dictionary ReadProxyList(String path) + { + + Dictionary list = new Dictionary(); + FileStream fs_dir = null; + StreamReader reader = null; + try + { + fs_dir = new FileStream(path, FileMode.Open, FileAccess.Read); + + reader = new StreamReader(fs_dir); + + String lineStr; + + while ((lineStr = reader.ReadLine()) != null) + { + if (!lineStr.Equals("")) + { + String[] strs = lineStr.Split('\t'); + if (strs.Length == 8) { + Proxy proxy = new Proxy(); + proxy.host = strs[0]; + proxy.port= Tools.convertToInt(strs[1]); + proxy.proxyType= strs[2]; + proxy.username = strs[3]; + proxy.password = strs[4]; + proxy.isOk = strs[5]; + proxy.useTime = Tools.convertToInt(strs[6]); + proxy.checkTime = strs[7]; + list.Add(proxy.host + proxy.port, proxy); + } + } + } + } + catch (Exception e) + { + Tools.SysLog("ReadProxyList异常:"+e.Message); + } + finally + { + if (reader != null) + { + reader.Close(); + } + if (fs_dir != null) + { + fs_dir.Close(); + } + } + return list; + } + + } } diff --git a/SuperSQLInjection/tools/http/HTTP.cs b/SuperSQLInjection/tools/http/HTTP.cs index 1179634..f634d59 100644 --- a/SuperSQLInjection/tools/http/HTTP.cs +++ b/SuperSQLInjection/tools/http/HTTP.cs @@ -15,6 +15,8 @@ using SuperSQLInjection.bypass; using SuperSQLInjection.tools.http; using System.Net; using SuperSQLInjection.model; +using System.Collections.Generic; +using System.Collections; namespace SuperSQLInjection.tools { @@ -36,6 +38,8 @@ namespace SuperSQLInjection.tools public static Main main = null; public static long index = 0; + public const String Socks5ProxyType = "Socks5"; + public static String getTemplate = "GET /mysql.jsp?id=1 HTTP/1.1\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240\r\nAccept-Encoding: gzip, deflate\r\nHost: 127.0.0.1:8090\r\nConnection: Close\r\nCookie: JSESSIONID=2F6D5F1AC8C376FF0AB48A08282A6CED"; public static String postTemplate = "POST /search/index.htm HTTP/1.1\r\nReferer: http://www.shack2.org/\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240\r\nContent-Type: application/x-www-form-urlencoded\r\nAccept-Encoding: gzip, deflate\r\nContent-Length: 5\r\nHost: www.shack2.org\r\nConnection: Keep-Alive\r\nPragma: no-cache\r\nCookie: CNZZDATA4159773=cnzz_eid%3D217492251-1446476958-%26ntime%3D1447834260; bdshare_firstime=1446476958863\r\n\r\nkey=s"; public static void initMain(Main m) @@ -265,6 +269,7 @@ namespace SuperSQLInjection.tools ServerInfo server = new ServerInfo(); TcpClient clientSocket = null; int sum = 0; + Proxy cproxy = null;//当前使用代理 Boolean isupdateEncoding = false; try { @@ -276,8 +281,53 @@ namespace SuperSQLInjection.tools //编码处理 server.request = request; TimeOutSocket tos = new TimeOutSocket(); - clientSocket = tos.Connect(host, port, timeout); + if (main.config.proxy_mode == 1 || main.config.proxy_mode == 2) + { + if (main.config.proxy_mode == 1) + { + //随机代理 + cproxy = getRandProxy(); + } + else + { + cproxy = main.proxy; + } + //为空,没有代理资源 + if (cproxy == null) + { + //不使用代理 + clientSocket = tos.Connect(host, port, timeout); + } + else { + if (Socks5ProxyType.Equals(cproxy.proxyType)) + { + SocketProxy sp = new SocketProxy(); + bool isok = false; + clientSocket = sp.creatProxySocket(cproxy.host, cproxy.port, timeout); + if (clientSocket != null) + { + isok = sp.ConnectProxyServer(host, port, clientSocket, cproxy.username, cproxy.password, timeout); + } + if (!isok) + { + throw new Exception("代理连接失败!"); + } + tos.useTime = sp.ConectProxyUseTime; + } + else + { + //直接替换IP和端口即可 + clientSocket = tos.Connect(cproxy.host, cproxy.port, timeout); + } + } + } + else + { + //不使用代理 + clientSocket = tos.Connect(host, port, timeout); + } + if (sw.ElapsedMilliseconds > timeout) { return server; @@ -505,7 +555,11 @@ namespace SuperSQLInjection.tools { server.sleepTime = main.config.sendHTTPSleepTime; Tools.sysHTTPLog(index, server); - main.Invoke(new Main.sendHTTPLogDelegate(main.sendHTTPLog), index, server, payload); + String proxyInfo = ""; + if (cproxy != null) { + proxyInfo = cproxy.host + ":" + cproxy.port; + } + main.Invoke(new Main.sendHTTPLogDelegate(main.sendHTTPLog), index, server, payload, proxyInfo); } if (main.config.sendHTTPSleepTime > 0) { @@ -515,7 +569,41 @@ namespace SuperSQLInjection.tools return server; } + + private static Random rd = new Random(); + private static Proxy getRandProxy() { + //复制一个,如果有未验证或验证失败的去掉。 + Dictionary ok_porxyList = new Dictionary(main.proxy_List); + while (ok_porxyList.Count>0) { + + int rand = rd.Next(0,ok_porxyList.Count); + lock (ok_porxyList) + { + int i = 0; + + foreach (Proxy proxy in ok_porxyList.Values) + { + if (i == rand) + { + if ("是".Equals(proxy.isOk)) + { + return proxy; + } + else + { + ok_porxyList.Remove(proxy.host+ proxy.port); + break; + } + } + + i++; + } + + } + } + return null; + } private static void getBody(ref ServerInfo server, ref byte[] responseBody, ref int sum, ref Encoding encod, ref String index) { if (server.headers.ContainsKey(Content_Encoding)) @@ -543,6 +631,9 @@ namespace SuperSQLInjection.tools { return true; } + + + private static ServerInfo sendHTTPSRequest(int count, String host, int port, String payload, String request, int timeout, String encoding, Boolean foward_302,Boolean redirectDoGet) { Interlocked.Increment(ref HTTP.index); @@ -552,7 +643,7 @@ namespace SuperSQLInjection.tools ServerInfo server = new ServerInfo(); Boolean isupdateEncoding = false; int sum = 0; - + Proxy cproxy = null;//当前使用代理 TcpClient clientSocket = null; ; try @@ -564,9 +655,55 @@ namespace SuperSQLInjection.tools //编码处理 request = StringReplace.strReplaceCenter(main.config, request, main.replaceList); - TimeOutSocket tos = new TimeOutSocket(); - clientSocket = tos.Connect(host, port, timeout); + if (main.config.proxy_mode == 1 || main.config.proxy_mode == 2) + { + if (main.config.proxy_mode == 1) + { + //随机代理 + cproxy = getRandProxy(); + } + else + { + cproxy = main.proxy; + } + //为空,没有代理资源 + if (cproxy == null) + { + //不使用代理 + clientSocket = tos.Connect(host, port, timeout); + } + else + { + if (Socks5ProxyType.Equals(cproxy.proxyType)) + { + SocketProxy sp = new SocketProxy(); + bool isok = false; + clientSocket = sp.creatProxySocket(cproxy.host, cproxy.port, timeout); + if (clientSocket != null) + { + isok = sp.ConnectProxyServer(host, port, clientSocket, cproxy.username, cproxy.password, timeout); + } + if (!isok) + { + throw new Exception("代理连接失败!"); + } + tos.useTime = sp.ConectProxyUseTime; + } + else + { + //直接替换IP和端口即可 + clientSocket = tos.Connect(cproxy.host, cproxy.port, timeout); + } + } + } + + else + { + //不使用代理 + clientSocket = tos.Connect(host, port, timeout); + } + if (sw.ElapsedMilliseconds >= timeout) { return server; @@ -808,7 +945,12 @@ namespace SuperSQLInjection.tools { server.sleepTime = main.config.sendHTTPSleepTime; Tools.sysHTTPLog(index, server); - main.Invoke(new Main.sendHTTPLogDelegate(main.sendHTTPLog), index, server, payload); + String proxyInfo = ""; + if (cproxy != null) + { + proxyInfo = cproxy.host + ":" + cproxy.port; + } + main.Invoke(new Main.sendHTTPLogDelegate(main.sendHTTPLog), index, server, payload, proxyInfo); } if (main.config.sendHTTPSleepTime > 0) { diff --git a/SuperSQLInjection/tools/http/HttpProxy.cs b/SuperSQLInjection/tools/http/HttpProxy.cs new file mode 100644 index 0000000..07d0c63 --- /dev/null +++ b/SuperSQLInjection/tools/http/HttpProxy.cs @@ -0,0 +1,33 @@ +using Amib.Threading.Internal; +using model; +using SuperSQLInjection.model; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net; +using System.Net.Sockets; +using System.Text; +using tools; + +namespace SuperSQLInjection.tools.http +{ + class HttpProxy + { + private static String request = "GET http://{host}:{port}/ HTTP/1.1\r\nHost: {host}:{port}\r\nConnection: close\r\nUser-Agent: Mozilla/5.0\r\nAccept: */*\r\nAccept-Encoding: gzip, deflate\r\n\r\n"; + public static int ConectProxyUseTime = 0; + public static bool checkConnection(Config config,Proxy proxy) { + String crequest = request.Replace("{host}", config.proxy_check_host).Replace("{port}", config.proxy_check_port.ToString()); + ServerInfo server=HTTP.sendRequestRetry(false,config.reTry,proxy.host, proxy.port, "", request, config.timeOut, config.encoding, true, false); + + if (!String.IsNullOrEmpty(server.body)&& server.body.IndexOf(config.proxy_check_Keys)!=-1) + { + ConectProxyUseTime = (int)server.runTime; + return true; + } + else { + return false; + } + } + + } +} diff --git a/SuperSQLInjection/tools/http/SocketProxy.cs b/SuperSQLInjection/tools/http/SocketProxy.cs new file mode 100644 index 0000000..82d7bed --- /dev/null +++ b/SuperSQLInjection/tools/http/SocketProxy.cs @@ -0,0 +1,161 @@ +using Amib.Threading.Internal; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net; +using System.Net.Sockets; +using System.Text; +using tools; + +namespace SuperSQLInjection.tools.http +{ + class SocketProxy + { + + private static byte[] s5_hello = new Byte[] { 5, 1, 0 }; + public int CreatProxyUseTime = 0; + public int ConectProxyUseTime = 0; + private Stopwatch sw = new Stopwatch(); + public TcpClient creatProxySocket(string host, int port,int timeout) { + try + { + TimeOutSocket ts = new TimeOutSocket(); + TcpClient cilent=ts.Connect(host, port, timeout); + TcpClient client = new TcpClient(); + client.Connect(host, port); + CreatProxyUseTime = ts.useTime; + if (client.Connected) + { + return client; + } + else { + client.Close(); + } + + } + catch (Exception e) { + Tools.SysLog("creatProxySocket异常:" + e.Message); + } + return null; + } + + public byte[] GetLoginByte(String username,String password) { + + byte[] bUser = Encoding.Default.GetBytes(username); + byte[] bPass = Encoding.Default.GetBytes(password); + + int len = 3 + bUser.Length + bPass.Length; + + byte[] data = new Byte[len]; + data[0] = 5; + data[1] = (byte)bUser.Length; + Array.Copy(bUser, 0, data, 2, bUser.Length); + data[2 + bUser.Length] = (byte)bPass.Length; + Array.Copy(bPass, 0, data, 3 + bUser.Length, bPass.Length); + return data; + } + + public byte[] GetConectTargetByte(String hsot, int port) + { + byte[] data = new byte[10]; + data[0] = 5; + data[1] = 1; + data[2] = 0; + data[3] = 1; + + IPAddress ipAdd = Dns.GetHostAddresses(hsot)[0]; + string strIp = ipAdd.ToString(); + string[] strAryTemp = strIp.Split(new char[] { '.' }); + data[4] = Convert.ToByte(strAryTemp[0]); + data[5] = Convert.ToByte(strAryTemp[1]); + data[6] = Convert.ToByte(strAryTemp[2]); + data[7] = Convert.ToByte(strAryTemp[3]); + + data[8] = (byte)(port / 256); + data[9] = (byte)(port % 256); + return data; + } + + /// + /// 测试连接代理服务器 + /// + /// + /// + /// + /// + public bool ConnectProxyServer(string host, int port, TcpClient sProxyServer,String username,String password,int timeout) + { + try + { + sw.Start(); + //构造Socks5代理服务器第一连接头(无用户名密码) + byte[] bySock5Receive = new byte[10]; + int readCount = 0; + sProxyServer.ReceiveTimeout = (timeout * 1000) - CreatProxyUseTime; + if (String.IsNullOrEmpty(username) && String.IsNullOrEmpty(password)) + { + sProxyServer.Client.Send(s5_hello, s5_hello.Length, SocketFlags.None); + } + else + { + byte[] login = GetLoginByte(username, password); + sProxyServer.Client.Send(login, login.Length, SocketFlags.None); + } + readCount = sProxyServer.Client.Receive(bySock5Receive, bySock5Receive.Length, SocketFlags.None); + if (readCount < 2) + { + sProxyServer.Close(); + throw new Exception("不能获得代理服务器正确响应。"); + } + + else if (bySock5Receive[0] != 5 || (bySock5Receive[1] != 0 && bySock5Receive[1] != 2)) + { + sProxyServer.Close(); + throw new Exception("代理服务其返回的响应错误。"); + } + else + { + //用户验证   + if (bySock5Receive[1] == 2) + { + if (String.IsNullOrEmpty(username) && String.IsNullOrEmpty(password)) + { + throw new Exception("代理服务器需要进行身份确认,您未设置代理账号和密码。"); + } + } + + if (bySock5Receive[1] == 0) + { + byte[] data = GetConectTargetByte(host, port); + sProxyServer.Client.Send(data, data.Length, SocketFlags.None); + byte[] readData = new byte[100]; + readCount = sProxyServer.Client.Receive(readData, readData.Length, SocketFlags.None); + + if (readCount >= 2 && bySock5Receive[0] == 5 && bySock5Receive[1] == 0) + { + return true; + } + else + { + sProxyServer.Close(); + //利用Socks5代理连接目标出错。 + return false; + } + } + + } + } + catch (Exception e) + { + sProxyServer.Close(); + Tools.SysLog("Socks5代理发生异常!" + e.Message); + } + finally { + sw.Stop(); + ConectProxyUseTime = (int)sw.ElapsedMilliseconds; + sw.Reset(); + } + return false; + } + } +} diff --git a/SuperSQLInjection/tools/http/TimeOutSocket.cs b/SuperSQLInjection/tools/http/TimeOutSocket.cs index cf29be5..a4496cb 100644 --- a/SuperSQLInjection/tools/http/TimeOutSocket.cs +++ b/SuperSQLInjection/tools/http/TimeOutSocket.cs @@ -24,8 +24,7 @@ namespace SuperSQLInjection.tools.http TcpClient tcpclient = new TcpClient(); tcpclient.BeginConnect(host, port,new AsyncCallback(CallBackMethod), tcpclient); - - + if (TimeoutObject.WaitOne(timeoutMSec, false)) { if (IsConnectionSuccessful) diff --git a/update.txt b/update.txt index 3b202b7..f9f34ec 100644 --- a/update.txt +++ b/update.txt @@ -1,4 +1,8 @@ -20190104 V1.0 正式版--- +20190107 V1.0 正式版--- +修复PostgreSQL环境变量文件名称配置错误,导致无法正确加载环境变量配置。 +新增优化代理功能,可在代理中心设置Socks5/HTTSP/HTTPS代理,可以固定单个代理,也可能从代理次中随机选择。 + +20190104 V1.0 正式版--- 修复SQLServer盲注,由于表名替换错误,导致列获取不成功的问题。 优化配置文件。 新增支持SQLite数据库的注入,支持盲注和Union方式,暂不支持显错模式,SQLite支持3以上版本,如果是3以下版本,由于不支持部分函数,可能无法获取数据。