Skip to content

Playstation 2 - DNAS #92

Description

@IamLupo

Before you go online and play the game you need to do a DNAS check. This DNAS you can only let it function correctly when you patch the game like this:

DNAS Patch
D0691E7E 000003E0
10691E3A 0000AC80
D0691E7E 000003E0
00691E40 00000000
D0691E7E 000003E0
20691E54 ACE00004
D0691E7E 000003E0
20691E80 03E00008
D0691E7E 000003E0
10691E86 0000ACC3
D0691E7E 000003E0
20691E7C 34030005

Well i did a research on all playstation 2 games and figure out how the method works. It uses a passphrase and auth_data that are stored on the disk. When you connect to the DNAS server it also get a key. All this information together you can extract the public RSA key(n, e) out of the auth_data.

----------------------------------
Need for Speed - Most Wanted:
	SLES-53558:
		n        : 168308158711814283772179651735468477861579604299479766112914072943706928108072907479758014279710770631257702062066143594082495684200653474020203780566770285409890600356473589686864619874409818043364587223000106707051363791315156987184254476305400327419672913241128048152713160424164920068519774711982738231557
		e        : 65537
----------------------------------
Need for Speed - Underground:
	SLES-51967:
		n        : 141172007140640702361668307597384070874618087731875003007507028444475429934603633753749527183854608673255025423215089744707573249318389268177809501914039002104372109270226787165990512579718545036338828195319172505153221527612054162967947489629350043472852711757422321675551496114056134812572642255573966764093
		e        : 65537
		sig      : 126030188238293855813184254712471271457432470115372846690176458834886325380733825656873806260233428402864800712542950115682410174536048615558361848320776457646167088097464829662055783157068432557356203332017368059641882063031834622848318632952051384803895856958284622861167508090316255301255650341680203038660
		sig (hex): 0xb37912f39b7b016bad2c873b3a8ebcf06f0fe6032995f1887184b33f19ef9587308b09423f6eeb2a4cb49dd816a985353d450f675f3355ebfdb40e406bf795f8d48fd4116046c2ea7c9241ec0a68d4901be4957b0d72ddff3f51c477beef9e2d36d68c900602db273009575be87746fc8564cf8f5d0944051bdea8eebcddffc4
		message  : 0x1ffffffffffffffff008dd599aede9e6b1f5e6cfa23229044cfd05fa15298cd18c5bf0ff499b01e9f3ef439ecd2d758f236c5ec5ae87c9eb74cfe599f9727b75ce6c7507f776f1fb66358a33630fb2967c015c1a8925f60df5eb97ef5e03651c6fda2457512642b76bdcfadeecbd6558cec16357e76955dd44fdcca2f121c
	SLUS-20811:
		n        : 164325837851653354366240739565605614606717459605567100376801561685656340784078551247643250901800840914688783796056776701779539674497768296773917395725989094174107289619169593544446742959151361191571505367909456402979370511139978435341014350457380694487342581207827706319860789728677899638121401090040789971093
		e        : 65537
		sig      : 15130128019318150575613872160132792789282724121870277045610369792257458161318521713926944483438188291635779605724712096919422998487629268829286375953432232616601923580474808237893115062666310049569653460574198916048922872399010789383155280280655141298513491611019668526311711518804054253969015322063067069443
		sig (hex): 0x158bc7cd684a15166190bb303e84ef89830b19d27dc6c1cedbc3ddd66300ac12ab17dece30e41ccca8dddbace1339bf19ebedb16acb151d3ea4574fe0bb96478da33a80071b4d302f336f5b16d71281d2862801469f5d3af724b7314f50f258d1de3b7d8266a2df812b35900f55cebae67cea80a414e26091fbbbb8381fabc03
		message  : 0x1ffffffffffffffff0093de56d0c7d5f8b78993ca7943eec372502c3974a396a2ab121c57625b7cacef5b02bf22d8b8da614ba4db8e929e01e3cb3b586ed1fa1ae417714773eef36249f6216cced9463025eb0cb37daab46176efb9e5c1b3ffa6cb71ed3e5fe1a0a8d7c214a69c5bd7c146e375c48e29250419dfeadb93e9
----------------------------------
Need for Speed - Underground 2:
	SLES-52725:
		n        : 142280245740585127083760312117546995469425400206051965314309393136376908987099914237439279685497771212251531551179933495777282626019628702136205034488509334943802683965171040076362000631605562334134959750681101283931760433111423458723996109338141861155017992824734890160768811131560617808301378927624216435083
		e        : 65537
		sig      : 129070642892412919150627968549357867014180722100766135480451919726045053497423969420438864925915654558007548634935626096770853166570378370738260584651134774891712648298614758347949608295747999896222273839080595843917585890290295048950799191039443749714599131902587404579476934088213303455789074425003828990727
		sig (hex): 0xb7cd7d85d840b3c4ae328ca80d38d8c4d173f2fe06e5934ca3169bf0e19227a5808aa0838852a1202651bcea389f82ed4220508a6606157634747f374358a6f6a56f1d105f79260d297628d4531031d620c6ca4b824c31559332c7ba480c2acf42aec0a89b4c1c812da1f9b516177a6398a32e4a82a2888c477f9fb7b8365307
		message  : 0x1ffffffffffffffff0089c10566ce7f1cc93786c18594c2afca8e03865183b161b6412bf8c5d1741e5b3624c105a3ddcedb639061f85311c2e214493397fb944d3dc0460291bb21ecf245adf7e98bc6c5ef5726e7aa37a98c4bf3c0e3ee54312b14782da6334e922694401d7ecbe443ba3b69a2e5a14b72ed3f32d02d8701
	SLUS-21065:
		n        : 116736219541500597935422173078054502457738765002934917003554744905468897122628284032469578652147726600275044746726744661681660430822394859089763073680725222372332205409641334907062139609165017054663502381192715604488186085014641627863732622282051243374764614190012696379016160535181753361428009253722235793389
		e        : 65537
		sig      : 91528765700229423391554632602130369947184480810810519800873612862664634601118134258415133558375468245101986776592509597715378366105247278113797063047653358696613562138564495923026549313122512835068603127031684894763788968635445324916770424651681735789567717661571354800365230233386365349577964887291174748558
		sig (hex): 0x82575eb51ba2d07abdad11440362667b33a9e5a4dd7fb81d9fa076e84c9f854cde492d33b5a1f614ade091104a2f2426b4e85b9d14fbec3a192af84dd140027cf34ccc48adeb38a87cddc63a509e423fcdf8f26bfd95e50fd7957ea812106480731952d2e7067841d35e692d198de94810e5a7d2abb6aeb3e996cb327446818e
		message  : 0x1ffffffffffffffff004b3df06dcae420c5f83200043ef3a1aef8665b2bdfcb198fe2bc3b70392ab38567a4f2318813f78045f78583eb2632e38c8d0e6c5928fb3be437ac1e6160a3c90496fb8ca9f20defea9273d5b8a5b94533c7b18cefadc7d4e474f246d4960fd92c0a65d6fc73c5e60538bcbdde7502113db49e2d61
----------------------------------

What you can see of my extracted data is that Most wanted is missing the signature. This is because back in the data we manage to collect the DNAS packets for underground 1 and 2 and extracted the signature for those games. This means without patches we pass the DNAS check.

If we ever can crack n = p * q. And find the two prime factors p and q. Then we could make our own Private RSA key and sign our own messages. This way the community doesn't require a patch anymore.

Hopefully this is enough information how the DNAS works for this game.

You can find more information over here:
[1] https://github.com/Project-Backstab/DNASBypass/tree/main
[2] https://github.com/Project-Backstab/DNASBypass/blob/main/data/DNAS/list.txt#L786
[3] https://github.com/Project-Backstab/DNASBypass/tree/main/data/DNAS/Games/Need%20for%20Speed%20-%20Most%20Wanted/SLES-53558

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions