Comments (7)
I imagine he/she is referring to iosfwd line 464
return (_CSTD strlen(_First));
After the first row in the for loop in libchrome.cpp my VS throws the exception when that line is hit. I'm stupidly new to c++ (usually code in c#) and i'm trying to break down the process but it appears this is causing the chrome issue and i don't know how to understand the whole process/function leading up to the actual error itself
Screenshot - http://prntscr.com/nqopyr
from passcat.
Hi,
could you please send me the name of the source file and the exact code line the application crashes?
from passcat.
Thx I will check it out.
from passcat.
i'll be monitoring this for any updates. I'm curious what the issue is and what the code change will be. Trying to learn c++ and the debugging system for something like this is basically nothing i can understand yet. I think it's related to sqlite but i'm probly wrong lol.
from passcat.
Just a random thing i found during more step by step debugging breaking down what the code does. It looks like when it's outputting the URL result char it cannot convert i think?
std::cout << "URL: " << results[cellPosition] << std::endl;
hits the second time around and then throws the read access violation.
So for my second loop the URL cell position int is 6
int cellPosition = (rowCtr * columns);
which in the debugger returns "", which i would assume means null?
i've added an if(results[cellPosition] != nullptr) to check but it passes that validation.
I also was fooling around with try catch blocks and oddly enough those didn't catch it either, i feel like i'm missing something try to fix/find a fix for it.
This is the output before the binary crashes
URL:
Γ9÷φ�
Username:`
EDIT: it will also sometimes show the correct URL in console but still will fail after username second loop around.
Sorry if this doesn't help but i figured i would share it ¯_(ツ)_/¯
from passcat.
The error seems to come from sqlite3_free_table(results); Removing it fixes it temporarily
from passcat.
The issue is fixed by moving sqlite3_free_table(results);
outside the for loop.
for (int rowCtr = 1; rowCtr <= rows; ++rowCtr) {
int cellPosition = (rowCtr * columns);
std::cout << "URL: " << results[cellPosition] << std::endl;
cellPosition = (rowCtr * columns) + 1;
std::cout << "Username: " << results[cellPosition] << std::endl;
cellPosition = (rowCtr * columns) + 2;
if ((rc = sqlite3_blob_open(db, "main", "logins", "password_value", rowCtr, 0, &blob)) != SQLITE_OK) {
sqlite3_close(db);
return;
}
int len = 0;
if ((len = sqlite3_blob_bytes(blob)) <= 0) {
sqlite3_close(db);
return;
}
if ((block = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, len)) == NULL) {
sqlite3_blob_close(blob);
sqlite3_close(db);
return;
}
if ((rc = sqlite3_blob_read(blob, block, len, 0)) != SQLITE_OK) {
HeapFree(GetProcessHeap(), 0, block);
sqlite3_blob_close(blob);
sqlite3_close(db);
return;
}
sqlite3_blob_close(blob);
DataIn.cbData = len;
DataIn.pbData = (BYTE *)block;
if (CryptUnprotectData(&DataIn, NULL, NULL, NULL, NULL, 0, &DataOut)) {
DataOut.pbData[DataOut.cbData] = '\0';
std::cout << "Password: " << DataOut.pbData << std::endl;
}
}
sqlite3_free_table(results);
from passcat.
Related Issues (6)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from passcat.