How To Hack An Chan Op On IRC
How do I hack ChanOp on IRC? Find a server that is split from the rest of IRC
and create your own channel there using the name of the channel you want ChanOp
on. When that server reconnects to the net, you will have ChanOp on the real
channel. If you have ServerOp on a server, you can cause it to split on purpose.
15. How do I modify the IRC client to hide my real username? Get the IRC client
from cs.bu.edu /irc/clients. Look at the source code files irc.c and ctcp.c.
The code you are looking for is fairly easy to spot. Change it. Change the username
code in irc.c and the ctcp information code in ctcp.c. Compile and run your
client. Here are the diffs from a sample hack of the IRC client. Your client
code will vary slightly depending on what IRC client version you are running.
*** ctcp.c.old Wed Feb 10 10:08:05 1993 --- ctcp.c Fri Feb 12 04:33:55 1993
*************** *** 331,337 **** struct passwd *pwd; long diff; int uid; ! char
c; /* * sojge complained that ircII says 'idle 1 seconds' --- 331,337 ---- struct
passwd *pwd; long diff; int uid; ! char c, *fing; /* * sojge complained that
ircII says 'idle 1 seconds' *************** *** 348,354 **** if (uid != DAEMON_UID)
{ #endif /* DAEMON_UID */ ! if (pwd = getpwuid(uid)) { char *tmp; --- 348,356
---- if (uid != DAEMON_UID) { #endif /* DAEMON_UID */ ! if (fing = getenv("IRCFINGER"))
! send_ctcp_reply(from, ctcp-name, fing, diff, c); ! else if (pwd = getpwuid(uid))
{ char *tmp; *** irc.c.old Wed Feb 10 06:33:11 1993 --- irc.c Fri Feb 12 04:02:11
1993 *************** *** 510,516 **** malloc_strcpy(&my_path, "/");
if (*realname == null(char)) strmcpy(realname, "*Unknown*", REALNAME_LEN);
! if (*username == null(char)) { if (ptr = getenv("USER")) strmcpy(username,
ptr, NAME_LEN); --- 510,518 ---- malloc_strcpy(&my_path, "/");
if (*realname == null(char)) strmcpy(realname, "*Unknown*", REALNAME_LEN);
! if (ptr = getenv("IRCUSER")) ! strmcpy(username, ptr, NAME_LEN);
! else if (*username == null(char)) { if (ptr = getenv("USER")) strmcpy(username,
ptr, NAME_LEN);