Frage

Grundsätzlich war ich Abhörpakete auf meiner PS3, als ich Motorstorming -Bestandteile betrachtete. Die Bestenlisten werden im XML -Format an meine PS3 geschickt, aber erst, nachdem ich autorisiert wurde. Kann mir bitte jemand sagen, was zwischen diesen drei Paketen passiert und wie ich es in einem Browser replizieren könnte?

Paket 1 von meiner PS3 bis zu Sony Servern

POST /ranking_view/func/get_player_rank HTTP/1.1
Host: ranking-view-a01.u0.np.community.playstation.net
Connection: Keep-Alive
Content-Length: 213
Authorization: Digest username="c7y-ranking01", realm="c7y-ranking", nonce="2SpsV4WABAA=47a2b36030cd94de1190f6b9f05db1bd5584bc2a", uri="/ranking_view/func/get_player_rank", qop="auth", nc="00000001", cnonce="d4eb1eb60ab4efaea1476869d83a6e0b", response="96b55c6e79f84dd41b46eb66bed1c167"
Accept-Encoding: identity
User-Agent: PS3Community-agent/1.0.0 libhttp/1.0.0

<?xml version="1.0" encoding="utf-8"?><ranking platform="ps3" sv="3.15"><titleid>NPWR00012_00</titleid><board>7</board><jid>Panzerborn@a5.gb.np.playstation.net</jid><option message="false" info="false"/></ranking>

Paket 2 Sony Server -Antwort auf meine PS3

Date: Fri, 26 Feb 2010 19:06:12 GMT
WWW-Authenticate: Digest realm="c7y-ranking", nonce="a3PFl4WABAA=6d375259676ec79641448a8032a795b8e12ccae4", algorithm=MD5, stale=true, qop="auth"
Content-Length: 401
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=iso-8859-1

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>401 Authorization Required</title>
</head><body>
<h1>Authorization Required</h1>
<p>This server could not verify that you
are authorized to access the document
requested.  Either you supplied the wrong
credentials (e.g., bad password), or your
browser doesn't understand how to supply
the credentials required.</p>
</body></html>

Paket 3 PS3 Antwort auf Sony Server Last Paket

POST /ranking_view/func/get_player_rank HTTP/1.1
Host: ranking-view-a01.u0.np.community.playstation.net
Connection: Keep-Alive
Authorization: Digest username="c7y-ranking01", realm="c7y-ranking", nonce="a3PFl4WABAA=6d375259676ec79641448a8032a795b8e12ccae4", uri="/ranking_view/func/get_player_rank", qop="auth", nc="00000001", cnonce="58869490a891002d8c56573496274a3a", response="ca3d6f252d4e398b8f751c201a3f8f08"
Accept-Encoding: identity
User-Agent: PS3Community-agent/1.0.0 libhttp/1.0.0

<?xml version="1.0" encoding="utf-8"?><ranking platform="ps3" sv="3.15"><titleid>NPWR00012_00</titleid><board>7</board><jid>Panzerborn@a5.gb.np.playstation.net</jid><option message="false" info="false"/></ranking>

Ich habe versucht, dies in Firefox- und Manipulations -Headern sowie in PHP Curl zu replizieren, aber ich komme nirgendwo hin. Ich gehe davon aus, dass es mit den Variablen von Nonce, Cnonce und Responce zu tun hat, die sich immer wieder ändern> <bitte help =)

War es hilfreich?

Lösung

Nonce, Cnonce usw. sind miteinander verbunden mit HTTP -Digest -Authentifizierung, Dies ist ein Authentifizierungsmechanismus, der die Authentifizierung ermöglicht, ohne ein Kennwort im Klartext zu senden. Wenn Sie also in Ihrem PS3 -Spiel betrügen möchten, müssen Sie dieses Passwort zuerst aus dem MD5 -Hash hacken, denke ich.

Und es heißt nicht HTTP Pakete, Auf Schicht 7 sagen Sie normalerweise Anfrage/Antwort oder ähnliches.

Andere Tipps

Der nonce an nonce und cnonce Sieh aus wie Hash -Codes.

Ein möglicher Abwehrmechanismus gegen Betrüger könnte Folgendes sein:

def ps3client_send_score():
    score = "bazillion points"
    nonce = md5(score + "something you don't know about")
    send_to_server(score, nonce)

Auf der Serverseite:

def get_client_score(score, nonce):
    if md5(score+"something you don't know about")==nonce:
        accept_score(score)
    else:
        reject_score_and_ban_the_fool_if_he_continues_this()

Es sei denn, Sie möchten Wochen damit verbringen, das zu finden, das zu finden Salz Tief in deinem Spiel, vergiss es.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top