Giter VIP home page Giter VIP logo

quacktest's Introduction

QuackTest

This is just a simple script to test duckyscripts before putting them onto the ducky itself. It can often take a while to write the script, encode it, mount the SD card, transfer the encoded script, and test it with the ducky. So this little interpreter is designed to allow slightly faster development of the scripts by emulating a rubber ducky.

Prerequisites

Linux

You need a few prequisite packages before attempting to install the package. These include Python3, the XLib library, and the Python Tkinter library. On Linux these can be installed using your package manager, as with the following command:

sudo apt install python3 python3-xlib python3-tk

Windows

On Windows, you just need to have a correct version of python available on the system. This has been tested using Python 3.5. Please note, if you want to use the build scripts, you must install pyinstaller separately (as this seems to have some troubles on the latest 3.5 and 3.6 Python using Pip). Using Python version 3.5.0 seems to work.

Installation

To install QuackTest on the target computer, just run the included setup.py script using the command

python3 setup.py install

This also will install the quacktest.py and quacktest-gui.py scripts onto your system.

Building

Optionally, you can also use build or use binaries precompiled for your target environment. This is especially useful if you want to deploy QuackTest onto a fresh environment, without needing to install all its dependencies. You can make these using the included build_dist.py script and will utilize the pyinstaller package (which must be installed on your system). The binaries will be placed under the dist directory under the appropriate system name, and will consist of the "one file" build and "one directory" build for both the command line and GUI builds. Please note, this build script has only been tested on Windows 7 and Ubuntu 16.04, and (as per pyinstaller) must be ran on the target system being compiled for.

Also, for pyinstaller, the "one file" output tends to behave oddly on unpatched Windows 7 systems. If this is your target environment, please use the output of the "one directory" output, as this seems to work.

Usage

To use the script, you can use either the command line utility or the GUI. Both are included in the bin directory, and can be invoked by using quacktest.py or quacktest-gui.py, respectively.

quacktest's People

Contributors

terrabitz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

quacktest's Issues

Fix sizing issue on high-DPI displays

Currently, the GUI is extremely small on high-DPI displays. And since there is currently no way to resize the GUI elements, this makes it challenging to work with on these devices.

Add 32-bit compatible Windows binaries

Currently, the binary compilation is done on the 64-bit architecture only, precluding support for 32-bit devices. This architecture should be included as well (at least for Windows binaries).

Doesn't read F keys

I'm sure you probably won't update just to fix this, but it doesn't read F keys ... All I wanted was for it to F11 my browser screen... NOPE. ugh... Great app btw, thanks for making it!!! Also if you do make changes again on it, maybe add an encoder to it as well... I'm surprised you didn't to begin with.

Add encoding option

We should add the ability to encode data into the expected format for a rubber ducky. If needed, this might be expanded to other formats, such as Arduino.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.