My Projects

You have reached the list of my projects (Mostly weeked projects)

Click the arrows to navigate. Hugs or Bugs Ping me on twiiter!

Lets Phish

Deployed publicly, LetsPhish is a google chrome extension meant to protect you from phishing!


Problem statement: Most (Almost all ) of the phishing pages have SSL certificates issued from lets encrypt. The green padlock sign near the URL bar makes it difficult for the inexperienced users to tell a phishing page from a legit one.
In attempt to solve this problem, I built a chrome extension which actively checks if the SSL certificate for the webstite browsed is issued by letsencrypt. If it is so then it checks if there are any password fields. If there are any then an alertbox is shown in order to notify users of possble phishing. While this is prone to false positives, for normal users it is a must have extension. I plan to build the Firefox and Safari version soon.
The Chrome extension simple comprised of the logic to send the url of the current site to the backend server to check for the issuing authority of the SSL certificate. It only comprised of javascript.
The Backend code comprised of the NodeJS server as well as a bash script to execute the sslclient to get the SSL certificate related information. All this was setup on a server by Digital Ocean.

Visit https://letsphish.com for more..

Identico

Initially Deployed, Currently down due to legal issues is an Identitiy Verification System for the citizens of India


Problem statement: In India, documents like PAN card, Voter ID card, Driving License and Aadhar card are the most common ones for Identity Verification. However, apart from government and other private organisations, the common man doesn't have access to the resources to do so. Example Scenario: You Hire someone for a short duration of time. He gives a copy of his PAN card as identity proof. Now essentially PAN card is just a piece of paper, and unless the information printed on it is verified, it doesn't serve the purpose of authentication.Same is the case in trains when we produce one of these documents as identity proof. However, hidden deep down, on the Income-tax website there is a form to retrieve information by entering the PAN Number you can retrieve basic information about the owner, like his First and Last name along with Date of Birth. Similar was the case with VoterID, Driver's License. Problem Statement: Automate the retrieval of data corresponding to the input DL number, PIN number or Voter ID number, by Writing scripts to automate the requests as well as solve CAPTCHA implemented on the pages in order to retrieve response data. Solution: IDENTICO was an API based web platform, meant to empower the common man by enabling him to easily verify any of the above-mentioned documents with ease. To achieve this, the backend was written in nodeJS with several helping packages like Express and Cheerio. To automate Audio CAPTCHA, IBM WATSON SPEECH to TEXT was used and to automate Image-Based CAPTCHA, the TESSERACT OCR library was used. 

AutoVoter

Used only once, auto voter was a python code which enabled increasing vote count in an online competition. Problem Statement : There was an ongoing online competition which required a link to be shared on which people could vote without any kind of signup, but the limitation was it only accepted one vote from one IP Solution: A python script was written to make the HTTP request to increase the vote count by 1. Additionally a few proxy_db sites were scraped for a list of running proxy servers. After collecting around 1000 Proxy servers the script was modified to make every request with a new proxy server.

SRM Result Bruteforce

SRM Result Brute-force is a python script which enables anyone in SRM University to view the result of anyone else, just by knowing his register number (which is easily available) Problem Statement: In SRM University, the Semester results are available on a page which takes 3 parameters to show the result, those being Register number, Date of birth and captcha. The python code written by me took the register number as the input and brute forced the birthday in the probably range and solved the image captcha using tesseract OCR framework. Even though the script took time depending upon the distance between the actual birthdate and the one the script started with, the accuracy was 100%. ( The captcha accuracy was much less).

Attrack

Attrack was a search engine style ATTENDANCE tracking web application. Problem Statement: The new attendance portal was under construction, and the beta didn’t require any kind of authentication. There was a super slow lazy loading dropdown box from which we had to wait till our register number showed up. After clicking, we were redirected to an ugly looking page with a simple table. The goal was to simplify this process and produce a page with better visuals. This was solved by building a. Backend code using nodeJS, Cheerio,Express and other node packages in order to dynamically create a request not he basics of user input, acquire the response from the official site and scrape the page for values and produce a page with a better looking UI ( FLAT design animated colourful graphs.

Academia api

Academia API was the unofficial API for the student portal. It provided all the information in an easy to consume JSON format. Problem Statement : The official college portal, didn’t have any mobile application or official API, and even the HTML was too unstructured. There was a need for the API in order to assist the mobile application developers in the University to build apps on top if it. This problem was solved by taking the username and password as input and making all the requests on the fly, scraping the relevant fields , preparing and sending the response as JSON.

Onion link classifier

Problem Statement : Working onion links are hard to find, A friend of mine came across a long list of .onion links, which was virtually impossible to check manually for working links. This problem was solved by the script which visited each of the links in the list using the socks interface provided by the instance of the TOR browser running and scrape the tittle of the links which worked, and store the link and the title in a CSV file for further used.

Mini Projects

Meta Data Extractor : Script to retrieve the Title, Description and Featured image from meta tags of any given url.
Ubuntu goal notification: Script to provide a desktop notification in case of any score change in a game of football. Tracked from goal.com this is my first python script.

Obstacle Avoiding bot.

This bot can move around avoiding obstacles using its IR sensors. Problem Statement : To build a physical bot which can move around avoiding obstacles. This was solved by using a IR sensor and Motor driver driven bot controlled by Arduino. Not very feature rich but a good start to hardwares.