sec-pentesting-toolkit/Useful_Scripts/find_word_inside_text.py
2014-09-30 23:29:07 -04:00

25 lines
2.1 KiB
Python

#!/usr/bin/env python
__author__ = "bt3gl"
# given two text, find the difference between them
# useful for ciphers, for example vinegere, when
# everything is all together
def find_word(A, B):
FOUND = False
for i in range(min(len(A), len(B))):
if A[i] != B[i] and not FOUND:
index = i
FOUND = True
return index
if __name__ == '__main__':
A = 'THISTIMEWEWILLGIVEYOUMOREPLAINTEXTTOWORKWITHYOUWILLPROBABLYFINDTHATHAVINGEXTRACONTENTTHATISASCIIMAKESTHISONEMORESOLVABLEITWOULDBESOLVABLEWITHOUTTHATBUTWEWILLMAKESURETOGIVELOTSOFTEXTJUSTTOMAKESURETHATWECANHANDLEITIWONDERHOWMUCHWILLBEREQUIREDLETSPUTTHEMAGICPHRASEFORTHENEXTLEVELINTHEMIDDLERIGHTHERENOTHINGTRICKYOKNOWMORETEXTTOMAKESURETHATITISSOLVABLEISHOULDPROBABLYJUSTPUTINSOMENURSERYRHYMEORSOMETHINGMARYHADALITTLELAMBLITTLELAMBLITTLELAMBMARYHADALITTLELAMBWHOSEFLEEZEWASWHITEASSNOWIDONTWANTTOMAKETHISHARDERTHANITNEEDSTOBEIFYOUVESOLVEDALOTOFSIMPLECRYPTOCHALLENGESYOUPROBABLYALREADYHAVETHECODEANDWILLBREEZERIGHTTHROUGHITIFITHELPSMOSTOFTHEPLAINTEXTISSTATICATEACHOFTHELEVELSIMNOTAMASOCHISTTHEFUNNYTHINGISTHATDEPENDINGONWHICHRANDOMKEYYOUGETTHATPOEMMIGHTBEEXACTLYTHERIGHTOFFSETTOSUCCESSFULLYMOUNTANATTACKWELLSEELITTLEBITMORELITTLEBITMORETHERE'
B = 'THISTIMEWEWILLGIVEYOUMOREPLAINTEXTTOWORKWITHYOUWILLPROBABLYFINDTHATHAVINGEXTRACONTENTTHATISASCIIMAKESTHISONEMORESOLVABLEITWOULDBESOLVABLEWITHOUTTHATBUTWEWILLMAKESURETOGIVELOTSOFTEXTJUSTTOMAKESURETHATWECANHANDLEITIWONDERHOWMUCHWILLBEREQUIREDLETSPUTTHEMAGICPHRASEFORTHENEXTLEVELINTHEMIDDLERIGHTHEREBLAHLAHOKNOWMORETEXTTOMAKESURETHATITISSOLVABLEISHOULDPROBABLYJUSTPUTINSOMENURSERYRHYMEORSOMETHINGMARYHADALITTLELAMBLITTLELAMBLITTLELAMBMARYHADALITTLELAMBWHOSEFLEEZEWASWHITEASSNOWIDONTWANTTOMAKETHISHARDERTHANITNEEDSTOBEIFYOUVESOLVEDALOTOFSIMPLECRYPTOCHALLENGESYOUPROBABLYALREADYHAVETHECODEANDWILLBREEZERIGHTTHROUGHITIFITHELPSMOSTOFTHEPLAINTEXTISSTATICATEACHOFTHELEVELSIMNOTAMASOCHISTTHEFUNNYTHINGISTHATDEPENDINGONWHICHRANDOMKEYYOUGETTHATPOEMMIGHTBEEXACTLYTHERIGHTOFFSETTOSUCCESSFULLYMOUNTANATTACKWELLSEELITTLEBITMORELITTLEBITMORETHERE'
index = find_word(A, B)
print A[index: index + 15]
print B[index: index + 15]