版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
RainbowCrackTutorial
Introduction
RainbowCrackisageneralproposeimplementationofPhilippeOechslin'sfastertime-memorytrade-offtechnique.Functionofthissoftwareistocrackhash.
Thestraightforwardwaytocrackhashisbruteforce.Inbruteforceapproach,allcandidateplaintextsandcorrespondinghashesarecomputedonebyone.Thecomputedhashesarecomparedwiththetargethash.Ifoneofthemmatches,theplaintextisfound.Otherwisetheprocesscontinuesuntilfinishsearchingallcandidateplaintexts.
Intime-memorytradeoffapproach,thetaskofhashcomputingisdoneinadvancewiththeresultsstoredinfilescalled"rainbowtable".Afterthat,hashescanbelookedupfromtherainbowtableswheneverneeded.Thepre-computationprocessneedsseveraltimestheeffortoffullkeyspacebruteforce.Butoncetheonetimepre-computationiscomplete,thetablelookupperformancecanbehundredsorthousandstimesfasterthanbruteforce.
ThisdocumentexplainsthestepstomaketheRainbowCracksoftwareworkingforfirsttimeuser.Mostcontentsinthisdocumentareimplementationspecific,whileothersaregenerictotime-memorytradeoffalgorithm.
TheRainbowCracksoftwareincludesthreetoolsthatmustbeusedinsequencetomakethingsworking.
Step1:Usertgenprogramtogeneraterainbowtables.
Step2:Usertsortprogramtosortrainbowtablesgeneratedbyrtgen.
Step3:Usercrackprogramtolookuprainbowtablessortedbyrtsort.
Thetablelookupprocessinfinalstepisequivalenttothehashcrackingprocess.
Thewaytousetheseprogramswillbeexplainedinthisdocument.Allofthemarecommandlineprograms.
Step1:Usertgenprogramtogeneraterainbowtables
Thertgenprogramneedseveralparameterstogeneratearainbowtable,thesyntaxofthecommandlineis:
rtgenhash_algorithmcharsetplaintext_len_minplaintext_len_maxtable_indexchain_lenchain_numpart_index
Explanationoftheseparameters:
parameter
meaning
hash_algorithm
Thehashalgorithm(lm,ntlm,md5andsoon)usedintherainbowtable.
charset
Thecharsetofallplaintextsintherainbowtable.Allpossiblecharsetaredefinedinthecharset.txtfile.
plaintext_len_min
plaintext_len_max
Thesetwoparametersdefinethepossiblelengthofallplaintextsintherainbowtable.Ifcharsetisnumeric,plaintext_len_minis1,andplaintext_len_maxis5.Thentheplaintext"12345"islikelyincludedinthetable,but"123456"willnotbeincluded.
table_index
chain_len
chain_num
part_index
Thesefourparametersarereallydifficulttoexplaininsimplewords.Toreadandunderstand
PhilippeOechslin'soriginalpaper
canhelptoknowtheexactmeaning.
Thetable_indexisrelatedtothe"reducefunction"thatisusedinrainbowtable.
Thechain_lenisthelengthofeach"rainbowchain"intherainbowtable.A"rainbowchain"sized16bytesisthesmallestunitinarainbowtable.Arainbowtablecontainslotsofrainbowchains.
Thechain_numisthenumberofrainbowchainsintherainbowtable.
Thepart_indexparameterdetermineshowthe"startpoint"ineachrainbowchainisgenerated.Itmustbeanumber(orbeginwithanumber)inRainbowCrack1.3&1.4.InRainbowCrack1.2,thisparametercanbeanystringbecauserandom"startpoint"isused,while1.3&1.4usethesequential"startpoint".
Therightvaluesofalltheparametersdependonwhatyouneed,toselectgoodparametersrequiresomeunderstandingofthetime-memorytradeoffalgorithm.
Onereadytoworkconfigurationisgivenbelow,asanexample:
hash_algorithm
lm,ntlmormd5
charset
alpha-numeric=[ABCDEFGHIJKLMNOPQRSTUVWXYZ]
or
loweralpha-numeric=[abcdefghijklmnopqrstuvwxyz]
plaintext_len_min
1
plaintext_len_max
7
chain_len
3800
chain_num
33554432
keyspace
36^1+36^2+36^3+36^4+36^5+36^6+36^7=
keyspaceisthenumberofpossibleplaintextsforthecharset,plaintext_len_minandplaintext_len_maxselected.
tablesize
3GB
successrate
0.999
Thetime-memorytradeoffalgorithmisaprobabilisticalgorithm.Whatevertheparametersareselected,thereisalwaysprobabilitythattheplaintextwithintheselectedcharsetandplaintextlengthrangeisnotcovered.Thesuccessrateis99.9%withtheparametersusedinthisexample.
tablegenerationcommands
Theactualrtgencommandsusedtogeneratetherainbowtablesare:
rtgenmd5loweralpha-numeric1703800335544320
rtgenmd5loweralpha-numeric1713800335544320
rtgenmd5loweralpha-numeric1723800335544320
rtgenmd5loweralpha-numeric1733800335544320
rtgenmd5loweralpha-numeric1743800335544320
rtgenmd5loweralpha-numeric1753800335544320
Ifntlmorlmtableisdesired,replace"md5"incommandsabovewith"ntlm"or"lm".
Ifalpha-numericcharsetisdesired,replace"loweralpha-numeric"incommandsabovewith"alpha-numeric".
Iflmtableistobegenerated,pleaseCONFIRMthecharsetisalpha-numericinsteadofloweralpha-numeric.ThelmalgorithmNEVERuseslowercaselettersasplaintext.
Nowitistimetogeneraterainbowtable.
ChangethecurrentdirectoryofyourcommandprompttoRainbowCrack'sdirectory,andexecutefollowingcommand:
rtgenmd5loweralpha-numeric1703800335544320
Thiscommandtakesabout4hourstocompleteonCore2DuoE7300processor.ItissafetostopthecomputationanytimebypressingCtrl+C.Nexttimeifthertgenprogramisexecutedwithexactlysamecommandlineparameters,itwillresumefromwherethecomputationisstoppedandcontinuethetablegeneration.
Whenthecommandisfinished,afilenamed"md5_loweralpha-numeric#1-7_0_3800x33554432_0.rt"sized512MBwillbeinplace.Thefilenameissimplyallthecommandlineparametersconnected,withthe"rt"extension.Thercrackprogramtobeexplainedlaterneedthispieceofinformationtoknowparametersoftherainbowtable.Sodon'trenamethefile.
Remainingtablescanbegeneratedinsamewaywithcommands:
rtgenmd5loweralpha-numeric1713800335544320
rtgenmd5loweralpha-numeric1723800335544320
rtgenmd5loweralpha-numeric1733800335544320
rtgenmd5loweralpha-numeric1743800335544320
rtgenmd5loweralpha-numeric1753800335544320
Finally,thesefilesaregenerated:
md5_loweralpha-numeric#1-7_0_3800x33554432_0.rt
512MB
md5_loweralpha-numeric#1-7_1_3800x33554432_0.rt
512MB
md5_loweralpha-numeric#1-7_2_3800x33554432_0.rt
512MB
md5_loweralpha-numeric#1-7_3_3800x33554432_0.rt
512MB
md5_loweralpha-numeric#1-7_4_3800x33554432_0.rt
512MB
md5_loweralpha-numeric#1-7_5_3800x33554432_0.rt
512MB
Nowtherainbowtablegenerationprocesscomplete.
Step2:Usertsortprogramtosortrainbowtables
Therainbowtablesgeneratedbyrtgenprogramneedsomepostprocessingtomaketablelookupeasier.Thertsortprogramisusedtosortthe"endpoint"ofallrainbowchainsinarainbowtable.
Usefollowingcommands:
rtsortmd5_loweralpha-numeric#1-7_0_3800x33554432_0.rt
rtsortmd5_loweralpha-numeric#1-7_1_3800x33554432_0.rt
rtsortmd5_loweralpha-numeric#1-7_2_3800x33554432_0.rt
rtsortmd5_loweralpha-numeric#1-7_3_3800x33554432_0.rt
rtsortmd5_loweralpha-numeric#1-7_4_3800x33554432_0.rt
rtsortmd5_loweralpha-numeric#1-7_5_3800x33554432_0.rt
Eachcommandabovetakesabout1to2minutestocomplete.Thertsortprogramwillwritethesortedrainbowtabletotheoriginalfile.
Don'tinterruptthertsortprogram;otherwisetherainbowtablebeingsortedwillbedamaged.
Ifthefreememorysizeofyoursystemissmallerthanthesizeoftherainbowtablebeingsorted,temporaryharddiskspaceaslargeastherainbowtablesizewillbeneededtostoreintermediatedata.
Nowtherainbowtablesortingprocesscomplete.
Step3:Usercrackprogramtolookuprainbowtables
Thercrackprogramisusedtolookuptherainbowtables.Itonlyacceptssortedrainbowtables.
Assumethesortedrainbowtablesareplacedinc:\rtdirectory,tocracksinglehashthecommandlinewillbe:
rcrackc:\rt\*.rt-hyour_hash_comes_here
Thefirstparameterspecifiesthepathtotherainbowtablestolookup.The"*"and"?"charactercanbeusedtospecifymultiplefiles.
Normallyittakessecondsortensofsecondstofinish,iftheplaintextiswithintheselectedcharsetandplaintextlengthrange.Otherwise,ittakesmuchlongertimetosearchallthetablesonlytofindnothing.
Tocrackmultiplehashes,placeallthehashesinatextfilewitheachhashinaline.Andthenspecifyfilenameinrcrackcommandline:
rcrackc:\rt\*.rt-lhash_list_file
Iftherainbowtablesyougenerateuselmalgorithm,thercrackp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江省金华市国际实验学校2027届九上物理期末统考模拟试题含解析
- 2027届江苏省扬州市刊江实验学校九上化学期末考试试题含解析
- 2027届江苏省连云港市赣榆县九上化学期末学业水平测试模拟试题含解析
- 小学四年级数学下册《三角形的内角和》核心素养导向教学设计
- ISOIEC TR 221162021 信息技术 - 识别和减轻人口因素对生物识别系统的不同影响标准立项发展报告
- 2026年上海市静安区教育系统事业编人员招聘考试参考题库及答案详解
- 2026年枣庄市台儿庄区教育系统事业编人员招聘笔试备考试题及答案详解
- 2026年平顶山市卫东区医疗系统事业编人员招聘考试参考试题及答案详解
- 2026年抚顺市顺城区医疗系统事业编人员招聘考试参考试题及答案详解
- 2026年鞍山市铁东区教育系统事业编人员招聘考试参考题库及答案详解
- 2026云南大理州交建实业(集团)有限公司及下属公司员工招聘15人笔试题库含完整答案详解【夺冠系列】
- 2026宁波高新区机关各部门、事业单位及街道编外招聘30人考试备考题库及答案详解
- 实验室生物安全手册
- 高级综合英语知到智慧树章节测试课后答案2024年秋浙江中医药大学
- 合伙企业股权结构协议书
- 水利工程施工监理规范(SL288-2014)用表填表说明及示例
- 消防作战训练安全总结
- 数字货币概论 课件 第5章 稳定币的原理与实现
- 《Python语言程序设计课件》
- 入职离职分析表-可视化图表
- 水生产处理工(初级工)理论考试题库附答案(新版)
评论
0/150
提交评论