Wednesday, August 12, 2009


Yeah, it is true. The BOTS haven't spared Orkut. If you are a frequent user of this Social Networking Site, the fact that Orkut has recently enhanced its security measures might not have escaped your notice. It now asks you for Captcha when you enter any URL in our status message or as part of a scrap. At the same time, if you send an alarming number of Friend Requests in a short span of time, you are asked again for Captcha, for each subsequent Request you send. For those unaware of the terminology, CAPTCHA is the technical term to describe the test where in you are shown an image, consisting of alphabets and numbers (often distorted so as to not look like the ones typed in the usual fonts) and asked to type the same in a text box. Well, Captcha was introduced so as to make sure that the user was actually a real person and not some software program; it was argued that a software program could not identify the characters from an image. As secure as it might sound, it is a fact that programmers/hackers around the world have outsmarted the captcha developers; and the sad truth is, the hackers have been aided by the developers themselves.

Well, I had suspected long ago that there was something fishy about Orkut's sudden interest in its security. However, it was only recently that I found traces of BOT activity in my Network, and began to delve into the subject further. To begin with I received friend requests from people who were already in my friend list. Evidently, their account was being cloned. Then again, I have received a lot of Friend Requests recently from unknown people, all of them with the same message.

Take a minute to notice the short message with the request.
Besides, you get those advertising scraps all the time; it is more often than not BOT activity.

What are BOTS?

Internet bots, are software applications that run automated tasks over the Internet. Typically, bots perform tasks that are both simple and structurally repetitive, at a much higher rate than would be possible for a human alone. If you have chatted on Yahoo, you are sure to have encountered a BOT sometime. Chatting bots can chat. Needless to say these BOTS have a limited vocabulary; they have a fixed set of responses that they send other users. It is pretty easy to tell apart a BOT from a human user merely by interacting with it for 2 minutes; it is bound to make irrelevant comments at some point.

What can BOTS do?
BOTS can be used for commercial purposes, advertising.
BOTS can be for spamming.
BOTS can be used to coordinate and execute an automated attack on networked computers, such as a denial of service attack.
BOTS can be used to bring down a Website's responsiveness by sucking bandwidth by downloading entire web sites and sending automated requests.

There are other capabilities of BOTS but I'd appreciate if you look those up on wiki.

Why Orkut? is a social networking website owned by the industry giant GOOGLE.This means orkut is very big and anyone can take advantage of its millions of users to sell his products and services.

But it is not as harmless as it sounds. Needless to say, your privacy can be invaded by BOTS if they have access to your profile page, your scraps and your images. I've heard of instances where hackers with malicious intentions have grabbed such information about a user and opened bank accounts/ applied for duplicate social security cards with the victims' identites and done similar stuff, cheating them of their resources and often commiting crimes pretending to be the vicim. It can get bad!

BOTS can also be use to install virus or other spyware on your system which can in turn be used to eavesdrop on you and do stuff that you wouldn't want.

How do BOTS get past CAPTCHA?

I've hinted at the answer to this question above. I found this statement on, a software company which specializes in programming BOTS and selling them:

*CAPTCHA Bypasser
We have just teamed up with a third-party CAPTCHA service and integrated their service in all of our bots (optional). You need to buy credits from a 3rd Party website, and just type your user/pass in our software (if you want the software to bypass the CAPTCHAs) and everything is automatic from there - Just like you type the CAPTCHAs manually, the software will bypass the CAPTCHAs. We have added this service in our bots because we know that CAPTCHAs' sucks :-) And on request of lots of our loyal customers, just like YOU :) Thank you.

It comes as no surprise.The Great Wall of China was so designed that it could not be breached. But it was breached only because the guard was bribed.

What can you do?

BOTS will be there; there's nothing we users can do about it. Only the website developers can do anything in this regard. We can only exercise caution when we accept friend requests from people we don't know. We must not put confidential content about ourselves that can be used to clone us. We must not click on links we don't trust. What else?

Monday, August 10, 2009

The Easy Proxy Switching Tool for Firefox : Multiproxy Switch

This document is particularly useful for people in Institutions where multiple Proxy Servers are deployed, for instance Engineering Colleges. In such places, often we feel the need to change the proxy configuration several times in the course of a small time interval primarily due to either or all of these reasons:

i)One proxy doesn't let you open Youtube or Rapidshare (or any other website for that matter) while the other does.

ii)The proxy server you're using is currently down.

iii)Certain Websites are cached on one particular proxy server so they're faster if accessed using that Proxy Server.

iv)You like switching between proxies and you do it for the heck of it.

As the title might have suggested, this post is about using an addon in Firefox to do the task of switching proxies easier. If you are curious enough, you might've already googled on this topic or searched for Firefox addons from the Firefox>Tools>Addons applet. There are a number of addons to achieve the task at hand, namely SwitchProxy, MM3-Proxy Switch, Quick Proxy, Foxy Proxy, xyzProxy, Ticon, ProxyFlag, ProxySwitch; the list is quite long. The particular addon I use and I recommend using is “MultiProxy Switch”, and I list the reasons for this choice I made:

i)Most of the addons in the list are meant for only one proxy and they merely toggle it on/off which makes them useless for use in a multiproxy environment.

ii)SwitchProxy, perhaps the uncrowned king for achieving the task has not been updated since 2007. Firefox, on the other hand has been evolving rapidly ever since and its latest version 3.5.2 hit the world recently. Needless to say, SwitchProxy is not compatible with the later versions of Firefox.

iii)Most other addons are also incompatible with the latest Firefox.

iv)Foxy Proxy performs the task but it is a pain in the butt to configure it properly. It has no No-Proxy list which you can edit; rather it asks the user to manually feed in regular expressions/ wildcard sequences of instances of URLs and black-list/white-list them. This is a cumbersome task and not all of us are comfortable with wildcards and regular expressions. After spending half an hour trying to add the blacklists, I was frustrated at the sight of some websites being refused by the proxy server.

v)Multiproxy Switch is easy to manage, easy to configure.

vi)Multiproxy Switch is an experimental addon. Experimental add-ons are newer add-ons which have not yet undergone our public review process. They are allpha or beta versions. I like to try out new stuff; It is only by experimenting do you get to know the rules of the game.

Doing It. Adding the Addon.

Step 1: Go to

Step 2: Check on Let me install this experimental add-on. Hit Add to Firefox.

Step 3: Restart Firefox to complete the installation.

Configuring it. Adding Proxies.
Ideally, after the installation, you must have a Multiproxy Toolbar below the address bar and a button in your Status Bar.
I personally don't like to dedicate my browser space to addons, so I use the smaller interface: the Status Bar Button and hide the Multiproxy Toolbar. You could let the Toolbar stay if you wish or right click on the toolbar and uncheck it, to hide it. You can see it again by right clicking near the Menu Bar and checking it again.

Multiproxy ToolBar:

Statusbar Menu:

Now, to add proxies, select "Manage Proxies" in Toolbar or Statusbar menu, you will see this window:

Click Add Button.

Now, you fill in the specifics and hit OK.

Switching Between the Proxies.

After you add the proxies, you will see them in the Status Menu and Toolbar Menu, just click one to use. In Toolbar Menu, select the proxy then click "Apply" button to use.


Monday, July 6, 2009

Accessing Operating System Environment Variables in Apache (Fedora)

I was facing the problem of accessing the Operating System Environment Variables in Apache. After searching a lot, I got to know that there are environment variables in apache too. Although these variables are referred to as environment variables, they are not the same as the environment variables controlled by the underlying operating system. Instead, these variables are stored and manipulated in an internal Apache structure.

For setting the operating system environment variables to be used by apache, we will export these variables to the apache server when it starts. The procedure is as follows :

0. Switch to root.

1. Open /etc/init.d/httpd in vim

vim /etc/init.d/httpd

2. You will find following lines

# Source function library.
. /etc/rc.d/init.d/functions

Open /etc/rc.d/init.d/functions in vim

vim /etc/rc.d/init.d/functions

3. You will find following lines

# Set up a default search path.
export PATH

Now append whatever environment variables you want to set and accessed by apache.


export VAR

For example,


You could have added these lines anywhere in the file.

4. Save the file and restart the apache server.

/etc/init.d/httpd restart

Hope it helps. I will add the fix for Ubuntu soon.

Sunday, June 28, 2009

SVN Proxy Settings

Subversion (SVN) is a version control system used to maintain current and historical versions of files such as source code, web pages, and documentation.

If you are behind a proxy you will have to set the proxy before using svn.

The procedure for the same goes as follows :

1. Open "servers" file located in ".subversion" directory in your home directory.

vi ~/.subversion/servers

2. You will find following lines of code located in the file

# http-proxy-exceptions = *,
# http-proxy-host =
# http-proxy-port = 7000
# http-proxy-username = defaultusername
# http-proxy-password = defaultpassword

Set the appropriate values and remove the '#' from the beginning. Make sure you don't leave any whitespaces at the front of the lines being edited.

After editing the code will look like

http-proxy-exceptions = *,
http-proxy-host =
http-proxy-port = 7000
http-proxy-username = username
http-proxy-password = password

3. Save the file and exit.

You are now ready to use svn.

Friday, June 26, 2009

Setting NumLock on automatically in Fedora

The NumLock is not activated by default at start-up (in FC-9/10). I am not sure of the fact in other distros. Everytime when the computer starts, you have to manually activate the NumLock key.

The following solution works :

Execute the following commands as root in a terminal.

1. Install numlockx

yum install numlockx


Install using numlocx rpm.

rpm -ivh numlockx*.rpm

2. gedit /etc/gdm/Init/Default

3. At the end of the file you will find a line like

exit 0

Above this line add the following code

if [ -x /usr/bin/numlockx ];
then /usr/bin/numlockx on

4. Save the file and restart the computer.

You will find the NumLock activated by default at startup.

Wednesday, June 17, 2009

Booting Windows From Grub Menu

Many of you have tried installing Fedora or Ubuntu on your system. It gets installed very gleefully and when asked to reboot , you try booting to windows and it does not boot. Plain as that, you think that you have lost Windows completely , probably due to some wrong selection of drive while installing Linux.
But the battle is not yet lost. You can still boot windows from the grub command line. The thing is as simple as the following four commands-->
  1. grub> rootnoverify (hd0,1)
  2. grub> makeactive
  3. grub> chainloader +1
  4. grub> boot
Then again as I once faced the problem myself , the windows on your pc may not always be on the partition (hd0,1). In my case it was (hd0,4).So incase you have no idea where to find out where the Windows is installed , you can always open the grub.conf file in linux to see it or as I did in my case I tried hit and trial to find out it was 4 (the magic number).

This has worked for me everytime I have encountered this problem and I just hope It works for you too!.

Configure BSNL EVDO DATACARD on Ubuntu

Since BSNL has released its EVDO internet accessing data card, it has gained a lot of popularity amongst the users. Needless to say people may face many difficulties configuring it for ubuntu. But then again, it's these challenges that keep the linux users up and moving.

Cutting straight to the point, configuring it for ubuntu may be as simple as the following four steps:
1.In superuser mode, type lsusb at the shell prompt.
root@santosh-laptop: lsusb.

This will list all the usb ports on your pc.

2.Then at the shell prompt type in the command

If this works, it will say modem detected at some port.But life again ain't so easy.It may well not recognise any modem and give a output something like below:

Now to overcome the problem you have to make the following changes:

1.Remove comment on the below lines in /etc/init.d/
mkdir -p /dev/bus/usb/.usbfs
domount usbfs '''' /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
ln -s .usbfs/devices /dev/bus/usb/devices
mount –rbind /dev/bus/usb /proc/bus/usb.

Note: The above lines will be found in the do_start() function.

2. Now type in the following command:
modprobe usbserial vendor=0x05c6 product=0xfffe

Now the vendor and the product id may be different for your data card. You have to find that out for yourself.

Hint: These numbers were listed in my lsusb output ---> 19d2 and fffe. Just add 0x before them to make them hexadecimal.

3. Now again type in the command wvdialconf at your shell prompt.This will edit the file /etc/wvdial.conf. Open it using any editor and make in the following changes:
type in--> Stupid Mode = 1 at the end of this file.
Also type in the username and the password infront of the username and password row. Type in your phone name as #777.

4.Now type in the command wvdial at the shell prompt:

Hurray !! your net has been connected and it looks something like this:

Acknowledgement: Thanks to Santosh Mukherjee ( for writing this post.

Thursday, June 4, 2009

Python ElementTree Fix for Ubuntu

Did you face the following unpleasant situation?

>>> import elementtree
Traceback (most recent call last):
File "", line 1, in
ImportError: No module named elementtree

In case you've installed the elementtree package correctly
(python-elementtree) and you're using Ubuntu,the following
solution will most probably work:

instead of import elementtree, use
import xml.etree.ElementTree

( I believe you must've already figured out the cause of the import
failure and why the solution works.
In case you haven't, read on.
The import failure is due to the directory structure of the
elementtree files being different in Ubuntu. Usually the python
import modules are located in /usr/lib/python
The elementtree import file ( in Ubuntu however
is located at the path
Hence the above change in the import parameter is necessary )

Thursday, May 28, 2009

Cure Of The Notorious Ubuntu futex_wait Bug

It all started two months back, when DC++ suddenly stopped working on my Ubuntu 8.10 - the Intrepid Ibex. Each time I tried running it, it would hang : the Interface Window would turn gray and not respond. I'd have to use the Force Quit application or kill the process from the System Monitor list of processes. I tried reinstalling DC++, but it didn't solve the purpose. Soon other programs caught the infection and started exhibiting the same strange behaviour : Firefox, Gnome-do, EOG, python, and gvfs-fuse-daemon would hang at different times without issuing any warning. One day I noticed - in the Waiting Channel tab of the System Monitor - that they had a common waiting channel, “futex_wait”. I looked at the futex man page and learnt that futexes ( or better Fast Userspace muTexes ) were semaphores or mutex locks provided by Ubuntu to allow threads to work concurrently. The implications were clear : these multi-threaded applications were waiting on a futex and the duration of the wait indicated a deadlock.

The book “Operating System Principles” by Silberschatz, Galvin and Gagne says that in most Operating Systems, the method of handling deadlocks is to ignore deadlocks altogether and pretend that they never occur in the system. Further, it says that both Windows and UNIX use this solution. I researched a bit on the Internet and found that indeed it was a bug in the latest Ubuntu 2.6.27-* Kernels and the Ubuntu community was working on it to make sure the newer kernels don't fall prey to this problem.

I had learnt to live with the shortcoming until today when luckily I found a workaround for the problem. It turns out that switching off the "Assistive Technologies” does the trick.

Go to System > Preferences > Assistive Technologies
uncheck the "Enable Assistive Technologies" options.

Wednesday, April 15, 2009

Firefox Memory Hacks

Firefox is by far the most popular browser today because it is fast and provides ample amount of options.

But we can enhance the Speed and reduce the Memory Consumption by using some smart tricks. While performance is generally good for single – page browsing but when loading multiple tabs (> 10 ) with loads of supporting content like large images, huge number of thumbnails and other such things , the speed reduces considerably and the Memory consumption abnormally grows up.

In this section we'll try to reduce the memory consumption in such cases primarily by adjusting and changing key hidden preferences.

A Note: While these hacks may reduce your memory consumption a lot and hence help in speeding up the machine but they are certainly away from Industry Standards.

Reducing RAM Usage.

You might have noticed that when Firefox is minimized or not used for a long time then it's memory Consumption doesn't reduce, in fact it increases (at times by huge amounts).

On Windows, when a program is minimized and not used for long time then Windows swaps out the RAM memory used onto the disk, so that other program might use RAM. But Firefox, by default, doesn't allow Windows to swap it out and hence the memory consumption increases.

Now we can reduce the RAM usage by performing following steps –

  • Open a new tab in the Firefox and type "about:config" , without quotes, and hit enter. A huge list will appear.
  • Now Right – Click and then select New -> Boolean.
  • Type "config.trim_on_minimize" and press enter. Then in the new window that appears select "true".
  • Restart the Browser.

Setting the value of "config.trim_on_minimize" to true allows Windows to swap out the memory when the program is minimized.

Check out the Difference! It is quite large.

Play with Cache Memory

1. Firefox utilises a cache memory to store certain visual items like images, thumbnails etc. so as to enhance the speed.

Now open a new tab in Firefox and type "about:cache" in it and hit enter. You will see a page describing the memory and disk cache statistics. Click on "List Cache Entries" link in the "Memory cache device" section and you will see all the images caches and their details.

Now you can change the value of both Memory Cache and Disk cache according to your need.

Want to Save Memory or Increase Speed ?

Following table gives the default memory allocation –

Installed Ram(MB)

Automatic Cache Allocation(MB)

















Now if you want to increase speed, then enhance the Amount of Memory and if you want to save memory then reduce the amount of memory. You can change the memory by performing following steps -

  • Open a new tab in the Firefox and type "about:config" , without quotes, and hit enter. A huge list will appear.
  • Now Right – Click and then select New -> Integer.
  • Type "browse.cache.memory.capacity" and press enter. Then in the new window that appears , type the desired value in Kilo Bytes (e.g set it 32768 which is equivalent to 32MB )
  • Restart the Browse

  • Warning - Don't Increase it too much, else it might result in some unexpected results!

    In a way exactly similar to Memory Cache Capacity, we have Disk Cache Capacity and you can modify that too by the same process as above.

    Just change "browser.cache.memory.capacity" to "browser.cache.disk.capacity" in the second step.Although it is better not to change it, as it has no real affect on speed and as well as RAM memory consumption.

    Note: For the above two to work, make sure that "browser.cache.memory.enable" is set to true.

    2.Well, if you are really short of memory and are ready to sacrifice a SMALL amount of speed for it , then following two hacks will prove quite useful –

    Perform the Following steps -

    • Open a new tab in the Firefox and type "about:config", without quotes, and hit enter. A huge list will appear.
    • Now Right – Click and then select New -> Boolean.
    • Type "browser.cache.memory.enable" and press enter. Then in the new window that appears select "false".
    • Restart the Browser.

    After doing the above steps Firefox won't store decoded images, chrome (application user interface elements) and secure pages in memory.

    Now Feel the Difference in Memory Consumption!

    3.Now the Final Hack of this post. Perform the Following steps –

    • Open a new tab in the Firefox and type "about:config", without quotes, and hit enter. A huge list will appear.
    • Now Right – Click and then select New -> Integer.

    • Type "browser.sessionhistory.max_total_viewers" and press enter. Then in the new window that appears put 0.
    • Restart the Browser.

    While using internet, Firefox caches your previous pages to make your internet browsing faster. But in some cases this is just complete waste of memory. After above hack Firefox won't cache your previous pages.

    Note: It DOESN'T save a very large amount of memory and reduces speed by a whisker, so worth if you don't have a large RAM.

    Hope you enjoy the hacks and utilize them to the best possible extent.

    Sunday, April 12, 2009

    Selecting a block of text in Microsoft Word

    Have you ever tried selecting a rectangular block of text in Microsoft Word as shown below :

    The trick is to press 'Alt' key and then select a piece of text. This enables you to select a rectangular block of text.

    The selected text can be cut/copied in the usual way.

    Friday, April 10, 2009

    Open Multiple Homepages in Different Tabs in Mozilla Firefox

    I was looking to achieve this on my Firefox in Ubuntu. Initially I was looking for some addon which could do this for me,at one point Juneja and I thought about writing a plugin which could bring this about. But luckily I found a trick that worked. I've seen it work on Firefox in Windows and Ubuntu.

    The trick is,

    In Ubuntu:
    Go to Edit>Preferences>Main
    In Windows:
    Go to Tools>Prefences>General

    Now in the Homepage text area,put the URLs you want to open simultaneously at Firefox startup, using '|' as a separator.

    For clarity, see the screenshot below

    Setting up a BroadBand Connection on Ubuntu

    This post is for Ubuntu Users who wish to set up a BroadBand Connection on their systems.

    step 1-> connect the broadband modem to your laptop using the ethernet cable

    step 2-> now open the terminal window. in the terminal type :

    sudo pppoeconf

    step 3-> a text based menu program is activated which will guide you through the next steps, which are :
    1. Confirm that your Ethernet card is detected. ( choose yes wherever u can )
    2. Enter your username (this is the username provided by your Internet Service Provider)
    3. Enter your password (this is the password provided by your Internet Service Provider)
    4. If you already have a PPPoE Connection configured, you will be asked if it may be modified. ( choose yes here too )
    5. Popular options: you are asked if you want the “noauth” and “defaultroute” options and to remove “nodetach” - choose Yes.
    6. Use peer DNS - choose Yes.
    7. Limited MSS problem - choose Yes.
    8. When you are asked if you want to connect at start up.(Choose no if u wish to connect manually. Choose yes otherwise )
    9. Finally you are asked if you want to establish the connection immediately.

    The job’s done. If you chose Yes in the last step, start using the connection.

    If you chose No, you’ll have to manually establish the Internet Connection.


    in the terminal type command :
    sudo pon dsl-provider


    in the terminal type command :
    sudo poff dsl-provider

    If you’ve been using Internet via a Proxy Server, you might have to disable the Proxy in your Browser.

    Tuesday, April 7, 2009

    Wireless Problem on Fedora 8/9/10

    This post is for those people who are not able to use wireless on Fedora 8/9/10. The problem arises in computers with Broadcom wireless cards as the drivers are not packaged with the Operating System. I first encountered this problem on Fedora 9. That time I had to use NDISwrapper to wrap the wireless driver. That was quite a tedious task.

    After moving to Fedora 10, I had to again set up the wireless drivers. But what I found was that RPM's are available for Broadcom 802.11 STA Wireless Driver from for Fedora 8, 9 and 10. It means that you now have an easy way to set your wireless working.

    To install the drivers using yum, follow the following steps :
    1. Enable the rpmfusion non-free repository and rpmfusion non-free repository.

    2. su -c 'rpm -Uvh'

    3. Update & Install the driver.
    4. su -
      yum update
      yum install broadcom-wl
    5. The installation is done. Reboot your computer. Enable Network Manager and you will see your wireless device working.

    P.S. The above procedure is applicable to Broadcom's BCM4311-, BCM4312-,BCM4321-, and BCM4322-based wireless card.

    You can check your wireless card type by typing 'lspci' command.
    If the last line of the output matches the following line, then you are
    having a Broadcom based wireless card.

    0b:00.0 Network controller: Broadcom Corporation BCM43** 802.11b/g (rev 01)

    Gmail : Email Galore

    Recently while logging in to my gmail account I accidentally put an extra dot in my username. I was about to hit the stop button to rectify the typing error but I realized that even with “ the error” my gmail page loaded. Later I tried the same trick, putting the dot elsewhere in the username string; it worked still. I repeated the exercise several times, placing as many dots as I wanted and at random positions in the username string. It worked each time. Next I sent myself an email from my yahoo account to my gmail account, putting extra dots in the recipient gmail id. As expected, the mail was received.

    Apparently the gmail server neglected any dots in the usernames. This was news. That meant any gmail user had infinite number of email ids, all sharing the same alphabetical substring. I searched on google to find out if it was aware of the 'bug'. I found out it was no bug, rather a policy. Further, I learnt about a similar policy called the + addressing. This allows emails to be sent to where the actual email id is . “ExtraText” refers to any random string. For instance you could send me a mail on in place of the plain I would receive the mail and you would have your fun. But before you try this with your Boss's mail id, know about the catch. The catch is: by reading the details of the email, the recipient can know the exact username string the mail was addressed to. Even the best of rogues leave trails!! Jokes apart, this can be used as a means of filtering mails into appropriate folders. Say, tomorrow is 14th February. I send mails to 100 hot girls and ask them to mail their rendezvous times to . I can now filter all mails addressed to and label them accordingly. Sounds great, isn't it?

    Try these tricks.