COMMERCIAL AND GOVERNMENT USERS PLEASE SEE THE END OF THIS FILE FOR LICENSING INFORMATION. FOR YOU THIS PROGRAM IS SHAREWARE, FOR ALL OTHERS IT IS FREE. L0phtCrack 1.5 Released 7/12/97 Available at http://www.l0pht.com/advisories.html mudge@l0pht.com weld@l0pht.com OVERVIEW L0phtCrack 1.5 is a tool for turning Microsoft LANMAN and NT password hashes back into the original clear text passwords. The program does this using dictionary cracking and also brute force. L0phtCrack 1.5 returns not just the LANMAN passord but the NT password up to 14 characters in length. L0phtcrack will read pwdump style output or take network sniffer logs. The program is distributed as both a GUI and in CLI form. Version 1.0 of L0phtCrack was deficient because the graphical version of the program did not support the brute force method that was in the Command Line version which accompanied it. This has been fixed for version 1.5. The brute force efficiency has been improved and an option to select the character set that makes up the password has been added. The default behavior of the GUI is to do a dictionary attack on the password file and then brute force the remaining uncracked passwords. Sample password files are named pwfile.txt, pwfile2.txt, pwfile3.txt and pwfile4.txt. A 28000 word dictionary file is included named wfile.txt. You can dump passwords directly from L0phtCrack if you have administrator rights. L0phtCrack 1.5 includes the ability to dictionary attack or brute force the network NT server challenge that is used to prevent the OWF from going across the wire in its plaintext format. Sample network sniffed challenges are in files sniff.txt and sniff2.txt. This means you can get NT passwords without administrator privileges if you have network access between the client and the server. With only trivial modifications you can break the SMB signing options and play man in the middle attacks. These 'signatures' are derived in almost identical fashion as the challenge response is. You can build the sniff files by hand using your favorite network analyzer or wait for our tool which sniffs the network and builds these files. The sniffing tool will be made available shortly. Also to be made available shortly is a commercial multiprocessor version, L0phtCrack/SMP 1.5 for NT and Solaris. Contact l0phtcrack@l0pht.com for more information. FILES IN THE EXECUTABLE DISTRIBUTION - LC15EXE.ZIP lc_cli.exe is the command line version of the program. Run this if you think little status counters are sucking up all you performance or do not need you hand held by point-and-click tools. Source code for this program that will build on Win95/NT or Unix is included in the source code distribution: lc15src.zip or lc15src.tar.gz lc_gui.exe is the NT graphical version of L0phtCrack. lc_guipro.exe is the NT graphical version of L0phtCrack that has been compiled with Pentuim Pro optimizations turned on. lc_gui95.exe is Win95 graphical version of L0phtCrack. This version does not support password dumping due to Win95 limitations. FILES IN THE SOURCE DISTRIBUTION - LC15SRC.ZIP or LC15SRC.TAR.GZ This archive contains all the source to build the command line version of L0phtCrack 1.5. PERFORMANCE Dictionary cracking is extremely fast. L0phtCrack running on a Pentium Pro 200 checked a password file with 100 passwords against a 8 Megabyte dictionary file in under one minute. Brute forcing is always an extremely CPU intensive operation. We have worked to optimize this in L0phtCrack 1.5. L0phtCrack running on a Pentium Pro 200 checked a password file with 10 passwords using the alpha character set (A-Z) in 26 hours. The graphical verion of L0phtCrack 1.5 features a percentage done counter and a time remaining estimate so you can gauge when the task will be complete. [note from mudge: try building the CLI version on an ultrasparc using the compile flags in the Makefile provided - this will make these figures look sloooooowwww ;-)] The l0phtcrack1.5 GUI allows you to select one of 5 character sets to brute force passwords that use more characters than A-Z. As the character sets increase in size from 26 characters to 68 the time to brute force the password increases exponentially. The CLI version allows you to specify a file containing your keyspace string via the '-k' option. Please keep in mind that you should only be using UPPERCASE characters as we will derive the lower case ones later in the cracking. [examine the source code if this is un-clear] This chart illustrates the relative time for larger character sets. Char Relative Size Iterations Time 26 8353082582 1.00 36 80603140212 9.65 46 4.45502E+11 53.33 68 6.82333E+12 816.86 So if 26 characters takes 26 hours to complete, 36 characters (A-Z,0-9) would take 250 hours or 10.5 days. Now of course this is the worst case senario of the password being 99999999999999. A password such as take2asp1r1n would probably be computed in about 7 days. [mudge note: again, try this on other architectures for better performance] NT Server Challenge Sniffing Here is a description of the challenge that takes place over the network when a client, such as a Windows NT workstation, connects to an NT Server. [assuming initial setup etc...] 8byte "random" challenge Client <---------------------- Server OWF1 = pad Lanman OWF with 5 nulls OWF2 = pad NT OWF with 5 nulls resp = E(OWF1, Chal) E(OWF2, Chal) 48byte response (24byte lanman 24byte nt) Client -----------------------> Server The client takes the OWF ( all 16 bytes of it) and pads with 5 nulls. From this point it des ecb encrypts the, now 21byte, OWF with the 8byte challenge. The resulting 24byte string is sent over to the server who performs the same operations on the OWF stored in it's registry and compares the resulting two 24byte strings. If they match the user used the correct passwd. What's cool about this? Well, now you can take your sniffer logs of NT logons and retrieve the plaintext passwords. This does not require an account on the NT machine nor does it require previous knowledge of the ADMINISTRATOR password. The fact that these three responses are concatenated quickly gives away the length of the password for the LM hash and the attack can work backwards the same way the non-networked one does. So even if you have installed Service Pack 3 and enabled SAM encryption your passwords are still vulnerable if they go over the network. Special thanks go out to: - Hobbit@avian.org for all the cool ideas and bare feet. Especially for his monster paper on CIFS problems. - Jeremey Allison jra@cygnus.com - for the fantastic sleuthing with PWDump. - tuebor@l0pht.com for a some nice little code tips and generall coolness. - the people who did SAMBA for being nuts! - the people who did libdes for being nuts! - Yobie for always fighting giants. If anyone makes modifications / improvements please mail the diffs to mudge@l0pht.com. We hope this tool is useful, mudge@l0pht.com , weld@l0pht.com LICENSING INFORMATION LICENSING INFORMATION LICENSING INFORMATION LICENSING INFORMATION LICENSING INFORMATION LICENSING INFORMATION LHI TECHNOLOGIES, LLC SOFTWARE LICENSE AGREEMENT THIS IS A LEGAL AGREEMENT BETWEEN YOU AND LHI TECHNOLOGIES, LLC ("LHI"). CAREFULLY READ ALL THE TERMS AND CONDITIONS OF THIS AGREEMENT PRIOR TO USING THE SOFTWARE. BY USING THE SOFTWARE YOU CONSENT TO BE BOUND BY THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL THE TERMS OF THIS AGREEMENT, DO NOT USE THE SOFTWARE. *************************************************************************** IF YOU ARE A COMMERCIAL OR GOVERNMENTAL ENTITY THE GRAPHICAL EXECUTABLE VERSIONS OF THIS SOFTWARE, ("L0PHTCRACK 1.5") ARE NOT FREE OF CHARGE. IF YOU USE THE SOFTWARE BEYOND THE EVALUATION PERIOD OF 7 DAYS YOU MUST MAKE A PAYMENT OF $50 TO LHI. PAYMENT MUST BE SENT TO: LHI, PO BOX 990857, BOSTON, MA 02199. **************************************************************************** THE GRAPHICAL EXECUTABLE VERSIONS ARE THE FILES NAMED: lc_gui.exe, lc_guipro.exe and lc_gui95.exe CONTAINED IN THE ARCHIVE FILE lc15exe.zip IF YOU ARE A NEITHER A COMMERCIAL NOR GOVERNMENTAL ENTITY YOU MAY USE THIS SOFTWARE FREE OF CHARGE. 1.TITLE AND OWNERSHIP. The Software is owned by LHI The Software is protected by United States and international copyright and other laws. You may not remove, obscure, or alter any notice of patent, copyright, trademark, trade secret, or other proprietary rights. You may not reverse engineer, disassemble or de-compile the Software nor may you permit anyone else to do so. This license and your right to use the Software terminate automatically if you violate any part of this Agreement. 3.DISCLAIMER OF WARRANTY AND LIMITATION OF LIABILITY. THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED. WITHOUT LIMITATION, LHI DISCLAIMS ALL IMPLIED WARRANTIES WITH RESPECT TO THE SOFTWARE, ITS MERCHANTABILITY AND FITNESS FOR ANY PARTICULAR PURPOSE. YOU ASSUME ALL RISK IN USING THE SOFTWARE. IN NO EVENT WILL LHI BE LIABLE FOR INDIRECT, INCIDENTAL OR CONSEQUENTIAL DAMAGES, INCLUDING, WITHOUT LIMITATION, LOSS OF INCOME, LOSS OF USE, OR LOSS OF INFORMATION. IN NO EVENT WILL LHI BE LIABLE FOR ANY DAMAGES, EVEN IF LHI SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES OR FOR ANY CLAIM BY ANY OTHER PARTY. CERTAIN STATES DO NOT PERMIT EXCLUSIONS OF IMPLIED WARRANTIES OR LIMITATIONS OF LIABILITY, SO THIS DISCLAIMER MAY NOT APPLY TO YOU OR MAY APPLY TO YOU ONLY IN PART. YOU MAY HAVE OTHER LEGAL RIGHTS WHICH VARY FROM STATE TO STATE. 4.EXPORT COMPLIANCE. You may not export or reexport the Software except in full compliance with all United States and other applicable laws and regulations, including laws and regulations pertaining to the export of computer software. 5.GENERAL. This Agreement constitutes the entire agreement between you and LHI and supersedes any prior written or oral agreement concerning the Software. It shall not be modified except by written agreement dated subsequent to the date of this Agreement and signed by an authorized LHI representative. LHI is not bound by any provision of any purchase order, receipt, acceptance, confirmation, correspondence, or otherwise, unless LHI specifically agrees to the provision in writing. This Agreement is governed by the laws of the State of Massachusetts as if the parties hereto were both Massachusetts residents; and you consent to exclusive jurisdiction in the state and federal courts in Boston in the event of any dispute. 6.U.S. GOVERNMENT RESTRICTED RIGHTS. The Software is provided with RESTRICTED RIGHTS. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs (c)(1) and (2) of the Commercial Computer Software Restricted Rights at 48 CFR 52.227-19, as applicable. Contractor/manufacturer is LHI Technologies, LLC, PO Box 990857, Boston, MA 02199.