simple and easy language used for input macros creation and payloads writing.
%, .,,& &#@
█▀█ ▄▀█ ▀█▀ ▀█▀ █ █▀ █░█ %,,,,,*& ((##/
█▀▄ █▀█ ░█░ ░█░ █ ▄█ █▀█ ,,,,,**&/#((#(#/%%
~ small, simple and fast ~ &%%(*&&&(-X-(((((&&(&/#&&# .*
&#%%%%%%%%%%%&##&%((#(#((#((#&,,,,
%%%%%%%%%%((%%&##(((#(/#(#(#@#%&&&
&&%%%%%%%%%%%%%%((((%%##&(#&%%&/&#%&&#*
&&&,,.&&@ &#%%%%%%#(((((##%%&#%%%((%#%& *
(,,& &#%%%%%(((((###(##&#%%&&
&* ,. &#%%%((((((((((((#%&&&
&*,,@ &%%%%#(((((((%####&(###&
#*(, .%%%%%%#%((((%*****@****,
&**,& %%%%%%%%%#(#&/*******&**&
&***,% &%%%%%%&%%%#(#&/******,&**,%,&%
.#***#& &%&#%%%%%%&%(%%#&**,,,&,,&/&&******,,,#
&** **& /%%%%%%%%%%%%%&&&&&&&(**,,,&*& &*(,&
&** #*& &%%%%%%%%%%%%%%%//****//&**,,/*& &(&&&&
*** **& &%%%%%%%%%%#(##&******,*(&*,%***& .&*/
@*# *(/ &%(#%%%%%%%%%#(((&&*************,,
&****& #(%%%%%%%%%%%%%%#((&************,,&
%(***& %%%%%%%%%%%%%%%%%##(#%********,*,,*& EVERY RAT
&(*##& &%%%%%%%%%%%%%%%%%(((#**********,**& EVEN WITHOUT
*&(((**&& &%%%%%%%%%%%%%%#%%%%#((&***********#& EVER LEAVING
&&(((((#((((((%&##%%%%%%%%%%%%%%%%%#((&*********/& STORM SEWERS
,&&&#/((((/%&%#%%%%%%%%%%%%%%%%##(##///////%&*,,,,&@,/&&& DREAMS ABOUT
,,,,,,,,,,,,,,,,,&&%#%%%%%%%&(&//#&&#,,,,,,,,,,, SKY AND CLOUDS
,,,,,,,,,,,,,,,&%(**,,,#&& AT LEAST ONCE
,,&(,,,&,&,@
,, ,
Project is created for macro codes in standard office software, microcontroller-based project's payloads and standalone scripting. First idea was based on small and fast program for Seeeduino Xiao with microsd to sd card adapter directly attached to SPI pins. After proof-of-work construction and programming was finished successfully, many new ideas appears.
- every line contains one command char with one string argument. for example in
<input
that<
is command andinput
is argument of this command - commands are single ASCII characters in the range from 0x21 to 0x2F or from 0x3A to 0x40 or from 0x5B to 0x5F or from 0x7B to 0x7E, that starts line.
- argument for every command starts after first char and ends before EOL.
- if line starts with other char, like for example space, letter or cipher it is commentary.
input, output, events, breakers and pauses
- wait time pause in miliseconds / seconds / minutes / hours [
"
] - print static output / print output from variable [
<
] - read input to file / to variable [
>
] - release key(s) [
^
] - press key(s) [
_
]
basic variable operations
- point context on variable [
$
] - modulo of context variable / string length [
%
] - multiply context variable / get char at [
*
] - add to context variable / string append [
+
] - sub from context variable / find and remove [
-
] - divide context variable / insert at [
:
] - set context variable [
=
] - move variable context pointer to left [
[
] - move variable context pointer to right [
]
] - copy value from variable to context variable [
{
] - copy value from context variable to variable [
}
]
logic operations
- set 1 to context variable if context variable is not 0 and variable is not 0, else 0 [
&
] - set 1 to context variable if context variable is lesser than variable, else 0 [
/
] - set 1 to context variable if context variable is not 0 or variable is not 0, else 0 [
;
] - set 1 to context variable if context variable is greater than variable, else 0 [
\
] - set 1 to context variable if context variable is equal to variable, else 0 [
|
] - if context variable is 0 set 1, else 0 [
~
]
procedures and conditional execution
- unconditional jumper, if label not exists stops current iteration [
!
] - label for code jumping [
.
] - conditional jumper, based on if context variable is not 0 jump [
?
]
enviroment behavior and system operators
- undefined function for that moment [
'
] - undefined function for that moment [
(
] - undefined function for that moment [
)
] - undefined function for that moment [
,
] - undefined function for that moment [
``
]
-
- payload.rat
-
- README.md
-
- payload.rat
-
- README.md
-
- payload.rat
-
- README.md
-
- payload.rat
-
- README.md
-
- payload.rat
-
- README.md
- cybermouse : interpreter in javascript, for education
- rat-la-snake : interpreter in python, mainly to interact with ADB and VirtualBox
- ratatuille : interpreter in c++, minimal shell use for linux and windows
- ratatu : interpreter in c, for arduino
- danger-squirel : interpreter in php, redirects using macros
- otter-j : interpreter in java
- sharp-capibarra : interpreter in c#
- hid-rat-key - badUSB HID keyboard interpreter with Rattish Scripting implementation
- hamster-prompt - terminal helper with rattish macros handling
- morbid-mole - small version of rodent agent with stelth mode
- rodent-crypt - encryptor, based on rattish language
- The Rattish Project
Published on terms of GPL-3.0 by Sett Sarverott
PROJECT RATTISH @
2023