Skip to content

Commit 52aaddc

Browse files
shack2shack2
authored andcommitted
update20191212
update20191212
1 parent ffd31a9 commit 52aaddc

10 files changed

Lines changed: 341 additions & 112 deletions

File tree

SuperSQLInjection/Main.Designer.cs

Lines changed: 104 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

SuperSQLInjection/Main.cs

Lines changed: 58 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ private void addDBSToItems()
150150

151151
private void Main_Shown(object sender, EventArgs e)
152152
{
153-
HTTP.initMain(this);
153+
154154
//添加支持注入的数据库列表
155155
addDBSToItems();
156156
//清空日志
@@ -209,7 +209,7 @@ private void Main_Shown(object sender, EventArgs e)
209209
{
210210
Tools.SysLog("加载配置发生错误!" + ex.Message);
211211
}
212-
212+
HTTP.initMain(this);
213213
InjectionTools.addErrorCode();
214214
//读取模板
215215
List<String> templates = FileTool.readAllDic("/config/template/");
@@ -286,7 +286,7 @@ public void HttpDownloadFile(string url, string path)
286286
responseStream.Close();
287287
}
288288

289-
public static int version = 20190905;
289+
public static int version = 20191212;
290290
public static string versionURL = "http://www.shack2.org/soft/getNewVersion?ENNAME=SSuperSQLInjection&NO=" + URLEncode.UrlEncode(Tools.getSystemSid()) + "&VERSION=" + version;
291291
//检查更新
292292
public void checkUpdate()
@@ -1465,7 +1465,7 @@ public void addItemToListViewBySQLServerXMLData(String xmldata, List<String> col
14651465

14661466
public void addItemToListViewByColumns(String colvs)
14671467
{
1468-
addItemToListViewByColumns(colvs, "\\$\\$\\$");
1468+
addItemToListViewByColumns(colvs, Comm.COLUMNS_REG_SPLIT_STR);
14691469
}
14701470

14711471
public void addItemToListViewByColumnsInformix(String colvs)
@@ -5781,7 +5781,7 @@ public void getDataValueByUnionByMySQL(Object opam)
57815781
String result = getOneDataByUnionOrError(MySQL.union_value.Replace("{data}", datas_value_payload));
57825782

57835783
this.txt_log.Invoke(new showLogDelegate(log), "报告大侠,获取到第" + (gp.limit + 1) + "行数据", LogLevel.info);
5784-
String[] datas = Regex.Split(result, "\\$\\$\\$");
5784+
String[] datas = Regex.Split(result, Comm.COLUMNS_REG_SPLIT_STR);
57855785
addItemToListView(datas);
57865786

57875787
}
@@ -6007,7 +6007,7 @@ public void getDataValueByErrorByMySQL(Object opam)
60076007

60086008
result = Tools.unHex(result, "UTF-8");
60096009

6010-
String[] items = Regex.Split(result, "\\$\\$\\$");
6010+
String[] items = Regex.Split(result, Comm.COLUMNS_REG_SPLIT_STR);
60116011
ListViewItem lvi = null;
60126012
foreach (String item in items)
60136013
{
@@ -8193,9 +8193,16 @@ public void reloadConfig(Config config)
81938193
//二次注入
81948194
this.txt_sencond_request.Text = config.sencondRequest;
81958195

8196+
//加载重试发包key
8197+
if (config.retryKey != null) {
8198+
String[] keys = config.retryKey.Split(',');
8199+
foreach(String key in keys)
8200+
{
8201+
this.lbx_retry_sendKey.Items.Add(key);
8202+
}
8203+
}
81968204

81978205
//file
8198-
81998206
this.cbox_file_readFileEncoding.Text = config.readFileEncoding;
82008207

82018208
//cmd
@@ -8563,7 +8570,7 @@ public void readOrWriteFile()
85638570
if (!String.IsNullOrEmpty(this.file_txt_result.Text))
85648571
{
85658572
String payload = SQLServer.witeFileByFileSystemObject.Replace("{path}", Tools.strToHex(path, "GB2312")).Replace("{data}", Tools.strToHex(this.file_txt_result.Text, "GB2312"));
8566-
if (config.keyType.Equals(KeyType.Time))
8573+
if (config.keyType.Equals(KeyType.Time) && config.injectType.Equals(InjectType.Blind))
85678574
{
85688575
payload = payload.Replace(" 1=1;", ";");
85698576
}
@@ -8582,7 +8589,7 @@ public void readOrWriteFile()
85828589
if (!String.IsNullOrEmpty(this.file_txt_result.Text))
85838590
{
85848591
String payload = SQLServer.witeFileBySP_MakeWebTask.Replace("{path}", Tools.strToHex(path, "GB2312")).Replace("{data}", Tools.strToHex(this.file_txt_result.Text, "GB2312"));
8585-
if (config.keyType.Equals(KeyType.Time))
8592+
if (config.keyType.Equals(KeyType.Time) && config.injectType.Equals(InjectType.Blind))
85868593
{
85878594
payload = payload.Replace(" 1=1;", ";");
85888595
}
@@ -8605,7 +8612,7 @@ public void readOrWriteFile()
86058612
String dropWriteFileBackUpTableAndDropDB = SQLServer.dropWriteFileBackUpTableAndDropDB;
86068613
String createWriteFileBackUpDB = SQLServer.createWriteFileBackUpDB;
86078614
String createWriteFileBackUpTable = SQLServer.createWriteFileBackUpTable;
8608-
if (config.keyType.Equals(KeyType.Time))
8615+
if (config.keyType.Equals(KeyType.Time) && config.injectType.Equals(InjectType.Blind))
86098616
{
86108617
payload = payload.Replace(" 1=1;", ";");
86118618
dropWriteFileBackUpTableAndDropDB = dropWriteFileBackUpTableAndDropDB.Replace(" 1=1;", ";");
@@ -8638,7 +8645,7 @@ public void readOrWriteFile()
86388645
//filesystemobject读文件
86398646
String payload = SQLServer.readFileByFileSystemobject.Replace("{path}", path);
86408647
String dropTable = SQLServer.dropTable;
8641-
if (config.keyType.Equals(KeyType.Time))
8648+
if (config.keyType.Equals(KeyType.Time)&& config.injectType.Equals(InjectType.Blind))
86428649
{
86438650
payload= payload.Replace(" 1=1;", ";");
86448651
dropTable = dropTable.Replace(" 1=1;", ";");
@@ -10583,7 +10590,7 @@ private void tsmi_clearColumns_Click(object sender, EventArgs e)
1058310590

1058410591
private void tsmi_bugReport_Click(object sender, EventArgs e)
1058510592
{
10586-
MessageBox.Show("邮箱反馈:1341413415@qq.com\r\nQQ群反馈:84978967");
10593+
MessageBox.Show("邮箱反馈:1341413415@qq.com");
1058710594
}
1058810595

1058910596
private void data_dbs_cob_db_encoding_TextChanged(object sender, EventArgs e)
@@ -11522,6 +11529,45 @@ private void toolStrip_vers_btn_selectReverse_Click(object sender, EventArgs e)
1152211529
{
1152311530
SelectReversNodes(this.data_lvw_ver);
1152411531
}
11532+
11533+
private void btn_retry_addKey_Click(object sender, EventArgs e)
11534+
{
11535+
String key = this.txt_retry_key.Text;
11536+
if (key.Length <= 0) {
11537+
MessageBox.Show("输入重试关键词!");
11538+
return;
11539+
}
11540+
if (this.lbx_retry_sendKey.Items.Contains(key)) {
11541+
MessageBox.Show("关键词已经在列表中!");
11542+
return;
11543+
}
11544+
this.lbx_retry_sendKey.Items.Add(key);
11545+
resetRetryKeys();
11546+
}
11547+
11548+
private void resetRetryKeys()
11549+
{
11550+
11551+
StringBuilder sb = new StringBuilder();
11552+
foreach (String ikey in this.lbx_retry_sendKey.Items)
11553+
{
11554+
sb.Append(ikey + ",");
11555+
}
11556+
if (this.lbx_retry_sendKey.Items.Count > 0)
11557+
{
11558+
String allkeys = sb.Remove(sb.Length - 1, 1).ToString();
11559+
config.retryKey = allkeys;
11560+
}
11561+
}
11562+
11563+
private void cms_delRetryKey_Click(object sender, EventArgs e)
11564+
{
11565+
if (this.lbx_retry_sendKey.SelectedItems.Count>0) {
11566+
this.lbx_retry_sendKey.Items.Remove(this.lbx_retry_sendKey.SelectedItems[0]);
11567+
resetRetryKeys();
11568+
MessageBox.Show("删除成功!");
11569+
}
11570+
}
1152511571
}
1152611572

1152711573
}

0 commit comments

Comments
 (0)