|
|
@@ -0,0 +1,120 @@
|
|
|
+# Features
|
|
|
+
|
|
|
+## General
|
|
|
+ * Bot is written in a C/C++ mix. (slowly merging into a C++ OOP design)
|
|
|
+ * Code base of [Eggdrop](http://www.eggheads.org) 1.6.12 (The code has evolved so much that it can't even be compared to a stock Eggdrop anymore.)
|
|
|
+ * TCL is '''not''' required nor is it supported.
|
|
|
+ * No module support
|
|
|
+ * Initially influenced by the [ghost botpack](http://ghost.botpack.net)
|
|
|
+ * There is only one version of a binary for each Operating System (i.e. hub and leaf binaries are identical).
|
|
|
+ * Leaf bots act like dummy drones and save no botnet settings or files locally.
|
|
|
+ * Only hubs store userfiles and temp data on shell; userfiles are sent to leafs during link and stored in runtime memory (1.3).
|
|
|
+ * Userfiles store information about channels, users, and settings.
|
|
|
+ * Binaries store information about bots [wiki:BotConfig internally]; no config files used.
|
|
|
+ * One binary [wiki:BotConfig stores multiple bots inside it]. (Each bot gets its own process id)
|
|
|
+ * Bots are quick and easy to [wiki:BotnetSetup setup]
|
|
|
+ * A botnet can be '''easily''' updated with new binaries from the hub. (see [wiki:Updating])
|
|
|
+ * Customizable DCC cmd prefix (i.e. !cmd %cmd *cmd)
|
|
|
+ * IPv6 support for IRC/botnet
|
|
|
+ * Asynchronous DNS
|
|
|
+ * Easy default channel setting modifying with pseudo channel 'default'
|
|
|
+ * No extra ports needed for userfile sharing, only the HUB port needs to be opened.
|
|
|
+ * Passwords are stored in a SaltedSHA1 format.
|
|
|
+
|
|
|
+## Encryption
|
|
|
+ * All botnet traffic/files are encrypted with [AES-256](http://en.wikipedia.org/wiki/Advanced_Encryption_Standard)+base64.
|
|
|
+ * Binaries store an assortment of MD5 checksums internally and verify them upon starting.
|
|
|
+ * Binaries store data about bots internally with AES-256 encryption.
|
|
|
+ * Botnet keys are randomly regenerated.
|
|
|
+ * Preliminary support for FiSH
|
|
|
+
|
|
|
+## DCC
|
|
|
+ * Secure login using AuthSystem
|
|
|
+ * Separation of cmds on hub and leaf bots
|
|
|
+ * Remote control of leaf bots from hubs
|
|
|
+ * Users cannot access/view users of higher level (see WhoisRestrictions).
|
|
|
+ * Encrypted .relay between bots
|
|
|
+
|
|
|
+## IRC
|
|
|
+ * Hubs do not connect to IRC.
|
|
|
+ * Autoaway at random intervals
|
|
|
+ * Client cloaking (CTCPs / version)
|
|
|
+ * Mass op/deop protections
|
|
|
+ * Manual op protections
|
|
|
+ * [wiki:CookieOps Op cookies] using custom hash/encryption scheme to protect from network stream hijack.
|
|
|
+ * [wiki:CookieOps Op cookies] support opping multiple clients.
|
|
|
+ * +take channel flag to quickly op botnet and mass deop channel
|
|
|
+ * No user exemptions with flags or otherwise: I.e. if you manually op in a channel set to +dk, nobody -- including you -- is exempt.
|
|
|
+ * +bitch channel flag uses multiple methods of protection.
|
|
|
+ * Pre-defined list of kick reasons
|
|
|
+ * Auto-limiter algorithm sets channel limit only when needed.
|
|
|
+ * Configurable auto-voicer
|
|
|
+ * [CIDR ban](http://svn.ratbox.org/svnroot/ircd-ratbox/trunk/doc/CIDR.txt) support
|
|
|
+ * Bots DNS clients to see if they match users/bans. (+r)
|
|
|
+ * Bots prefer requesting op from bots on same server or from a list of bots sorted by hops.
|
|
|
+ * Bots regain nicks automatically.
|
|
|
+ * Jupenick is used for regaining your own nick, without the bot alternating on that nick.
|
|
|
+ * [wiki:Homechan Home channel] support.
|
|
|
+ * RBL banning support.
|
|
|
+ * In-channel control of bots via AuthSystem.
|
|
|
+ * Native support for floodless ilines.
|
|
|
+ * Bot is optimized for [IRCD-Ratbox](http://www.ircd-ratbox.org/) and [EFNet](http://www.efnet.org), but should work on most IRCDs fine.
|
|
|
+ * [005 numeric](http://www.irc.org/tech_docs/005.html) support. All on by default, if supported:
|
|
|
+ * [CALLERID](http://svn.ratbox.org/svnroot/ircd-ratbox/trunk/doc/modeg.txt) support. Users are automatically accepted.
|
|
|
+ * DEAF support. No channel text is sent to bot unless it has [wiki:AuthSystem authed] users on it.
|
|
|
+ * [MONITOR](http://svn.ratbox.org/svnroot/ircd-ratbox/trunk/doc/monitor.txt) support.
|
|
|
+ * KNOCK support.
|
|
|
+ * [CPRIVMSG/CNOTICE](http://ircu.sourceforge.net/release.2.10.02-cprivmsg.html) support.
|
|
|
+ * [WHOX](http://ircu.sourceforge.net/release.2.10.01-who.html) support. (Can help the bot know the IPs of clients without DNSing them)
|
|
|
+ * Easy nickname release commands for regaining your nickname from a bot.
|
|
|
+ * Voicebitch support for enforcing only certain users/hostmasks being voiced.
|
|
|
+ * Protection from MAX SendQ from WHO requests replies.
|
|
|
+
|
|
|
+## Users
|
|
|
+ * [CIDR hostmask](http://svn.ratbox.org/svnroot/ircd-ratbox/trunk/doc/CIDR.txt) support
|
|
|
+ * Multiple levels of control through flags
|
|
|
+ * "Perm" owners are statically defined in the binaries.
|
|
|
+ * Sensitive control is through userflag +a (admin -- shell access, bot configuration, etc.).
|
|
|
+ * Botnet control is through userflag +n (owner).
|
|
|
+ * User control is through userflag +m (master).
|
|
|
+ * Channel control is through userflag +o (op).
|
|
|
+
|
|
|
+
|
|
|
+## Leaf Bots
|
|
|
+ * Botnet list is not visible.
|
|
|
+ * Hubs are not visible.
|
|
|
+ * Hostmask not visible in whois
|
|
|
+ * Only bots with +c flag will accept /dcc chat or /ctcp CHAT.
|
|
|
+ * No static telnet access
|
|
|
+ * Ports opened for /ctcp CHAT are automatically closed after a minute.
|
|
|
+ * Cloaked responses for /dcc chat and /ctcp CHAT
|
|
|
+ * Userfile and other settings are not saved locally.
|
|
|
+ * Bot data (bot.conf) stored [wiki:BotConfig internally in binary]
|
|
|
+ * One binary may contain multiple bots..
|
|
|
+ * One binary may spawn multiple bots..
|
|
|
+ * Each bot gets its own process. (Not emech style or threaded)
|
|
|
+
|
|
|
+## Shells
|
|
|
+ * Bot config is password protected.
|
|
|
+ * Bot automatically sets up a crontab entry.
|
|
|
+ * All bots on the shell go into 1 binary. Each bots spawns its own process.
|
|
|
+ * Bots on the same shell will link to the first bot in the binary (the localhub). The only the localhub links to the actual hubs.
|
|
|
+
|
|
|
+## Botnet
|
|
|
+ * All user/channel settings are shared automatically.
|
|
|
+ * Users need userflag +j to access leaf bots.
|
|
|
+ * Users need userflag +i to access hub bots through telnet or .relay.
|
|
|
+ * Users need userflag +p to speak on partyline.
|
|
|
+
|
|
|
+## Removed eggdrop features ==
|
|
|
+ * Modules
|
|
|
+ * TCL
|
|
|
+ * File area (filesys.mod)
|
|
|
+ * Greet
|
|
|
+ * userflag +f (friend)
|
|
|
+ * userflag +t (botmaster)
|
|
|
+ * userflag +a (auto-op, replaced by +O)
|
|
|
+ * Misc. channel flags
|
|
|
+ * Blowfish
|
|
|
+ * Assoc.mod
|
|
|
+ * Seen.mod
|