During the master's at Stony Brook I worked in Secure Sytems lab of a new binary instrumentation technique
that provides a robust and efficient technique for instrumenting binaries. Our work was published
in USENIX Sec 23. You can find the paper
here.
For my master's thesis I worked on developing a novel shadow stack implementation that can be used to
protect againts Control flow hijack attacks like ROP attacks that target the return address. You can
read the thesis here.
As an exercise to learn Rust I am writing an ELF binary parser in Rust. Currently it only support parsing of
header, program header and section header.
Link to the source
A simple react app that deals a 5 card hand.
Link to the source
This is a file system developed on top of WrapFS, which is a
pass-through file system for Linux. This was developed as a kernel lodable module written in Linux
kernel style C, when mounted for a particular directory it enables a trash-bin like functionality.
Whenever a file is deleted it would encrypt it and move it to a trash folder. This is achieved by
leveraging WrapFS’s concept of upper and lower level objects. VFS layer would think that WrapFS
is the actual filesystem while the filesystem like Ext4 would think of WrapFS as the VFS layer.
This added layer of indirecction allows us to add or modify the filesystem objects.
Developed a data visualization dashboard using D3 Javascript library. It was used to analyze various development factors from United Nation datasets. The
dashboard made use of bar chart, time series, choropleth, PCP and MDS.
Link to the video
It is a safe execution program that makes use of library interception to disallow any application to make direct system calls. Instead it sends out the system call information to a delegate process which then checks the system call parameters to a pre-defined policy according to which the system call is then made by the delegate process and the return value is sent back to the application making the system call, the system call parameters and file descriptors are passed between the library and the delegate process thought Unix domain socket.
A ptrace based utility that transparently extends an application with the ability to handle urls, made use of ptrace as a mechanism to intercept system calls that are made to access and open a file, if the file name is a url then the file was downloaded to the system and then the the system calls were made to that downloaded file
A website written to be simple and functional, written in plain ascii for portability. To go along with that
a ncurses program written in C, which you can use from the link below.
Link to the source
A simple program to print out common guitar chord shapes right in your
terminal. Maybe posix compliant, I am not too sure about that.
Link to the source
A small little POSIX compliant shell script to print out useful/unuseful information in your terminal.
Will be expanding this till it's maturity to keep an eye on that!!
Link to the source
Distressed with the increasing traffic in my city, I decided to undertake a project that
could have some value in the future. We Started off by conducting literature survey,
soon to discover that there has been some solid work done in the field. We
expanded our research to be more in line with the Indian Traffic conditions and the
results we were able to achieve were significant. We achieved a 74% performance
improvement over a standard traffic light.
Here is the link to the source
These are theme-ing apps that work alongside the Substratum theme engine for
Android to change and customize navigation and status bar of an android device.
I made them possible using guides from the theme community, Android Studio,
GIMP, Adobe Illustrator and JAVA.
The Apps are called “[Substratum] Navigate theme” and “[Substratum] Status
theme”.
“Navigate” theme has crossed 300K downloads on Google Play Store.
Link to play store