Security · Disclosure

Exposing Critical Vulnerabilities in AKTU Exam Evaluation System: From Authentication Bypass to Complete Database Access

By Pratham Vaidya ·Disclosed publicly May 2026 ·Originally reported July 2023 ·11 min read

A sample AKTU answer sheet copy as it appears in the intelliEXAMS portal
Sample AKTU answer sheet from the internet, not from any exploit

I discovered these vulnerabilities in 2023, during my 3rd year of BTech at AKTU (Dr. A.P.J. Abdul Kalam Technical University). For context: I never liked the education system, or the way engineering is taught in most Indian colleges. So even with full root access to the database that stores every student's marks, the thought of touching my own record never crossed my mind.

I had continuous backs through college. Barely cleared them in the final year. But I was never planning to join a company dumb enough to judge me on a college report card over my actual skills, so it didn't matter much to me. I built things, shipped things, broke things on purpose, and that was the education I cared about.

What I'm publishing here is the technical content of a responsible disclosure report I sent to AKTU's senior administration in July 2023. Three years later, the vulnerabilities are still live. So this post is, in effect, a louder second attempt.

How I stumbled into it

It started innocently. I wanted to see one of my own exam answer sheet copies. AKTU runs an online evaluation system where scanned answer sheets are uploaded, distributed to evaluators, graded digitally, and then made available to students on request. The portal that powers all of this is called intelliEXAMS, built by a vendor called MindLogicX. It is essentially the end to end pipeline for e-evaluation of exam copies: scanning, distribution to faculty, online marking, moderation, result generation, and student facing copy delivery.

The intelliEXAMS login page on the AKTU portal
The intelliEXAMS login page used by AKTU

On the homepage there is a small student login box. Out of habit (and a half formed suspicion) I typed an apostrophe into the username field. The server threw back a SQL error in the response body:

Unclosed quotation mark after the character string 'admin'*'.
Incorrect syntax near 'admin'*'.
Browser response showing an unclosed-quotation-mark SQL error
The SQL error returned directly in the browser

That is a textbook signature of a SQL Injection vulnerability. The user input was being concatenated directly into a SQL query against the backend database, with no sanitisation, no parameterisation, nothing. From an attacker's standpoint, that is the front door left wide open.

Burp Suite showing the intercepted login request and SQL error response
Replaying the request in Burp Suite to confirm the injection point

Mapping the attack surface

Before going deeper, I did a quick Google dork to see what else lived on the same software stack. The vendor leaves a very obvious URL fingerprint that surfaces login pages for different roles inside AKTU (student, faculty, evaluator, admin, college-level) and, more worryingly, login pages for many other major Indian universities running the exact same intelliEXAMS deployment. Since the vulnerability lives in the product itself and not in AKTU's specific configuration, the same SQL injection almost certainly works on most of them. I deliberately did not test any other institution, but the blast radius of a single unpatched vendor bug here is enormous: dozens of universities, millions of students, all behind the same broken login page.

I am intentionally not publishing the dork string here, since it is the fastest path to finding still-vulnerable deployments.

Confirming the SQL injection

I saved the login POST request to a file and ran sqlmap against it:

sqlmap -r login_req.txt

sqlmap confirmed the username parameter was injectable through two techniques:

sqlmap output confirming the username parameter is injectable
sqlmap confirming error-based and stacked-query injection

It also fingerprinted the stack: Microsoft SQL Server 2014 behind IIS 10.0, running ASP.NET 4.0.30319. Stacked queries on MSSQL is one of the worst combinations to have exposed, because it lets an attacker chain arbitrary statements after the original one.

Enumerating the databases

Next step, list every database on the server:

sqlmap -r login_req.txt --dbs

The instance was hosting 16 databases. Among them:

sqlmap listing all 16 databases on the AKTU SQL Server instance
All 16 databases hosted on the AKTU SQL Server instance

From the names alone you can guess what is inside: student data, evaluation data, batch processing of result moderation, an entire semester's exam database. I popped a SQL shell with sqlmap and listed tables in AKTUDATA. Tables like AdminUserGroup, AdminUserGroupDetails, AdminUserLogs, AdminUserProfile, ApprovedColleges, AccessPointTimeSpanDetails showed up immediately. The schema was wide open.

sqlmap fetching table names from the AKTUDATA database
Enumerating tables inside the AKTUDATA database

Escalating to an OS shell

On Microsoft SQL Server, if the xp_cmdshell stored procedure is enabled and your DB user is privileged enough, you can execute arbitrary operating system commands on the host. I checked, and yes, it was enabled.

sqlmap -r login_req.txt --os-shell
sqlmap successfully opening an OS shell via xp_cmdshell
xp_cmdshell enabled, OS shell obtained via sqlmap

A working shell on the Windows host. From there I listed the C drive contents and confirmed I was running as a system user with enough rights to enumerate the filesystem and run non-root commands. I did not attempt privilege escalation to SYSTEM or Administrator. The point was already made.

OS shell listing the contents of the C drive on the AKTU host
Listing the C drive of the AKTU backend host from the OS shell

Finding web.config and the database credentials

ASP.NET apps store database connection strings in a file called web.config. From the OS shell I searched for every copy of that file across the D drive:

d: & dir /s web.config
OS shell output listing every web.config file found on the D drive
Every copy of web.config across the D drive

Several copies were returned, including legacy backups going back years. I picked the most recently modified path (the live application) and read it:

D: & cd Application\AKTU\iis & type web.config
Contents of web.config showing the plaintext SQL Server connection string
The live SQL Server connection string sitting in plaintext inside web.config

Inside that file were the live SQL Server connection strings, with server, port, database name, application user, and the password in plaintext. With those credentials, an attacker no longer needs the SQL injection at all. They can connect directly to the database from any IP that can reach the server, using a normal SQL client. Faster, quieter, and harder to detect than a sqlmap session.

I tested the credentials by opening a connection in DBeaver. They worked. I now had a stable, direct, persistent connection to the production database of one of the largest technical universities in India.

DBeaver successfully connecting to the AKTU SQL Server with the harvested credentials
DBeaver connecting directly to the production database with the harvested credentials

The data that was sitting there

I deliberately limited what I queried, only pulling a few records to confirm the data was real and sensitive. Even with that, the picture was bad:

Admin users table from IEDB.dbo.AdminUser with cleartext passwords (redacted)
Admin accounts pulled from IEDB.dbo.AdminUser, passwords stored in cleartext
Faculty and evaluator accounts table with names, employment codes, and cleartext passwords (redacted)
Faculty / evaluator accounts with names, employment codes and cleartext passwords

The database user the application connects with had full rights. Not least-privilege scoped to the few tables it actually needed, full rights on the schema. That meant from a single SQL injection on a public login page, the maximum access I had was effectively:

I stopped there and wrote the report.

What an attacker could actually do with this

The point of a vulnerability report is not the technical novelty, it is the business impact. So I spelled it out:

For a university that issues degrees recognised across India, this is not a theoretical risk. This is the kind of issue that, if exploited by the wrong person, could quietly compromise the validity of an entire exam cycle.

The disclosure, and the silence

I am against cheating, manipulation, and unethical use of access. I did not share these findings with anyone, did not exfiltrate data at scale, and did not sell or post any of it. Instead I wrote a clean VAPT report with reproduction steps, screenshots, redacted proof of access, business impact, and recommended fixes, and I sent it on 15 July 2023.

I found the relevant people on LinkedIn and the AKTU website and emailed:

Screenshot of the disclosure email sent to AKTU on 15 July 2023 with the vulnerability report PDF attached
The disclosure email sent on 15 July 2023, with the full VAPT report attached

What I expected: an acknowledgement, a question or two, and a patch within a reasonable window. Even a one-line "got it, looking into it" would have been fine.

What I got: nothing. No reply. No acknowledgement. No bounty (not that I expected one from a public university, but I asked, politely). Most importantly, no fix. Over the next months I checked occasionally. Same injection, same response, same plaintext credentials sitting in web.config.

I also tried to reach the vendor directly. The bug lives in their product, not in AKTU's configuration, so a single patch from MindLogicX would fix it across every university that runs intelliEXAMS. I sent disclosure messages through the contact channels I could find on their website and via LinkedIn to people listed as engineering and leadership at MindLogicX. Same outcome as AKTU: zero response. Not an acknowledgement, not a "we forwarded this", nothing.

Three years later, in 2026, the underlying vulnerabilities are, as far as I can tell, still exploitable on the same endpoints. MindLogicX is still shipping the same software to the same set of major universities, and none of the institutions I dorked back then appear to have switched stacks.

Why I'm publishing this now

I sat on this for three years because I did not want to be the person who made an already fragile system worse. But last week I read Nisarga's tweet about a vulnerability he found in the CBSE OSM (On Screen Marking) portal, a similar disclosure that only started getting attention after he went public, and it pushed me over the line.

Quiet responsible disclosure assumes the other side is reading. After three years of total silence from AKTU, I think public pressure is now the most responsible thing I can do. Maybe a public post forces someone, the University, the vendor, or a journalist, to push for a fix in days instead of decades.

To AKTU and MindLogicX, the fixes are not complicated:

None of this is novel. All of it is in the original report I sent in July 2023.

A note for students reading this

If you are a student at AKTU, or any institution running intelliEXAMS, your name, enrollment number, marks, and possibly your password have likely been sitting in a database that anyone with a laptop and an afternoon could reach. That is not your fault and there is not much you can individually do about it, except assume the data is already out there and reuse no passwords with any system that touches your university login.

To end it well. I was always the kid who loved breaking toys more than playing with them. I loved tinkering. But after I moved to 11th grade I noticed something shift in the people around me. The other kids got serious. They were preparing for something life changing, something big. When I asked, they said JEE.

And while I saw all these kids studying impossibly hard to pass that one exam that was supposedly going to change their life, I barely saw anyone actually enjoying any of it. Nobody talking about the crazy science behind a problem. Nobody pausing to observe the wonders of the engineering they were trying to get into. They were running behind the illusion of a successful life. And many of them, three years into a degree or wherever they landed, are still running.

I just genuinely enjoyed engineering. I still do. I broke into a university database not because I wanted to game my marks. For me the marks were nothing more than an 8 bit unsigned integer. I did it because somewhere underneath all the result portals and the report cards there was a real system, and I wanted to understand it. The education system actively tries to kill that curiosity. I just managed to save mine. And it is the part I most wish more students around me had fought to keep.

If you are a student at AKTU, or anywhere similar, please do not let four years of mark sheets convince you that your real worth lives on a piece of paper signed by a Controller of Examinations. The institution that prints those sheets cannot even keep them safe. Build things. Break things on purpose. Be honest about what you find. The world outside the report card is much more interesting, and much more forgiving, than the inside of it.


Original report submitted to AKTU on 15 July 2023. No personal data of students or faculty is included anywhere in this article. Credentials and identifiers were redacted from all screenshots in the original PDF and are not republished here. If you are at AKTU or MindLogicX and want to coordinate a fix, please reach me at [email protected]. I don't expect any monetary reward from you.