{"id":13841367,"url":"https://github.com/r-richter/hyenae-ng","last_synced_at":"2025-07-11T12:31:40.759Z","repository":{"id":43276873,"uuid":"271746353","full_name":"r-richter/hyenae-ng","owner":"r-richter","description":"Hyenae NG is an advanced cross-platform network packet generator and the successor of Hyenae. It features full network layer spoofing, pattern based address randomization and flood detection breaking mechanisms.","archived":false,"fork":false,"pushed_at":"2023-05-07T14:31:12.000Z","size":781,"stargazers_count":127,"open_issues_count":5,"forks_count":31,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-21T11:38:35.682Z","etag":null,"topics":["arp-cache-poisoning","c-plus-plus","console-application","cross-platform","denial-of-service","flooding","hyenae","linux","mitm","networking","npcap","packet-generator","pcap","pentesting","security","smurf-attack","spoofing","stress-testing","syn-flood","windows"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/r-richter.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-06-12T08:18:48.000Z","updated_at":"2024-10-23T17:45:47.000Z","dependencies_parsed_at":"2024-11-21T11:33:19.165Z","dependency_job_id":"1d5a92e9-034d-439e-a77f-e3fef0c66cea","html_url":"https://github.com/r-richter/hyenae-ng","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/r-richter/hyenae-ng","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r-richter%2Fhyenae-ng","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r-richter%2Fhyenae-ng/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r-richter%2Fhyenae-ng/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r-richter%2Fhyenae-ng/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/r-richter","download_url":"https://codeload.github.com/r-richter/hyenae-ng/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r-richter%2Fhyenae-ng/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264806677,"owners_count":23666673,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arp-cache-poisoning","c-plus-plus","console-application","cross-platform","denial-of-service","flooding","hyenae","linux","mitm","networking","npcap","packet-generator","pcap","pentesting","security","smurf-attack","spoofing","stress-testing","syn-flood","windows"],"created_at":"2024-08-04T17:01:09.444Z","updated_at":"2025-07-11T12:31:40.156Z","avatar_url":"https://github.com/r-richter.png","language":"C++","funding_links":[],"categories":["C++"],"sub_categories":[],"readme":"# Hyenae NG\n\nHyenae NG (Next Generation) is a re-write of the original Hyenae tool which\nwas originally published back in the year 2010.\n\nBesides switching from C to C++, using modern design concepts, Hyenae NG was\n(just like the original Hyenae) written with maximum portability in mind.\nSince the original Hyenae had a very complex command line syntax Hyenae NG\ncomes with a fast and intuitively usable command line menu that will allow\nyou to effectively set up even complex stress-tests or attack scenarios\nwithin seconds.\n\n![Main Menu](https://github.com/r-richter/hyenae-resources/blob/master/hyenae-ng/img/main_menu.png \"Main Menu\")\n![IPv4 Setup](https://github.com/r-richter/hyenae-resources/blob/master/hyenae-ng/img/ip_v4_setup.png \"IPv4 Setup\")\n![Start Dispatcher](https://github.com/r-richter/hyenae-resources/blob/master/hyenae-ng/img/start_dispatcher.png \"Start Dispatcher\")\n\nCopyright (C) 2020 Robin Richter\n\n## Features\n\n- Fully customizable and combinable data generators:\n  - Ethernet-Layer\n  - ARP-Layer\n  - IPv4-Layer\n  - IPv6-Layer\n  - ICMPv4-Layer\n  - ICMPv6-Layer\n  - TCP-Layer\n  - UDP-Layer\n  - Text-Buffer\n- Fixed or Random Send Delay\n- Pattern based address randomization\n- Clean and easy to use command line menu (No RTFM'ing required;))\n- Platform Independent\n\n## Coverage\n\n- ARP-Request flooding (DoS)\n- ARP-Cache poisoning (MITM)\n- ICMP-Echo flooding (DoS)\n- ICMP-Smurf attack (DoS)\n- TCP-SYN flooding (DoS)\n- TCP-Land attack (DoS)\n- Blind TCP-Connection reset (DoS)\n- UDP flooding (DoS)\n- and many more...\n\n## Project Goals\n\nThe original Hyenae project started out as a study of network stack\nimplementations but then quickly gained more complex features such as a\nremote daemon and an attack asistent. Even if it was widely accepted and is\nstill a very commonly used tool in todays pen-testing workflows it has a\ncomplex command line syntax and requires some training and research in order\nto be used properly.\n\nWith Hyenae NG i would like to provide the complexity and felxibility of\nHyenae in a clean and easy to use command line tool which can be instantly\nused without any futher research on the command line arguments to pass for\nthe specific scenarios.\n\n## Contribution\n\nIf you like this project and would like to contribute to it (in which way\never), feel free to do so via my GitHub page or by contacting me directly.\nImprovement ideas and bug reports are very welcomed.\n\n## Basic Usage\n\nOnce you start Hyenae NG, it will enter the main menu state. From here you can\nset up your desired output, generator and dispatcher configuration.\n\n- **Output Setup**\\\n  The output setup let you choose from several different output option. You\n  can either have Hyenae NG's output ignore by selecting \"No Output\" our you\n  can have it send to either a file or a network adapter. Once you have\n  selected an output, you can enter it's sub setup by selecting it again by\n  either entering it's menu item number again or by simply pressing enter.\n  Outputs that have a sub-setup are marked with a (...) once they are\n  selected.\n\n- **Generator Setup**\\\n  The generator setup let you chose from several different generators. Most\n  generators provide a payload option for which you can select another\n  generator and so on. Since network frame generators are nested in transport\n  layers, their available payload generators will differ based on the\n  previously chosen frame generator. Here is an example of a typical\n  payload nesting for an ethernet packet:\n\n      Ethernet +-\u003e ARP\n               |\n               +-\u003e IPv4 +-\u003e ICMPv4 -\u003e ICMP Echo Payload\n               |        +-\u003e TCP\n               |        +-\u003e UDP\n               |        +-\u003e ...\n               |\n               +-\u003e IPv6 +-\u003e ICMPv4 -\u003e ICMP Echo Payload\n                        +-\u003e ICMPv6 -\u003e ICMP Echo Payload\n                        +-\u003e TCP\n                        +-\u003e UPD\n                        +-\u003e ...\n\n- **Dispatcher Setup**\\\n  The dispatcher setup will let you set up the actual data dispatcher. You\n  can define stop-limits or configure a fixed or random send delay in order\n  to break flood detection mechanisms on your target system.\n\n  **IMPORTANT**\\\n  It is reccomended to use a fixed send delay of at least 100 ms on low\n  spec systems such as the GPD Pocket 2 in order to prevent key-press\n  detection issues.\n\n- **Start Dispatcher**\\\n  Once you have set a generator, you can choose this option to start up the\n  dispatcher and start sending packets. If you haven't set a generator yet, \n  an error message will be shown instead. The dispatcher will operate until\n  either a stop-limit (if set) is reached or the user presses any key. After\n  the dispatcher has stopped you can either return to the main menu by\n  entering 0 or start it again by either entering 1 or simply pressing enter.\n\n## Generator Patterns\n\nA lot of packet generator parameters such as for address-, port- and number-\nfields can be providing with a generator pattern. These patterns will be used\nin order to generate a new value on every new packet. Here are some examples\nof a few basic patterns:\n\n- Random 5-digit number: \n  `*****`\n \n- Incremental 3-digit number: \n   `+++`\n\n- Decremental 2-digit number: \n   `--`\n\n- Random number between `100` and `190`: \n   `1*0`\n\n- Incremental number from `1` to `991`: \n   `++1`\n\n- Decremental number from `299` to `200`: \n   `2--`\n\n- Random IPv4 address between `.200` and `.255`: \n  `129.168.0.2**`\n \n- Incremental MAC address between `:00` and `:FF`: \n  `AA:BB:CC:DD:EE:++`\n \n- Decremental IPv6 address between `:FFFF` and `:FF00`: \n  `1000:2000:3000:4000:5000:6000:7000:FF--`\n\n## Configuration File\n\nWhen Hyenae NG is started it will look for a configuration file named\n\"hyenae.conf\" in it's startup folder. If the file does not exist it will\nautomatically create it.\n\n**IMPORTANT**\\\nIf the configuration file can not be parsed, Hyenae NG will give out an\nerror message, requesting you to either fix or delete the configuration\nfile.\n\n- **Frontend Section**\n\n  - **terminal_colors**\\\n    If set to \"on\" (default), Hyenae will use ANSI terminal colors in order\n    to enhance it's user interface. If for some reasons the terminal you\n    are using does not support ANSI colors, you should set this to \"off\".\n\n  - **line_chars**\\\n    If set to \"on\" (default) hyenae will use special line characters for\n    it's menu separators (In ASCII on Windows and UniCode on *nix based\n    systems). If you are encountering any strange separator outputs, you\n    should set this to \"off\".\n\n## Contact\n\n- [E-Mail](mailto:hyenae.tool@googlemail.com)\n- [GitHub-Repository](https://github.com/r-richter/hyenae-ng)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fr-richter%2Fhyenae-ng","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fr-richter%2Fhyenae-ng","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fr-richter%2Fhyenae-ng/lists"}