242 lines
11 KiB
Plaintext
242 lines
11 KiB
Plaintext
|
# Here are some examples of DYNAMIC.
|
||
|
# Please refer to ./doc/DYNAMIC for documentation on how to set these up.
|
||
|
# Format names up to dynamic_999 are reserved for builtin functions.
|
||
|
####################################################################
|
||
|
# Simple DYNAMIC type for md5($p)^^4 (i.e. 4 steps of md5 recursively)
|
||
|
####################################################################
|
||
|
[List.Generic:dynamic_1001]
|
||
|
# expression shown will be the string: dynamic_1001 md5(md5(md5(md5($p))))
|
||
|
Expression=md5(md5(md5(md5($p))))
|
||
|
Flag=MGF_KEYS_INPUT
|
||
|
# here is the optimized 'script' to perform the md5 4 times on itself.
|
||
|
Func=DynamicFunc__crypt_md5
|
||
|
Func=DynamicFunc__clean_input2
|
||
|
Func=DynamicFunc__append_from_last_output_to_input2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt_md5_in2_to_out1
|
||
|
Test=$dynamic_1001$57200e13b490d4ae47d5e19be026b057:test1
|
||
|
Test=$dynamic_1001$c6cc44f9e7fb7efcde62ba2e627a49c6:thatsworking
|
||
|
Test=$dynamic_1001$0ae9549604e539a249c1fa9f5e5fb73b:test3
|
||
|
|
||
|
####################################################################
|
||
|
# Simple DYNAMIC type for md5($p)^^5 (i.e. 5 steps of md5 recursively)
|
||
|
####################################################################
|
||
|
[List.Generic:dynamic_1002]
|
||
|
# expression shown will be the string: dynamic_1002 md5(md5(md5(md5(md5($p)))))
|
||
|
Expression=md5(md5(md5(md5(md5($p)))))
|
||
|
Flag=MGF_KEYS_INPUT
|
||
|
# here is the optimized 'script' to perform the md5 5 times on itself.
|
||
|
Func=DynamicFunc__crypt_md5
|
||
|
Func=DynamicFunc__clean_input2
|
||
|
Func=DynamicFunc__append_from_last_output_to_input2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt_md5_in2_to_out1
|
||
|
# These are test strings for this format.
|
||
|
Test=$dynamic_1002$25de8cd0b0cf69c5b5bc19c8ee64adab:test1
|
||
|
Test=$dynamic_1002$a0b535420ea47849f7c2cc09a3ad0ac3:thatsworking
|
||
|
Test=$dynamic_1002$4cb029bd5b4ef79f785ca685caf17bf8:test3
|
||
|
|
||
|
####################################################################
|
||
|
# Simple DYNAMIC type for md5(md5($p).md5($p))
|
||
|
####################################################################
|
||
|
[List.Generic:dynamic_1003]
|
||
|
# expression shown will be the string: dynamic_1003 md5(md5($p).md5($p))
|
||
|
Expression=md5(md5($p).md5($p))
|
||
|
# NOTE, this format does NOT work on SSE2. It requires a md5() of a 64 byte string.
|
||
|
# SSE (or MMX) is limtited to 54 byte max password, due to 'enhancements'
|
||
|
# Thus, we need a non-sse2 safe flag.
|
||
|
Flag=MGF_NOTSSE2Safe
|
||
|
Flag=MGF_KEYS_INPUT
|
||
|
Flag=MGF_FULL_CLEAN_REQUIRED
|
||
|
# here is the optimized 'script' to perform hash 'like' IPB but salt replaced with password.
|
||
|
Func=DynamicFunc__crypt_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output_to_input2_as_base16
|
||
|
Func=DynamicFunc__append_from_last_output_to_input2_as_base16
|
||
|
Func=DynamicFunc__crypt_md5_in2_to_out1
|
||
|
# These are test strings for this format.
|
||
|
Test=$dynamic_1003$478b10974f15e7295883224fd286ccba:test1
|
||
|
Test=$dynamic_1003$18a59101e6c6fb38260d542a394ecb22:thatsworking
|
||
|
Test=$dynamic_1003$630b01b68b6db6fd43a751f8147d1faf:test3
|
||
|
|
||
|
####################################################################
|
||
|
# Simple DYNAMIC type for md5($p)^^6 (i.e. 6 steps of md5 recursively)
|
||
|
####################################################################
|
||
|
[List.Generic:dynamic_1004]
|
||
|
# expression shown will be the string: dynamic_1004 md5(md5(md5(md5(md5(md5($p))))))
|
||
|
Expression=md5(md5(md5(md5(md5(md5($p))))))
|
||
|
Flag=MGF_KEYS_INPUT
|
||
|
# here is the optimized 'script' to perform the md5 6 times on itself.
|
||
|
Func=DynamicFunc__crypt_md5
|
||
|
Func=DynamicFunc__clean_input2
|
||
|
Func=DynamicFunc__append_from_last_output_to_input2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt_md5_in2_to_out1
|
||
|
# These are test strings for this format.
|
||
|
Test=$dynamic_1004$de1b991dd27fb9813e88b957a455dccd:test1
|
||
|
Test=$dynamic_1004$6a62cd3c4d81139f61fb2553cdef0dc7:thatsworking
|
||
|
Test=$dynamic_1004$a977990e521c5d1d17c6d65fdf2681b4:test3
|
||
|
|
||
|
|
||
|
####################################################################
|
||
|
# Simple DYNAMIC type for md5($p)^^7 (i.e. 7 steps of md5 recursively)
|
||
|
####################################################################
|
||
|
[List.Generic:dynamic_1005]
|
||
|
# expression shown will be the string: dynamic_1005 md5(md5(md5(md5(md5(md5(md5($p)))))))
|
||
|
Expression=md5(md5(md5(md5(md5(md5(md5($p)))))))
|
||
|
Flag=MGF_KEYS_INPUT
|
||
|
# here is the optimized 'script' to perform the md5 7 times on itself.
|
||
|
Func=DynamicFunc__crypt_md5
|
||
|
Func=DynamicFunc__clean_input2
|
||
|
Func=DynamicFunc__append_from_last_output_to_input2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt_md5_in2_to_out1
|
||
|
# These are test strings for this format.
|
||
|
Test=$dynamic_1005$784c527d0d92873ff9c0773e1c35621d:test1
|
||
|
Test=$dynamic_1005$efcbbe6331caecf0e7f40160e65aadcc:thatsworking
|
||
|
Test=$dynamic_1005$abb8bdd2c6ac2dfea2b2af6f5aed5446:test3
|
||
|
|
||
|
####################################################################
|
||
|
# Simple DYNAMIC type for md5($p)^^8 (i.e. 8 steps of md5 recursively)
|
||
|
####################################################################
|
||
|
[List.Generic:dynamic_1006]
|
||
|
# expression shown will be the string: dynamic_1006 md5(md5(md5(md5(md5(md5(md5(md5($p))))))))
|
||
|
Expression=md5(md5(md5(md5(md5(md5(md5(md5($p))))))))
|
||
|
Flag=MGF_KEYS_INPUT
|
||
|
# here is the optimized 'script' to perform the md5 8 times on itself.
|
||
|
Func=DynamicFunc__crypt_md5
|
||
|
Func=DynamicFunc__clean_input2
|
||
|
Func=DynamicFunc__append_from_last_output_to_input2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt2_md5
|
||
|
Func=DynamicFunc__clean_input2_kwik
|
||
|
Func=DynamicFunc__append_from_last_output2_as_base16
|
||
|
Func=DynamicFunc__crypt_md5_in2_to_out1
|
||
|
# These are test strings for this format.
|
||
|
Test=$dynamic_1006$1ec1f32398f64cab51183f63630eceea:test1
|
||
|
Test=$dynamic_1006$f66b339ac21d6fd6af216f2b70aab2c9:thatsworking
|
||
|
Test=$dynamic_1006$e9d38522b5eeec753332e576e2e0fe5d:test3
|
||
|
|
||
|
####################################################################
|
||
|
# Simple DYNAMIC type for vBulletin md5(md5($p).$s) Included here to 'exercise' the script parser
|
||
|
####################################################################
|
||
|
[List.Generic:dynamic_1007]
|
||
|
# expression shown will be the string: dynamic_1007 md5(md5($p).$s) [vBulletin]
|
||
|
Expression=md5(md5($p).$s) (vBulletin)
|
||
|
# Flag needed here, is Salt. There is no 'fixed' saltlen.
|
||
|
Flag=MGF_SALTED
|
||
|
Flag=MGF_KEYS_BASE16_IN1
|
||
|
# vBulletin has a 'fixed' 3 byte salt, so list the fixed size
|
||
|
SaltLen=3
|
||
|
# here is the optimized 'script' to perform vBulletin hash
|
||
|
Func=DynamicFunc__set_input_len_32
|
||
|
Func=DynamicFunc__append_salt
|
||
|
Func=DynamicFunc__crypt_md5
|
||
|
Test=$dynamic_1007$daa61d77e218e42060c2fa198ac1feaf$SXB:test1
|
||
|
Test=$dynamic_1007$de56b00bb15d6db79204bd44383469bc$T &:thatsworking
|
||
|
Test=$dynamic_1007$fb685c6f469f6e549c85e4c1fb5a65a6$HEX$5C483A:test3
|
||
|
|
||
|
####################################################################
|
||
|
# Dynamic type for algorithm used in RADIUS User-Password attrinute md5($p.$s)
|
||
|
####################################################################
|
||
|
[List.Generic:dynamic_1008]
|
||
|
# expression shown will be this string:
|
||
|
Expression=md5($p.$s) (RADIUS User-Password)
|
||
|
# Flag needed here, is Salt
|
||
|
Flag=MGF_SALTED
|
||
|
# The salt has a fixed length of 16 bytes
|
||
|
Saltlen=16
|
||
|
Func=DynamicFunc__clean_input
|
||
|
Func=DynamicFunc__append_keys
|
||
|
Func=DynamicFunc__append_salt
|
||
|
Func=DynamicFunc__crypt_md5
|
||
|
Test=$dynamic_1008$b962b0d40fc9111ce5f8efab424bad73$NormalSaltNormal:secret
|
||
|
Test=$dynamic_1008$8bfccd9d67ec0bcdc38e9ae3c19a2903$FinishingwitHEX$:secret
|
||
|
Test=$dynamic_1008$bf239357f3aa95508a53fe41b7e5f2e3$inthem$HEXiddle6:secret
|
||
|
# unfortunately, these next 2 have embedded NULLs, so at this time they have been removed.
|
||
|
# later we will get dynamic working with these also.
|
||
|
#Test=$dynamic_1008$7fe3c4d1bf2ac68e94ee9f2bf75b9601$HEX$00000000000000000000000000000000:secret
|
||
|
#Test=$dynamic_1008$658bbf9f04538d6bede09a4a52a77504$HEX$626c6168003637383930313233343536:secret
|
||
|
|
||
|
######################################################################
|
||
|
# Dynamic Type for algorithm used in RADIUS Responses md5($s.$p)
|
||
|
######################################################################
|
||
|
[List.Generic:dynamic_1009]
|
||
|
Expression=md5($s.$p) (RADIUS Responses)
|
||
|
Flag=MGF_SALTED
|
||
|
Saltlen=-16
|
||
|
Func=DynamicFunc__clean_input
|
||
|
Func=DynamicFunc__append_salt
|
||
|
Func=DynamicFunc__append_keys
|
||
|
Func=DynamicFunc__crypt_md5
|
||
|
Test=$dynamic_1009$0b9b9fdf75fc79d85c5b69aa1de26288$Salt:test1
|
||
|
|
||
|
######################################################################
|
||
|
# Dynamic Type for algorithm used in RAdmin v2.x Responses md5($p.NULL-to-100-bytes)
|
||
|
# v2, where keys are in input, and set_input_len_100 'cleans' up if needed.
|
||
|
######################################################################
|
||
|
[List.Generic:dynamic_1010]
|
||
|
Expression=md5($p null_padded_to_len_100) RAdmin v2.x MD5
|
||
|
Flag=MGF_NOTSSE2Safe
|
||
|
Flag=MGF_KEYS_INPUT
|
||
|
Func=DynamicFunc__set_input_len_100
|
||
|
Func=DynamicFunc__crypt_md5
|
||
|
Test=$dynamic_1010$B137F09CF92F465CABCA06AB1B283C1F:lastwolf
|
||
|
Test=$dynamic_1010$14e897b1a9354f875df51047bb1a0765:podebradka
|
||
|
Test=$dynamic_1010$02ba5e187e2589be6f80da0046aa7e3c:12345678
|
||
|
Test=$dynamic_1010$b4e13c7149ebde51e510959f30319ac7:firebaLL
|
||
|
Test=$dynamic_1010$3d2c8cae4621edf8abb081408569482b:yamaha12345
|
||
|
Test=$dynamic_1010$60cb8e411b02c10ecc3c98e29e830de8:xplicit
|