Jump to content
Sign in to follow this  
Influx

NoVirus AntiVirus

Recommended Posts

Influx

Well here it is its not finished, right now it currently detected 80% of viruses as GENERAL/TROJAN but that will be fixed when i have it check online for more info.

This was a quick database i put together containing about 6000 virus signitures, takes about 206 seconds to scan by all 6000 signatures, any way to speed this up?

Source + Database:

http://odpoa.com/NoVirus.zip

Feel free to submit lists or links to viruses here or in PM so i may add them if it does not already detect them (please try to give descriptions for themm all)

Feel free to give tips on how to speed this up.

(updated GUI thanks to ashley)

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****

#AutoIt3Wrapper_Version=Beta

#AutoIt3Wrapper_Icon=C:\Users\GoTTsProfeT\Downloads\counterstrike-3.ico

#AutoIt3Wrapper_Compression=4

#AutoIt3Wrapper_Res_Comment=NoVirus AntiVirus

#AutoIt3Wrapper_Res_Description=NoVirus AntiVirus

#AutoIt3Wrapper_Res_Fileversion=0.0.1.29

#AutoIt3Wrapper_Res_LegalCopyright=On Demand Programmers Of America

#AutoIt3Wrapper_Res_Language=1033

#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

#include <EditConstants.au3>

#include <GUIConstantsEx.au3>

#include <StaticConstants.au3>

#include <WindowsConstants.au3>

#include <string.au3>





$GUI = GUICreate("No Virus", 562, 403)

GUISetFont(10, 400, 0, "Papyrus")

$Label1 = GUICtrlCreateLabel("No Virus", 216, 16, 133, 55)

GUICtrlSetFont(-1, 24, 400, 0, "Papyrus")

$Label2 = GUICtrlCreateLabel("Please select a file to scan! Either type the file path in the box provided below or click Browse", 8, 80, 545, 25)

$Filepath = GUICtrlCreateInput("", 16, 112, 345, 29)

$Browse = GUICtrlCreateButton("Browse", 376, 112, 75, 25, 0)

$Scanbutton = GUICtrlCreateButton("Scan File!", 464, 112, 75, 25, 0)

$Fileinfofeilds = GUICtrlCreateGroup("File info:", 16, 152, 529, 161)

$Filepathlable = GUICtrlCreateLabel("File path:", 32, 184, 490, 25)

$Filesizelable = GUICtrlCreateLabel("File size:", 32, 216, 490, 25)

$Virustypelable = GUICtrlCreateLabel("Virus type:", 32, 280, 490, 25)

$Filestatuslable = GUICtrlCreateLabel("File status:", 32, 248, 490, 25)

GUICtrlCreateGroup("", -99, -99, 1, 1)

$Scaninfofeilds = GUICtrlCreateGroup("Scan info:", 16, 320, 529, 65)

$Timetakenlable = GUICtrlCreateLabel("Time taken to preform scan:", 32, 352, 490, 25)

GUICtrlCreateGroup("", -99, -99, 1, 1)

GUISetState(@SW_SHOW)



If $cmdline[0] > 0 Then

    GUICtrlSetData($Filepath, StringRegExpReplace($cmdlineraw, '"', ''))

    ControlClick("No Virus", "", "Scanbutton")

EndIf



$flag = 0

While 1

    $nMsg = GUIGetMsg()

    Switch $nMsg

        Case $GUI_EVENT_CLOSE

            Exit





        Case $Browse

            GUICtrlSetData($Filepath, FileOpenDialog("Select a File to Scan", @WorkingDir, "All Files(*.*)"))



        Case $Scanbutton

            ProgressOn("Scanning File", "Scanning Requested File", "Scanning " & GUICtrlRead($Filepath))

            $timer = TimerInit()

            $test = Binary(FileRead(GUICtrlRead($Filepath)))

            ProgressSet(40)

            $database = FileRead(@ScriptDir & "\database.viri")

            ProgressSet(46)

            $db = StringSplit($database, ";")

            ProgressSet(50)

            $xy = UBound($db) - 2

            For $i = 1 To UBound($db) - 2

                ProgressSet($i / $xy * 100 + 50)

                ConsoleWrite($i / $xy * 100 & @CRLF)

                $db2 = StringSplit($db[$i], "=")



                If StringInStr($test, _StringEncrypt(0, $db2[2], "odpoaviri"), 1, 1) Then



                    GUICtrlSetData($Filepathlable, 'File path: ' & GUICtrlRead($Filepath))

                    GUICtrlSetData($Filestatuslable, 'File status: Infected')

                    GUICtrlSetData($Virustypelable, 'Virus type: ' & $db2[1])

                    GUICtrlSetData($Filesizelable, "File size: " & FileGetSize(GUICtrlRead($Filepath)) & ' Bytes')

                    GUICtrlSetData($Timetakenlable, 'Time taken to preform scan: ' & StringLeft(TimerDiff($timer) / 1000, 10) & ' Seconds')

                    $flag = 1

                    ExitLoop

                EndIf



            Next

            ProgressOff()

            If $flag = 1 Then

                MsgBox(16, "Complete", "Scan Completed")

                $flag = 0

            Else

                GUICtrlSetData($Filepathlable, 'File path: ' & GUICtrlRead($Filepath))

                GUICtrlSetData($Filestatuslable, 'File status: Not infected!')

                GUICtrlSetData($Virustypelable, 'Virus type: N/A')

                GUICtrlSetData($Filesizelable, "File size: " & FileGetSize(GUICtrlRead($Filepath)) & ' Bytes')

                GUICtrlSetData($Timetakenlable, 'Time taken to preform scan: ' & StringLeft(TimerDiff($timer) / 1000, 10) & ' Seconds')

                MsgBox(64, "Complete", "Scan Completed")

            EndIf



    EndSwitch

WEnd
Edited by Influx

Share this post


Link to post
Share on other sites
Andreik

Well here it is its not finished, right now it currently detected 80% of viruses as GENERAL/TROJAN but that will be fixed when i have it check online for more info.

This was a quick database i put together containing about 6000 virus signitures, takes about 206 seconds to scan by all 6000 signatures, any way to speed this up?

Source + Database:

http://odpoa.com/NoVirus.zip

Feel free to submit lists or links to viruses here or in PM so i may add them if it does not already detect them (please try to give descriptions for themm all)

Feel free to give tips on how to speed this ip.

Nice, but it`s very slow. :)


When the words fail... music speaks

Share this post


Link to post
Share on other sites
Pain

If you are good at C++ or assembly you can make the scanner in a faster language to speed it up.

Share this post


Link to post
Share on other sites
Innovative

What is this !!

I tried alot of scan on alot of my applications on my computer ..

Which includes : .txt files , avast , msnmsgr , explorer.exe ..

ALL are detected as "INFECTED" ..

I think you need to reconfigure the virus database ..

Share this post


Link to post
Share on other sites
gseller

Very Nice, but slow.. What are you using to encrypt the definitions? That might be where it is slowing down alot. Maybe take the level down or get rid of encryption?

Share this post


Link to post
Share on other sites
Influx

encryption make like 0.0000001 difference, LOL its tr in str, and i have updated the database, i had a bunch of fault viruses falgging all kidns of shit, the new database only detects liek 10 viruses.

also yes this is being made in C++ but this is a prototype.

Viruses ect are appreciated, even just virus names/.

Edited by Influx

Share this post


Link to post
Share on other sites
Valuater

Please include a False positive for AVG

8)


NEWHeader1.png

Share this post


Link to post
Share on other sites
Legacy99

Hahaha, freaking AVG, and how about deleting stuff out of the McAfee folder too, damn McAfee blowing away all my scripts.

Share this post


Link to post
Share on other sites
neology

try mine : Neo Virus Remover

No need to install, just extract the compressed file and run NVR.exe

Share this post


Link to post
Share on other sites
Influx

oh yes all, download a exe from a newbie postt :) *grabs the file and adds its signature to my database*

neo, its just THAT obvious.

Share this post


Link to post
Share on other sites
Influx

now in first post.

Share this post


Link to post
Share on other sites
WhOOt

oh yes all, download a exe from a newbie postt :) *grabs the file and adds its signature to my database*

neo, its just THAT obvious.

haha dude.. don't be an ass

Share this post


Link to post
Share on other sites
ashley

Here you go!

First impressions always count!(I should know, i made a bad one on these forums) If the file looks good and more professional its better!

So here my gui that i made for it!

I have kept everything the same(I.E fonts, and infomation given), Just made it look better, Exit boxes are ugly!

Database is included in the file.

The script file is bigger now only by a tiny bit tho. but it looks alot better!

Enjoy. If theres is anything else i can help with PM me :)

NoVirus_new_gui.rar

Share this post


Link to post
Share on other sites
timistar

nice thx

a anti virus por pendrive will be so usefull something agauinst *.ini or *.inf

Share this post


Link to post
Share on other sites
Influx

Thanks a ton, the GUI looks very very nice.

Share this post


Link to post
Share on other sites
Influx

I was wondering... speed wise, lets say it takes 300 seconds to scan a file by 6000 signatures in autoit.

Now if I wrote the same thing in C++ it might take... 4 or 5 seconds.

If I made the C++ code and turned it into a DLL and just called the DLL would it mean that autoit could therefore preform the scan and retreive the results from the dll in 4 or 5 seconds?

thanks,

influx

Share this post


Link to post
Share on other sites
torels

yes it should be like that :)


Some Projects:[list][*]ZIP UDF using no external files[*]iPod Music Transfer [*]iTunes UDF - fully integrate iTunes with au3[*]iTunes info (taskbar player hover)[*]Instant Run - run scripts without saving them before :)[*]Get Tube - YouTube Downloader[*]Lyric Finder 2 - Find Lyrics to any of your song[*]DeskBox - A Desktop Extension Tool[/list]indifference will ruin the world, but in the end... WHO CARES :P---------------http://torels.altervista.org

Share this post


Link to post
Share on other sites
Influx

hah.... I have no idea how to replicate the splitting and comparison of stings in C++ and then make it in to a DLL or how to even call off that DLL although for someone who knows C++ such a task doesn't seem as if it would be so hard. (I am still learning) so could someone please make a .dll and share the source so I can expand my knowledge?

thanks,

Influx

Edited by Influx

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×