Code Analysis: Quttera Web Malware Scanner 3.5.0.24

Function Rating Maintainability Complexity Lines of code
CQtrFilesScanner::ScanFile()
B
33 16 117
CQtrFilesScanner::_ScanFile()
B
33 15 111
qtr_wm_scanner_ajax_run_scan()
A
41 10 62
CQtrMimetype::CheckMimeType()
A
45 10 49
CQtrAjaxHandler::RunExternalScan()
A
41 9 59
CQtrReport::GetStats()
A
45 10 43
CQtrAjaxHandler::WhiteListFile()
A
46 10 40
CQtrFilesScanner::_ScanDirectory()
A
47 9 39
CQtrPatternsDatabase::Scan()
A
50 9 28
CQtrFilesScanner::_ReloadCoreMap()
A
49 9 27
CQtrOptions::SaveOption()
A
49 8 32
CQtrFilesScanner::ScanDirectory()
A
51 8 27
on_qtr_scanner_internal_scan_cron_event()
A
46 7 39
on_qtr_scanner_heur_internal_scan_cron_event()
A
46 7 39
CQtrOptions::LoadOption()
A
49 7 32
CQtrFilesWhiteList::_LoadIgnoreList()
S
51 7 27
store_snapshot()
S
53 7 22
CQtrUtils::GetUrlContent()
S
49 6 33
CQtrFilesWhiteList::_LoadFromFile()
S
53 6 23
CQtrOptions::AddOption()
S
56 6 18
CQtrOptions::GetOption()
S
56 6 18
CQtrOptions::UpdateOption()
S
56 6 18
qtr_setup_scanner_menu()
S
47 4 43
CQtrFilesWhiteList::AddBySig()
S
52 5 25
CQtrFilesWhiteList::RemoveBySig()
S
53 5 25
CQtrFsSnapShot::FromString()
S
54 5 22
CQtrAjaxHandler::WhiteListThreat()
S
53 5 22
CQtrFilesScanner::ScanWordPress()
S
48 4 36
CQtrFsSnapShot::ToString()
S
56 5 20
CQtrScanLock::IsLocked()
S
55 5 20
CQtrAjaxHandler::IgnoreThreat()
S
55 5 20
CQtrLogger::GetFromLine()
S
57 5 18
CQtrFsSnapShot::ListPath()
S
57 5 16
CQtrReport::_IsWhiteListed()
S
59 5 15
CQtrPatternsDatabase::Load()
S
52 4 25
CQtrAjaxHandler::ShowFile()
S
53 4 22
CQtrLogger::_Log()
S
54 4 21
CQtrPattern::find_match()
S
56 4 19
CQtrAjaxHandler::RemoveFromIgnoreList()
S
56 4 18
CQtrReport::RemoveThreat()
S
57 4 18
CQtrFsSnapShot::BuildSnapShot()
S
57 4 17
CQtrStats::Increment()
S
58 4 16
CQtrFilesScanner::_ShouldTestCoreIntegrity()
S
60 4 16
CQtrFilesWhiteList::IsIgnored()
S
58 4 16
CQtrScanLock::_IsProcessRunning()
S
58 4 16
CQtrExecSem::ShouldStop()
S
59 4 15
load_snapshot()
S
59 4 15
CQtrReport::AddFileReport()
S
50 3 29
CQtrFilesScanner::Scan()
S
51 3 28
CQtrReport::GetThreat()
S
62 4 12
CQtrFilesScanner::Initialize()
S
58 3 16
CQtrAjaxHandler::GetLogLines()
S
58 3 16
CQtrLogger::_LoadLog()
S
60 3 16
CQtrAjaxHandler::GetIgnoredThreatsReport()
S
58 3 16
quttera_style()
S
68 4 6
CQtrAjaxHandler::RunInternalScan()
S
50 2 29
CQtrAjaxHandler::RunHeurInternalScan()
S
50 2 29
CQtrFilesWhiteList::_LoadFromDb()
S
61 3 13
CQtrExecSem::_LoadStatus()
S
62 3 13
CQtrReport::_LoadReport()
S
62 3 13
CQtrIgnoreList::_LoadList()
S
62 3 13
CQtrThreatsWhiteList::_LoadList()
S
62 3 13
CQtrAjaxHandler::IsInternalScanRunning()
S
61 3 13
CQtrFilesWhiteList::IsWhiteListed()
S
62 3 13
CQtrStats::_LoadStats()
S
62 3 12
CQtrConfig::LogSeverityStr()
S
64 3 11
CQtrAjaxHandler::ScannerReport()
S
52 2 23
CQtrReport::_GenerateHeader()
S
50 1 34
CQtrReport::_GenerateBody()
S
54 2 19
CQtrReport::AddDbReport()
S
55 2 19
CQtrMimetype::__construct()
S
48 1 32
qtr_wm_scanner_plugin_actions()
S
65 3 8
CQtrAjaxHandler::__can_access()
S
65 3 9
CQtrFsSnapShot::Push()
S
66 3 9
CQtrExecSem::_StoreStatus()
S
59 2 15
CQtrLogger::_Trim()
S
70 3 7
CQtrFilesScanner::_IsCoreFile()
S
66 3 9
CQtrFilesWhiteList::IsLoaded()
S
70 3 6
CQtrAjaxHandler::StopInternalScan()
S
59 2 15
CQtrReport::GetDetectedThreats()
S
65 3 9
qtr_scanner_query()
S
60 2 14
CQtrReport::_StoreReport()
S
60 2 14
CQtrExternalScanner::SendQuery()
S
60 2 14
CQtrStats::_StoreStats()
S
60 2 14
CQtrLogger::__construct()
S
59 2 14
CQtrReport::_StoreToFile()
S
60 2 13
CQtrThreatsWhiteList::_StoreList()
S
61 2 13
CQtrLogger::_StoreLog()
S
61 2 13
CQtrLogger::_WriteLog()
S
62 2 13
CQtrIgnoreList::_StoreList()
S
61 2 13
CQtrStats::_Inc()
S
63 2 12
CQtrFilesWhiteList::Clean()
S
61 2 12
CQtrScanLock::LockName()
S
62 2 11
CQtrIgnoreList::__construct()
S
63 2 11
CQtrThreatsWhiteList::__construct()
S
63 2 11
CQtrFilesWhiteList::RemoveByPath()
S
69 2 7
CQtrStats::Total()
S
71 2 6
CQtrIgnoreList::Add()
S
64 2 10
CQtrLogger::Info()
S
70 2 6
CQtrIgnoreList::Get()
S
67 2 8
CQtrIgnoreList::Remove()
S
65 2 9
CQtrStats::Clean()
S
71 2 6
CQtrOptions::Serialize()
S
67 2 8
CQtrReport::_GetCurrentSite()
S
69 2 7
CQtrLogger::_ResetLog()
S
68 2 8
clean_internal_scan_hook()
S
68 2 8
CQtrStats::PotSuspicious()
S
71 2 6
CQtrAjaxHandler::CleanFilesWhiteList()
S
64 2 10
CQtrThreatsWhiteList::Add()
S
64 2 10
CQtrOptions::Unserialize()
S
67 2 8
CQtrLogger::Warning()
S
70 2 6
CQtrThreatsWhiteList::Remove()
S
65 2 9
CQtrLogger::_OpenLogFile()
S
67 2 8
CQtrAjaxHandler::IsInternalScanNowRunning()
S
67 2 9
CQtrStats::Malicious()
S
71 2 6
CQtrFilesWhiteList::AddByPath()
S
69 2 7
CQtrScanLock::Acquire()
S
71 2 6
CQtrFilesScanner::_ShouldTerminate()
S
68 2 8
qtr_external_scan_page()
S
69 2 7
qtr_internal_scan_page()
S
69 2 7
CQtrFsSnapShot::Populate()
S
69 2 7
qtr_heur_internal_scan_page()
S
69 2 7
CQtrScanLock::Lock()
S
63 2 10
CQtrStats::Suspicious()
S
71 2 6
CQtrPattern::is_curable()
S
78 2 3
CQtrScanLock::_GetCurrentSite()
S
65 2 9
qtr_faq_page()
S
70 2 7
CQtrFilesWhiteList::IsWhiteListedFile()
S
67 2 8
CQtrLogger::Error()
S
70 2 6
CQtrThreatsWhiteList::Get()
S
67 2 8
CQtrExecSem::StartedBy()
S
66 2 9
clean_heur_internal_scan_hook()
S
68 2 8
CQtrFilesScanner::__construct()
S
59 1 14
CQtrStats::Reset()
S
63 1 11
CQtrFsSnapShot::FilesCount()
S
80 1 3
CQtrStats::IncMalicious()
S
77 1 4
CQtrStats::GetCounters()
S
82 1 3
on_qtr_scanner_activation()
S
80 1 3
CQtrFilesWhiteList::__construct()
S
80 1 3
CQtrScanLock::TryAcquire()
S
80 1 3
CQtrFilesScanner::IsIgnored()
S
80 1 3
CQtrStats::IncSusp()
S
77 1 4
CQtrPattern::severity()
S
82 1 3
CQtrReport::StoreFileReport()
S
81 1 3
qtr_load_escan_frontend()
S
80 1 3
CQtrUtils::GetDomainName()
S
72 1 5
CQtrFilesScanner::Finalize()
S
77 1 4
CQtrAjaxHandler::CleanIgnoreList()
S
69 1 7
CQtrStats::IncTotal()
S
80 1 3
CQtrPattern::name()
S
82 1 3
CQtrScanLock::Release()
S
76 1 4
CQtrThreatsWhiteList::GetList()
S
82 1 3
CQtrFsSnapShot::__construct()
S
82 1 3
CQtrIgnoreList::_BuildKey()
S
80 1 3
CQtrThreatsWhiteList::_BuildKey()
S
80 1 3
qtr_load_heur_iscan_frontend()
S
80 1 3
CQtrExecSem::ScannerPid()
S
73 1 5
on_qtr_scanner_deactivate()
S
82 1 3
CQtrStats::StartTime()
S
80 1 3
CQtrConfig::LogSeverity()
S
80 1 3
CQtrExecSem::StartTime()
S
76 1 4
CQtrIgnoreList::GetList()
S
82 1 3
schedule_heur_internal_scan_hook()
S
66 1 8
CQtrReport::Finalize()
S
77 1 4
CQtrStats::Get()
S
77 1 4
CQtrAjaxHandler::CleanLogLines()
S
69 1 7
CQtrLogger::Clean()
S
74 1 5
CQtrScanLock::ForceUnlock()
S
80 1 3
CQtrStats::__construct()
S
77 1 4
CQtrLogger::SeverityStr()
S
80 1 3
CQtrReport::GenerateMeta()
S
81 1 3
CQtrReport::Get()
S
82 1 3
CQtrLogger::GetAllLines()
S
82 1 3
CQtrPattern::pattern()
S
82 1 3
CQtrReport::DumpToString()
S
73 1 5
CQtrExecSem::Reset()
S
64 1 10
schedule_internal_scan_hook()
S
66 1 8
CQtrPattern::__construct()
S
69 1 7
CQtrAjaxHandler::GetStats()
S
65 1 9
CQtrAjaxHandler::CleanThreatsWhiteList()
S
69 1 7
CQtrConfig::PatternsDbName()
S
82 1 3
CQtrExecSem::__construct()
S
77 1 4
CQtrReport::Reset()
S
74 1 5
qtr_load_iscan_frontend()
S
80 1 3
on_qtr_scanner_uninstall()
S
100 1 2
CQtrAjaxHandler::GetDetectedThreatsReport()
S
69 1 7
CQtrFilesScanner::_GetChecksumUrl()
S
74 1 4
CQtrThreatsWhiteList::Clean()
S
74 1 5
CQtrPatternsDatabase::__construct()
S
81 1 3
CQtrFsSnapShot::Pop()
S
80 1 3
CQtrPattern::details()
S
82 1 3
CQtrStats::IncPotSusp()
S
77 1 4
qtr_scanner_custom_cron_schedule()
S
74 1 4
CQtrIgnoreList::Clean()
S
74 1 5
CQtrMimetype::getHeader()
S
70 1 6
CQtrStats::IncClean()
S
77 1 4
CQtrExecSem::Get()
S
77 1 4
on_qtr_scanner_admin_init()
S
83 1 3
force_next_cron_job()
S
83 1 3
CQtrFilesWhiteList::Load()
S
68 1 8
CQtrUtils::PluginRootDir()
S
80 1 3
CQtrReport::__construct()
S
63 1 10
CQtrExecSem::LastUpdate()
S
76 1 4
CQtrLogger::Severity()
S
82 1 3