[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fioUZ8d6wS2iMwL2Oo0_apbc-n4VSoLoa0tbedDz4O6M":3},{"id":4,"question":5,"answer":6,"answerHtml":7,"slug":8,"keywords":9,"article":10,"status":34,"aiModel":39,"aiConfidence":39,"updatedAt":51,"createdAt":51,"_status":50},417,"How does 360 Speed Browser store saved passwords compared to Google Chrome?","360 Speed Browser, like Chrome, uses the Chromium kernel and stores encrypted passwords in an SQLite database file named `Login Data`. The key difference is the folder path: Chrome uses `AppData\\Local\\Google\\Chrome\\User Data`, while 360 Speed Browser uses `AppData\\Local\\360Chrome\\Chrome\\User Data`. The data structure and decryption method are identical, so a LaZagne module for Chrome can be adapted simply by changing the path. For a deeper look at Chrome password extraction, refer to [Penetration Techniques - Offline Export of Passwords Saved in Chrome Browser](\u002Fnews\u002Fpenetration-techniques-offline-export-of-passwords-saved-in-chrome-browser).","\u003Cp>360 Speed Browser, like Chrome, uses the Chromium kernel and stores encrypted passwords in an SQLite database file named `Login Data`. The key difference is the folder path: Chrome uses `AppData\\Local\\Google\\Chrome\\User Data`, while 360 Speed Browser uses `AppData\\Local\\360Chrome\\Chrome\\User Data`. The data structure and decryption method are identical, so a LaZagne module for Chrome can be adapted simply by changing the path. For a deeper look at Chrome password extraction, refer to [Penetration Techniques - Offline Export of Passwords Saved in Chrome Browser](\u002Fnews\u002Fpenetration-techniques-offline-export-of-passwords-saved-in-chrome-browser).\u003C\u002Fp>\u003Cp>\u003Ca href=\"\u002Fnews\u002Fcustom-script-development-in-the-local-password-viewing-tool-lazagne\">Read the related One Day Sec article\u003C\u002Fa>\u003C\u002Fp>","how-does-360-speed-browser-store-saved-passwords-compared-to-google-chrome-1777483895956","360 Speed Browser, Chrome, password storage, Login Data, SQLite, decryption, browser comparison",{"id":11,"title":12,"slug":13,"description":14,"content":15,"contentHtml":30,"cover":31,"author":32,"views":19,"readingTime":33,"status":34,"publishedAt":35,"seo":36,"tags":41,"qaPairs":42,"meta":47,"updatedAt":48,"createdAt":49,"_status":50},105,"Custom script development in the local password viewing tool LaZagne","custom-script-development-in-the-local-password-viewing-tool-lazagne","Learn to extend LaZagne with a custom Python script to export passwords from 360 Speed Browser, including bug fixes and EXE conversion steps.",{"root":16},{"type":17,"format":18,"indent":19,"version":20,"children":21,"direction":29},"root","",0,1,[22],{"type":23,"format":18,"indent":19,"version":20,"children":24,"direction":29},"paragraph",[25],{"mode":26,"text":27,"type":28,"style":18,"detail":19,"format":19,"version":20},"normal","\u003Chtml>\u003Chead>\u003C\u002Fhead>\u003Cbody>\u003Ch2>0x00 Preface\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>LaZagne is an open-source application for retrieving numerous passwords stored on local computers.\u003C\u002Fp>\u003Cp>Since each software stores passwords differently (plaintext, API, custom algorithms, databases, etc.), this tool employs various methods to obtain software passwords. Currently supported software is shown in the figure below.\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fuploads\u002Fdocx_image_1770017366057_0_1f605d9687.jpeg\">\u003C\u002Fp>\u003Cp>Developed in Python, the tool is easy to read and maintain. Therefore, this article attempts to extend it by writing a Python script to export passwords from 360 Speed Browser and detailing the script development process.\u003C\u002Fp>\u003Ch2>0x01 Introduction\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>This article will cover the following:\u003C\u002Fp>\u003Cul>\u003Cli>Fixing bugs in LaZagne\u003C\u002Fli>\u003Cli>Developing a script to export 360 Speed Browser passwords\u003C\u002Fli>\u003Cli>Converting Python scripts to exe using py2exe\u003C\u002Fli>\u003Cli>Converting Python scripts to exe using PyInstaller\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>0x02 Bugs in LaZagne\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>\u003Cstrong>LaZagne Download URL:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>https:\u002F\u002Fgithub.com\u002FAlessandroZ\u002FLaZagne\u003C\u002Fp>\u003Cp>Python version: 2.7\u003C\u002Fp>\u003Cp>After downloading, execute \\LaZagne-master\\LaZagne-master\\Windows\\laZagne.py\u003C\u002Fp>\u003Cp>Error reported, missing third-party extension packages pyasn1 and psutil\u003C\u002Fp>\u003Cp>\u003Cstrong>Install third-party extension packages:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Python27\\Scripts\\easy_install.exe pyasn1`\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Python27\\Scripts\\easy_install.exe psutil\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>Execute \\LaZagne-master\\LaZagne-master\\Windows\\laZagne.py again\u003C\u002Fp>\u003Cp>Still reports an error, prompt as follows:\u003C\u002Fp>\u003Cp>ImportError: No module named memorpy\u003C\u002Fp>\u003Cp>~~After searching, there is no third-party package named memorpy. It is suspected to be a typo, and the correct one should be memory_profiler~~\u003C\u002Fp>\u003Cp>~~\u003Cstrong>Install the package memory_profiler:\u003C\u002Fstrong>~~\u003C\u002Fp>\u003Cp>~~C:\\Python27\\Scripts\\easy_install.exe memory_profiler~~\u003C\u002Fp>\u003Cp>~~And modify the source file:~~\u003C\u002Fp>\u003Cp>~~Path: \\LaZagne-master\\LaZagne-master\\Windows\\lazagne\\softwares\\memory\\memorydump.py~~\u003C\u002Fp>\u003Cp>~~Line 14: from memorpy import *~~\u003C\u002Fp>\u003Cp>~~Change to~~\u003C\u002Fp>\u003Cp>~~from memory_profiler import *~~\u003C\u002Fp>\u003Cp>~~Successfully executed laZagne.py, as shown in the figure below~~\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fuploads\u002Fdocx_image_1770017392953_1_08ebc85288.jpeg\">\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>After changing to memory_profiler, although compilation succeeds, an error occurs when running the memory module, indicating that Process does not have a list method (bug discovery and fix method from @burnegg)\u003C\u002Fp>\u003Cp>Modification approach:\u003C\u002Fp>\u003Cp>Revert to memorpy\u003C\u002Fp>\u003Cp>Installation:\u003C\u002Fp>\u003Ctable>\u003Ctbody>\u003Ctr>\u003Ctd>\u003Cp>C:\\Python27\\Scripts\\pip.exe install https:\u002F\u002Fgithub.com\u002Fn1nj4sec\u002Fmemorpy\u002Farchive\u002Fmaster.zip\u003C\u002Fp>\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003Ch2>0x03 Developing Scripts to Export 360 Speed Browser Passwords\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>The original project suggests referring to the following for developing custom scripts:\u003C\u002Fp>\u003Cp>https:\u002F\u002Fgithub.com\u002FAlessandroZ\u002FLaZagne\u002Fwiki\u003C\u002Fp>\u003Cp>However, this webpage does not provide guidance. After analyzing the code structure, the following modification method was derived\u003C\u002Fp>\u003Cp>\u003Cstrong>360 Speed Browser:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>360 Speed Browser uses the Chrome kernel, and it is speculated that its password storage function is similar to Chrome's. Therefore, 360 Speed Browser was used as the test subject\u003C\u002Fp>\u003Cp>360 Speed Browser provides password saving functionality, as shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fuploads\u002Fdocx_image_1770017431657_2_3b23addcf4.jpeg\">\u003C\u002Fp>\u003Cp>Testing revealed:\u003C\u002Fp>\u003Cp>The file path for Chrome saved passwords is:\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Users\\1\\Local Settings\\Application Data\\Google\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Users\\1\\AppData\\Local\\Google\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>The file path for saving passwords in 360 Speed Browser is:\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Users\\1\\Local Settings\\Application Data\\360Chrome\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Users\\1\\AppData\\Local\\360Chrome\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>After comparison, the only difference lies in the file names, while the data structure remains the same.\u003C\u002Fp>\u003Ch3>Add 360 Speed Browser password export functionality:\u003C\u002Fh3>\u003Cp>\u003Cstrong>1. Modify \\LaZagne-master\\Windows\\lazagne\\config\\manageModules.py\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>(1) Add the following code on Line 6:\u003C\u002Fp>\u003Cp>from lazagne.softwares.browsers.cse import CSE\u003C\u002Fp>\u003Cp>As shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fuploads\u002Fdocx_image_1770017465432_3_644504d4e3.jpeg\">\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>lazagne.softwares.browsers.cse indicates the file name\u003C\u002Fp>\u003Cp>import CSE indicates the class name is CSE\u003C\u002Fp>\u003Cp>(2) Add the following code on Line 6:\u003C\u002Fp>\u003Cp>CSE(),\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Add moduleNames, corresponding to the class name CSE\u003C\u002Fp>\u003Cp>As shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fuploads\u002Fdocx_image_1770017480291_4_eb06512d46.jpeg\">\u003C\u002Fp>\u003Cp>For detailed code, refer to:\u003C\u002Fp>\u003Cp>An open-source project\u003C\u002Fp>\u003Cp>\u003Cstrong>2. Create a new file cse.py in \\LaZagne-master\\Windows\\lazagne\\softwares\\browsers\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>The file content should refer to chrome.py in the same directory, with modifications made at the following positions:\u003C\u002Fp>\u003Cp>(1) Change Line10 to class CSE(ModuleInfo):\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Set the class name\u003C\u002Fp>\u003Cp>(2)\u003C\u002Fp>\u003Cp>Change Line12 to options = {'command': '-360cse', 'action': 'store_true', 'dest': '360CSE', 'help': 'cse'}\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>'command' cannot duplicate chrome's -c\u003C\u002Fp>\u003Cp>'dest' indicates the title for exporting browser passwords\u003C\u002Fp>\u003Cp>(3)\u003C\u002Fp>\u003Cp>Change Line22 to 360 path\\Local Settings\\Application Data\\360Chrome\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>Change Line23 to 360 path\\AppData\\Local\\360Chrome\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>Complete code as follows:\u003C\u002Fp>\u003Cp>homedrive + homepath + '\\\\Local Settings\\\\Application Data\\\\360Chrome\\\\Chrome\\\\User Data',\u003C\u002Fp>\u003Cp>homedrive + homepath + '\\\\AppData\\\\Local\\\\360Chrome\\\\Chrome\\\\User Data',\u003C\u002Fp>\u003Cp>(4) For other prompt messages, simply replace 'chrome' with '360cse'\u003C\u002Fp>\u003Cp>Detailed code can be referred to:\u003C\u002Fp>\u003Cp>An open-source project\u003C\u002Fp>\u003Cp>Save the file and execute laZagne.exe again\u003C\u002Fp>\u003Cp>Successfully exported passwords saved in 360 Speed Browser, as shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fuploads\u002Fdocx_image_1770017489682_5_3b3434d7e4.jpeg\">\u003C\u002Fp>\u003Ch2>0x04 Using py2exe to convert Python scripts to exe\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>LaZagne provides pre-compiled Windows versions, download address is as follows:\u003C\u002Fp>\u003Cp>https:\u002F\u002Fgithub.com\u002FAlessandroZ\u002FLaZagne\u002Freleases\u002F\u003C\u002Fp>\u003Cp>However, if you want to extend functionality, such as adding the feature to export passwords from 360 Speed Browser, you need to find a method to compile it yourself\u003C\u002Fp>\u003Cp>The method using py2exe is as follows:\u003C\u002Fp>\u003Cp>\u003Cstrong>1. Download py2exe\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Address is as follows:\u003C\u002Fp>\u003Cp>https:\u002F\u002Fsourceforge.net\u002Fprojects\u002Fpy2exe\u002F\u003C\u002Fp>\u003Cp>\u003Cstrong>2. Create mysetup.py\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Content as follows:\u003C\u002Fp>\u003Ctable>\u003Ctbody>\u003Ctr>\u003Ctd>\u003Cp># mysetup.py\u003Cbr>from distutils.core import setup\u003Cbr>import py2exe\u003Cbr>setup(console=[\"laZagne.py\"])\u003C\u002Fp>\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003Cp>Save it under LaZagne-master\\LaZagne-master\\Windows\\, i.e., the same directory as laZagne.py\u003C\u002Fp>\u003Cp>\u003Cstrong>3. Generate\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Execute in cmd:\u003C\u002Fp>\u003Cp>C:\\Python27\\python.exe mysetup.py py2exe\u003C\u002Fp>\u003Cp>\u003Cstrong>4. Test\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Execute laZagne.exe\u003C\u002Fp>\u003Cp>Prompt ImportError: No module named pyasn1\u003C\u002Fp>\u003Cp>\u003Cstrong>Solution:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Found the file pyasn1-0.2.3-py2.7.egg in C:\\Python27\\Lib\\site-packages\u003C\u002Fp>\u003Cp>Extract it to generate the folder pyasn1 in the same directory\u003C\u002Fp>\u003Cp>Recompile using py2exe:\u003C\u002Fp>\u003Cp>C:\\Python27\\python.exe mysetup.py py2exe\u003C\u002Fp>\u003Cp>Generate the dist folder, execute laZagne.exe again, success, as shown below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fuploads\u002Fdocx_image_1770017499766_6_790619fcff.jpeg\">\u003C\u002Fp>\u003Ch2>0x05 Using PyInstaller to convert Python scripts to exe\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>\u003Cstrong>1. Install PyInstaller\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>\u003Cstrong>Method 1:\u003C\u002Fstrong> Install using pip\u003C\u002Fp>\u003Cp>Install pywin32,\u003Cstrong>Download address:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>https:\u002F\u002Fsourceforge.net\u002Fprojects\u002Fpywin32\u002Ffiles\u002Fpywin32\u002F\u003C\u002Fp>\u003Cp>Install using pip:\u003C\u002Fp>\u003Cp>pip install pyinstaller\u003C\u002Fp>\u003Cp>Error, as shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fuploads\u002Fdocx_image_1770017507043_7_a1bbd5a67f.jpeg\">\u003C\u002Fp>\u003Cp>\u003Cstrong>Method 2:\u003C\u002Fstrong>Download source code for installation\u003C\u002Fp>\u003Cp>\u003Cstrong>Source code download address:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>http:\u002F\u002Fwww.pyinstaller.org\u002Fdownloads.html\u003C\u002Fp>\u003Cp>The version used for testing is PyInstaller-3.2.1\u003C\u002Fp>\u003Cp>After decompression, enter its subdirectory bootloader:\u003C\u002Fp>\u003Cp>cd bootloader\u003C\u002Fp>\u003Cp>Compile:\u003C\u002Fp>\u003Cp>python .\u002Fwaf configure build install\u003C\u002Fp>\u003Cp>Return to the root directory:\u003C\u002Fp>\u003Cp>cd ..\u003C\u002Fp>\u003Cp>Install pyinstaller:\u003C\u002Fp>\u003Cp>python setup.py install\u003C\u002Fp>\u003Cp>Installation successful, as shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fuploads\u002Fdocx_image_1770017512666_8_28ef1cf9ff.jpeg\">\u003C\u002Fp>\u003Cp>\u003Cstrong>2. Package into exe\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Parameters are as follows:\u003C\u002Fp>\u003Cp>C:\\Python27\\Scripts\\pyinstaller-script.py -F C:\\LaZagne-master\\LaZagne-master\\Windows\\laZagne.py\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>The -F parameter indicates packaging into a single exe\u003C\u002Fp>\u003Cp>A dist folder is generated under C:\\Python27\\Scripts\\, containing the generated laZagne.exe\u003C\u002Fp>\u003Cp>Test system (without Python installed) executes laZagne.exe\u003C\u002Fp>\u003Cp>Successfully runs, as shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fuploads\u002Fdocx_image_1770017517654_9_54a6a2d92d.jpeg\">\u003C\u002Fp>\u003Ch2>0x06 Summary\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>This article introduces the method of writing LaZagne extension scripts using Python, achieving the export of user passwords from 360 Extreme Browser. For different software, using LaZagne custom scripts to export passwords is undoubtedly a highly efficient approach.\u003C\u002Fp>\u003C\u002Fbody>\u003C\u002Fhtml>","text","ltr","\u003Chtml>\u003Chead>\u003C\u002Fhead>\u003Cbody>\u003Ch2>0x00 Preface\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>LaZagne is an open-source application for retrieving numerous passwords stored on local computers.\u003C\u002Fp>\u003Cp>Since each software stores passwords differently (plaintext, API, custom algorithms, databases, etc.), this tool employs various methods to obtain software passwords. Currently supported software is shown in the figure below.\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fapi\u002Fmedia\u002Ffile\u002Fdocx_image_1770017366057_0_1f605d9687-1.jpeg\">\u003C\u002Fp>\u003Cp>Developed in Python, the tool is easy to read and maintain. Therefore, this article attempts to extend it by writing a Python script to export passwords from 360 Speed Browser and detailing the script development process.\u003C\u002Fp>\u003Ch2>0x01 Introduction\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>This article will cover the following:\u003C\u002Fp>\u003Cul>\u003Cli>Fixing bugs in LaZagne\u003C\u002Fli>\u003Cli>Developing a script to export 360 Speed Browser passwords\u003C\u002Fli>\u003Cli>Converting Python scripts to exe using py2exe\u003C\u002Fli>\u003Cli>Converting Python scripts to exe using PyInstaller\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>0x02 Bugs in LaZagne\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>\u003Cstrong>LaZagne Download URL:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>https:\u002F\u002Fgithub.com\u002FAlessandroZ\u002FLaZagne\u003C\u002Fp>\u003Cp>Python version: 2.7\u003C\u002Fp>\u003Cp>After downloading, execute \\LaZagne-master\\LaZagne-master\\Windows\\laZagne.py\u003C\u002Fp>\u003Cp>Error reported, missing third-party extension packages pyasn1 and psutil\u003C\u002Fp>\u003Cp>\u003Cstrong>Install third-party extension packages:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Python27\\Scripts\\easy_install.exe pyasn1`\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Python27\\Scripts\\easy_install.exe psutil\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>Execute \\LaZagne-master\\LaZagne-master\\Windows\\laZagne.py again\u003C\u002Fp>\u003Cp>Still reports an error, prompt as follows:\u003C\u002Fp>\u003Cp>ImportError: No module named memorpy\u003C\u002Fp>\u003Cp>~~After searching, there is no third-party package named memorpy. It is suspected to be a typo, and the correct one should be memory_profiler~~\u003C\u002Fp>\u003Cp>~~\u003Cstrong>Install the package memory_profiler:\u003C\u002Fstrong>~~\u003C\u002Fp>\u003Cp>~~C:\\Python27\\Scripts\\easy_install.exe memory_profiler~~\u003C\u002Fp>\u003Cp>~~And modify the source file:~~\u003C\u002Fp>\u003Cp>~~Path: \\LaZagne-master\\LaZagne-master\\Windows\\lazagne\\softwares\\memory\\memorydump.py~~\u003C\u002Fp>\u003Cp>~~Line 14: from memorpy import *~~\u003C\u002Fp>\u003Cp>~~Change to~~\u003C\u002Fp>\u003Cp>~~from memory_profiler import *~~\u003C\u002Fp>\u003Cp>~~Successfully executed laZagne.py, as shown in the figure below~~\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fapi\u002Fmedia\u002Ffile\u002Fdocx_image_1770017392953_1_08ebc85288-1.jpeg\">\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>After changing to memory_profiler, although compilation succeeds, an error occurs when running the memory module, indicating that Process does not have a list method (bug discovery and fix method from @burnegg)\u003C\u002Fp>\u003Cp>Modification approach:\u003C\u002Fp>\u003Cp>Revert to memorpy\u003C\u002Fp>\u003Cp>Installation:\u003C\u002Fp>\u003Ctable>\u003Ctbody>\u003Ctr>\u003Ctd>\u003Cp>C:\\Python27\\Scripts\\pip.exe install https:\u002F\u002Fgithub.com\u002Fn1nj4sec\u002Fmemorpy\u002Farchive\u002Fmaster.zip\u003C\u002Fp>\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003Ch2>0x03 Developing Scripts to Export 360 Speed Browser Passwords\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>The original project suggests referring to the following for developing custom scripts:\u003C\u002Fp>\u003Cp>https:\u002F\u002Fgithub.com\u002FAlessandroZ\u002FLaZagne\u002Fwiki\u003C\u002Fp>\u003Cp>However, this webpage does not provide guidance. After analyzing the code structure, the following modification method was derived\u003C\u002Fp>\u003Cp>\u003Cstrong>360 Speed Browser:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>360 Speed Browser uses the Chrome kernel, and it is speculated that its password storage function is similar to Chrome's. Therefore, 360 Speed Browser was used as the test subject\u003C\u002Fp>\u003Cp>360 Speed Browser provides password saving functionality, as shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fapi\u002Fmedia\u002Ffile\u002Fdocx_image_1770017431657_2_3b23addcf4-1.jpeg\">\u003C\u002Fp>\u003Cp>Testing revealed:\u003C\u002Fp>\u003Cp>The file path for Chrome saved passwords is:\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Users\\1\\Local Settings\\Application Data\\Google\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Users\\1\\AppData\\Local\\Google\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>The file path for saving passwords in 360 Speed Browser is:\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Users\\1\\Local Settings\\Application Data\\360Chrome\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>C:\\Users\\1\\AppData\\Local\\360Chrome\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>`\u003C\u002Fp>\u003Cp>After comparison, the only difference lies in the file names, while the data structure remains the same.\u003C\u002Fp>\u003Ch3>Add 360 Speed Browser password export functionality:\u003C\u002Fh3>\u003Cp>\u003Cstrong>1. Modify \\LaZagne-master\\Windows\\lazagne\\config\\manageModules.py\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>(1) Add the following code on Line 6:\u003C\u002Fp>\u003Cp>from lazagne.softwares.browsers.cse import CSE\u003C\u002Fp>\u003Cp>As shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fapi\u002Fmedia\u002Ffile\u002Fdocx_image_1770017465432_3_644504d4e3-1.jpeg\">\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>lazagne.softwares.browsers.cse indicates the file name\u003C\u002Fp>\u003Cp>import CSE indicates the class name is CSE\u003C\u002Fp>\u003Cp>(2) Add the following code on Line 6:\u003C\u002Fp>\u003Cp>CSE(),\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Add moduleNames, corresponding to the class name CSE\u003C\u002Fp>\u003Cp>As shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fapi\u002Fmedia\u002Ffile\u002Fdocx_image_1770017480291_4_eb06512d46-1.jpeg\">\u003C\u002Fp>\u003Cp>For detailed code, refer to:\u003C\u002Fp>\u003Cp>An open-source project\u003C\u002Fp>\u003Cp>\u003Cstrong>2. Create a new file cse.py in \\LaZagne-master\\Windows\\lazagne\\softwares\\browsers\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>The file content should refer to chrome.py in the same directory, with modifications made at the following positions:\u003C\u002Fp>\u003Cp>(1) Change Line10 to class CSE(ModuleInfo):\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Set the class name\u003C\u002Fp>\u003Cp>(2)\u003C\u002Fp>\u003Cp>Change Line12 to options = {'command': '-360cse', 'action': 'store_true', 'dest': '360CSE', 'help': 'cse'}\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>'command' cannot duplicate chrome's -c\u003C\u002Fp>\u003Cp>'dest' indicates the title for exporting browser passwords\u003C\u002Fp>\u003Cp>(3)\u003C\u002Fp>\u003Cp>Change Line22 to 360 path\\Local Settings\\Application Data\\360Chrome\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>Change Line23 to 360 path\\AppData\\Local\\360Chrome\\Chrome\\User Data\\\u003C\u002Fp>\u003Cp>Complete code as follows:\u003C\u002Fp>\u003Cp>homedrive + homepath + '\\\\Local Settings\\\\Application Data\\\\360Chrome\\\\Chrome\\\\User Data',\u003C\u002Fp>\u003Cp>homedrive + homepath + '\\\\AppData\\\\Local\\\\360Chrome\\\\Chrome\\\\User Data',\u003C\u002Fp>\u003Cp>(4) For other prompt messages, simply replace 'chrome' with '360cse'\u003C\u002Fp>\u003Cp>Detailed code can be referred to:\u003C\u002Fp>\u003Cp>An open-source project\u003C\u002Fp>\u003Cp>Save the file and execute laZagne.exe again\u003C\u002Fp>\u003Cp>Successfully exported passwords saved in 360 Speed Browser, as shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fapi\u002Fmedia\u002Ffile\u002Fdocx_image_1770017489682_5_3b3434d7e4-1.jpeg\">\u003C\u002Fp>\u003Ch2>0x04 Using py2exe to convert Python scripts to exe\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>LaZagne provides pre-compiled Windows versions, download address is as follows:\u003C\u002Fp>\u003Cp>https:\u002F\u002Fgithub.com\u002FAlessandroZ\u002FLaZagne\u002Freleases\u002F\u003C\u002Fp>\u003Cp>However, if you want to extend functionality, such as adding the feature to export passwords from 360 Speed Browser, you need to find a method to compile it yourself\u003C\u002Fp>\u003Cp>The method using py2exe is as follows:\u003C\u002Fp>\u003Cp>\u003Cstrong>1. Download py2exe\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Address is as follows:\u003C\u002Fp>\u003Cp>https:\u002F\u002Fsourceforge.net\u002Fprojects\u002Fpy2exe\u002F\u003C\u002Fp>\u003Cp>\u003Cstrong>2. Create mysetup.py\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Content as follows:\u003C\u002Fp>\u003Ctable>\u003Ctbody>\u003Ctr>\u003Ctd>\u003Cp># mysetup.py\u003Cbr>from distutils.core import setup\u003Cbr>import py2exe\u003Cbr>setup(console=[\"laZagne.py\"])\u003C\u002Fp>\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003Cp>Save it under LaZagne-master\\LaZagne-master\\Windows\\, i.e., the same directory as laZagne.py\u003C\u002Fp>\u003Cp>\u003Cstrong>3. Generate\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Execute in cmd:\u003C\u002Fp>\u003Cp>C:\\Python27\\python.exe mysetup.py py2exe\u003C\u002Fp>\u003Cp>\u003Cstrong>4. Test\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Execute laZagne.exe\u003C\u002Fp>\u003Cp>Prompt ImportError: No module named pyasn1\u003C\u002Fp>\u003Cp>\u003Cstrong>Solution:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Found the file pyasn1-0.2.3-py2.7.egg in C:\\Python27\\Lib\\site-packages\u003C\u002Fp>\u003Cp>Extract it to generate the folder pyasn1 in the same directory\u003C\u002Fp>\u003Cp>Recompile using py2exe:\u003C\u002Fp>\u003Cp>C:\\Python27\\python.exe mysetup.py py2exe\u003C\u002Fp>\u003Cp>Generate the dist folder, execute laZagne.exe again, success, as shown below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fapi\u002Fmedia\u002Ffile\u002Fdocx_image_1770017499766_6_790619fcff-1.jpeg\">\u003C\u002Fp>\u003Ch2>0x05 Using PyInstaller to convert Python scripts to exe\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>\u003Cstrong>1. Install PyInstaller\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>\u003Cstrong>Method 1:\u003C\u002Fstrong> Install using pip\u003C\u002Fp>\u003Cp>Install pywin32,\u003Cstrong>Download address:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>https:\u002F\u002Fsourceforge.net\u002Fprojects\u002Fpywin32\u002Ffiles\u002Fpywin32\u002F\u003C\u002Fp>\u003Cp>Install using pip:\u003C\u002Fp>\u003Cp>pip install pyinstaller\u003C\u002Fp>\u003Cp>Error, as shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fapi\u002Fmedia\u002Ffile\u002Fdocx_image_1770017507043_7_a1bbd5a67f-1.jpeg\">\u003C\u002Fp>\u003Cp>\u003Cstrong>Method 2:\u003C\u002Fstrong>Download source code for installation\u003C\u002Fp>\u003Cp>\u003Cstrong>Source code download address:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>http:\u002F\u002Fwww.pyinstaller.org\u002Fdownloads.html\u003C\u002Fp>\u003Cp>The version used for testing is PyInstaller-3.2.1\u003C\u002Fp>\u003Cp>After decompression, enter its subdirectory bootloader:\u003C\u002Fp>\u003Cp>cd bootloader\u003C\u002Fp>\u003Cp>Compile:\u003C\u002Fp>\u003Cp>python .\u002Fwaf configure build install\u003C\u002Fp>\u003Cp>Return to the root directory:\u003C\u002Fp>\u003Cp>cd ..\u003C\u002Fp>\u003Cp>Install pyinstaller:\u003C\u002Fp>\u003Cp>python setup.py install\u003C\u002Fp>\u003Cp>Installation successful, as shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fapi\u002Fmedia\u002Ffile\u002Fdocx_image_1770017512666_8_28ef1cf9ff-1.jpeg\">\u003C\u002Fp>\u003Cp>\u003Cstrong>2. Package into exe\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>Parameters are as follows:\u003C\u002Fp>\u003Cp>C:\\Python27\\Scripts\\pyinstaller-script.py -F C:\\LaZagne-master\\LaZagne-master\\Windows\\laZagne.py\u003C\u002Fp>\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>The -F parameter indicates packaging into a single exe\u003C\u002Fp>\u003Cp>A dist folder is generated under C:\\Python27\\Scripts\\, containing the generated laZagne.exe\u003C\u002Fp>\u003Cp>Test system (without Python installed) executes laZagne.exe\u003C\u002Fp>\u003Cp>Successfully runs, as shown in the figure below\u003C\u002Fp>\u003Cp>\u003Cimg alt=\"Alt text\" src=\"\u002Fapi\u002Fmedia\u002Ffile\u002Fdocx_image_1770017517654_9_54a6a2d92d-1.jpeg\">\u003C\u002Fp>\u003Ch2>0x06 Summary\u003C\u002Fh2>\u003Cp>---\u003C\u002Fp>\u003Cp>This article introduces the method of writing LaZagne extension scripts using Python, achieving the export of user passwords from 360 Extreme Browser. For different software, using LaZagne custom scripts to export passwords is undoubtedly a highly efficient approach.\u003C\u002Fp>\u003C\u002Fbody>\u003C\u002Fhtml>",1209,"Onedaysec",5,"published","2026-02-02T07:51:00.264Z",{"title":37,"description":14,"keywords":38,"ogImage":39,"canonicalUrl":39,"noIndex":40},"Extend LaZagne: Custom Script for 360 Speed Browser Password Export","LaZagne, password recovery, 360 Speed Browser, custom script, Python, browser security, password export, open-source tool",null,false,[],{"docs":43,"hasNextPage":40},[44,45,4,46],419,418,416,{"title":39,"description":39,"image":39},"2026-07-24T15:37:13.487Z","2026-07-23T16:01:33.141Z","draft","2026-07-23T16:06:04.339Z"]