routerkeygen / routerkeygenPC

Qt Port for Linux, Mac OSX and Windows
GNU General Public License v3.0
288 stars 89 forks source link

Upc07Keygen #51

Open Robin6464 opened 4 years ago

Robin6464 commented 4 years ago

Upc07Keygen does not detect the network as supported. Manual calculation generates the wrong password. I compared the routerkeygen by yolosec project for android and https://haxx.in/upc_keys.c on cygwin with the same UPC networks. Routerkeygen by yolosec and https://haxx.in/upc_keys.c generate the same good passwords. Tested at 2.4 GHz.

RealEnder commented 4 years ago

Hi, can you give us example BSSID, ESSID and the correct password

Robin6464 commented 4 years ago

UPC4437937 38:43:7D:3F:9F:51

Routerkeygen for android and https://haxx.in/upc_keys.c detect this network as supported and generate the same passwords:

-> WPA2 phrase for 'SAAP36524337' = 'FSPMVAWQ' -> WPA2 phrase for 'SAPP36524337' = 'ZVAYYEGB' -> WPA2 phrase for 'SBAP36524337' = 'KGGEGZSF' -> WPA2 phrase for 'UAAP36524337' = 'BVFQAARK' -> WPA2 phrase for 'SAAP42846737' = 'EDQFRHBT' -> WPA2 phrase for 'SAPP42846737' = 'NDVKPJHU' -> WPA2 phrase for 'SBAP42846737' = 'DACCKAJB' -> WPA2 phrase for 'UAAP42846737' = 'SNTGDREN' -> WPA2 phrase for 'SAAP76524337' = 'FEBEYEQH' -> WPA2 phrase for 'SAPP76524337' = 'WKAMYDJA' -> WPA2 phrase for 'SBAP76524337' = 'EQYAHMDU' -> WPA2 phrase for 'UAAP76524337' = 'QCTWGZPG' -> WPA2 phrase for 'SAAP82846737' = 'CCCFCQEU' -> WPA2 phrase for 'SAPP82846737' = 'MFTAFQXW' -> WPA2 phrase for 'SBAP82846737' = 'ZMWYWYHY' -> WPA2 phrase for 'UAAP82846737' = 'YDFCUVSX'

RouterkeygenPC should set up the network as supported and generate the same password list but it is not. Generates a completely different password list and does not detect the network as supported.

It looks like RouterkeygenPC and Routerkeygen for android and https://haxx.in/upc_keys.c use the same algorithm but there must be some error in RouterkeygenPC in the Upc07Keygen file.

No password is correct but the algorithm generated list is good. Many times Routerkeygen for android (Upc07Keygen - not ubee) and https://haxx.in/upc_keys.c (Upc07Keygen - not ubee) generate the right password for me when I was in another city. I want to point out that this is not about a good password but about an algorithm that generates a list of passwords. Upc07UbeeKeygen in RouterkeygenPC works fine.

Screenshots:

https://imgur.com/a/TxTLxyI - RouterkeygenPC https://imgur.com/a/CIrbRDZ - https://haxx.in/upc_keys.c https://imgur.com/a/4tUVTCs - Routerkeygen for android

RealEnder commented 4 years ago

I don't see differences. This is the output from routerkeygenPC:

$ ./routerkeygen-cli -m 38:43:7D:3F:9F:51 -s UPC4437937
Calculating keys. This can take a while.
Calculated Passwords for UPC4437937
SJGUCAHF
NXEPWDXW
GHDHDCYP
MNHNHCHD
HFMWKEWS
HHEXZJGF
TAFSQEUQ
FHKJJENH
FSPMVAWQ
ZVAYYEGB
BVFQAARK
KGGEGZSF
EDQFRHBT
NDVKPJHU
SNTGDREN
DACCKAJB
DJCABGNF
BHDERTBK
UDJCTTSV
XGVNUXFH
VEDCPRUE
AUXDBADS
XCXEFJRC
BFHBQXPR
FEBEYEQH
WKAMYDJA
QCTWGZPG
EQYAHMDU
CCCFCQEU
MFTAFQXW
YDFCUVSX
ZMWYWYHY
VNCJCGDB
SXBCCTBF
MDFCXHQU
ZXTUCDBE

With upc_keys we're running twice, since we have to invoke it with 24 and 5 parameters:

$ ./upc_keys UPC4437937 24

 ================================================================
  upc_keys // WPA2 passphrase recovery tool for UPC%07d devices 
 ================================================================
  by blasty <peter@haxx.in>

  -> WPA2 phrase for 'SAAP36524337' = 'FSPMVAWQ'
  -> WPA2 phrase for 'SAPP36524337' = 'ZVAYYEGB'
  -> WPA2 phrase for 'SBAP36524337' = 'KGGEGZSF'
  -> WPA2 phrase for 'UAAP36524337' = 'BVFQAARK'
  -> WPA2 phrase for 'SAAP42846737' = 'EDQFRHBT'
  -> WPA2 phrase for 'SAPP42846737' = 'NDVKPJHU'
  -> WPA2 phrase for 'SBAP42846737' = 'DACCKAJB'
  -> WPA2 phrase for 'UAAP42846737' = 'SNTGDREN'
  -> WPA2 phrase for 'SAAP76524337' = 'FEBEYEQH'
  -> WPA2 phrase for 'SAPP76524337' = 'WKAMYDJA'
  -> WPA2 phrase for 'SBAP76524337' = 'EQYAHMDU'
  -> WPA2 phrase for 'UAAP76524337' = 'QCTWGZPG'
  -> WPA2 phrase for 'SAAP82846737' = 'CCCFCQEU'
  -> WPA2 phrase for 'SAPP82846737' = 'MFTAFQXW'
  -> WPA2 phrase for 'SBAP82846737' = 'ZMWYWYHY'
  -> WPA2 phrase for 'UAAP82846737' = 'YDFCUVSX'

  => found 16 possible WPA2 phrases, enjoy!

$ ./upc_keys UPC4437937 5

 ================================================================
  upc_keys // WPA2 passphrase recovery tool for UPC%07d devices 
 ================================================================
  by blasty <peter@haxx.in>

  -> WPA2 phrase for 'SAAP16524337' = 'SJGUCAHF'
  -> WPA2 phrase for 'SAPP16524337' = 'NXEPWDXW'
  -> WPA2 phrase for 'SBAP16524337' = 'MNHNHCHD'
  -> WPA2 phrase for 'UAAP16524337' = 'GHDHDCYP'
  -> WPA2 phrase for 'SAAP22846737' = 'HFMWKEWS'
  -> WPA2 phrase for 'SAPP22846737' = 'HHEXZJGF'
  -> WPA2 phrase for 'SBAP22846737' = 'FHKJJENH'
  -> WPA2 phrase for 'UAAP22846737' = 'TAFSQEUQ'
  -> WPA2 phrase for 'SAAP56524337' = 'DJCABGNF'
  -> WPA2 phrase for 'SAPP56524337' = 'BHDERTBK'
  -> WPA2 phrase for 'SBAP56524337' = 'XGVNUXFH'
  -> WPA2 phrase for 'UAAP56524337' = 'UDJCTTSV'
  -> WPA2 phrase for 'SAAP62846737' = 'VEDCPRUE'
  -> WPA2 phrase for 'SAPP62846737' = 'AUXDBADS'
  -> WPA2 phrase for 'SBAP62846737' = 'BFHBQXPR'
  -> WPA2 phrase for 'UAAP62846737' = 'XCXEFJRC'
  -> WPA2 phrase for 'SAAP96524337' = 'VNCJCGDB'
  -> WPA2 phrase for 'SAPP96524337' = 'SXBCCTBF'
  -> WPA2 phrase for 'SBAP96524337' = 'ZXTUCDBE'
  -> WPA2 phrase for 'UAAP96524337' = 'MDFCXHQU'

  => found 20 possible WPA2 phrases, enjoy!

So results from upc_keys.c and routerkeygenPC match.

Robin6464 commented 4 years ago

Sorry for my mistake for the UPC4437937 network. Please compare this: UPC0047962 28: BE: 9B: D8: 40: D7 This time, RouterkeygenPC generates a different password list than Routerkeygen for Android and https://haxx.in/upc_keys.c. UPC0047962 is supported by Routerkeygen on android. If I'm not mistaken, RouterkeygenPC generates a wrong password list for UPC networks starting with 0 or 00. It still doesn't explain why the RouterkeygenPC application does not detect the UPC4437937 network as supported and must be calculated manually.