Talk:Content Manager Assistant
The only thing CMA is doing is a POST request to grab the latest psp2-updatelist.xml. I’ve analyzed the CMA.exe (main application), CMANPLib.dll (NP handler) and the CMAMetaGen.dll (Metadata parser) files and there doesn’t seem to be any relevant data being sent back to the servers. From CMANPLib.dll: (http://pastebin.com/a5VS1wPJ) ::
- CMA client info: ContentManagerAssistantW/1.0 User-Agent - PSN data: urn:service-entity:psn (URN service) IV0001-NPXS01010_00 (Ticket ID) - Pseudo functioning: open("POST", "https://auth.ac.playstation.net/np/auth"); setHeader("Content-Type", "application/x-www-form-urlencoded"); setHeader("Content-length", data_length); setHeader("X-NP-Status", "OK"); setHeader("X-NP-Version", "3.0"); setHeader("NG", "1.0"); - Vars: loginid password deviceid serviceid serviceentity first - Defines: maxsize = 65536 type = 0 - Format: <%016llx%016llx%016llx%016llx>
Patching the GetTicket function call in CMANPLib.dll should do the trick.
CMA application collects much more information than it’s supposed to.
Basically, the main executable hooks CMANPLib.dll in order to start a network NP connection with the Sony servers and it hooks the CMAMetaGen.dll to parse every single file that goes through the application. During execution, each file’s data is collected and stored in a security cookie which is shared through the NP connection. However, the mandatory firmware update does not seem to be related to this. The CMA application itself does this on it’s own. Apparently, updates to the CMA application alone are just enough to trigger the firmware mismatch error (still need to investigate this).
What’s really concerning is that every single file is analyzed with the proprietary dll and the generated data fields ARE sent back through the cookie. Properties like “copyright”, “appli_description”, “content_path”, “permission_type”, “drm_string”, “marlin_id”, to name a few, are associated with the user’s files’.
I’ve also found some references to files used for media handling in a new .prx format. Their names are somewhat intriguing:
RiffPromoter.suprx AACPromoter.suprx Mp3Promoter.suprx MsvPromoter.suprx tiff_promoter.suprx png_promoter.suprx jpeg_promoter.suprx gif_promoter.suprx bmp_promoter.suprx
CMA-PS Vita dialog
[mtp_dev_attach:56] VITA(id=5) is attached [cmdThreadRoutine:148] Check DeviceStatus: OK [SendCommand:1429] [SendCommand:1432] [printOperation:815] ---- Operation: OperationCode_GetDeviceInfo[0x1001] [Transaction=0]--- [SendCommand:1446] [cellUsbMtpSendCommand:1010] Before cellUsbdBulkTransfer [SendCommandDone:308] SendCommandDone [RecvResponseDone:334] RecvResponseDone [cmdThreadRoutine:155] GetDeviceInfo: OK  [printDevInfo:767] --------------- Device Info Dataset ---------------- [printDevInfo:770] Standard Version = 100 [printDevInfo:771] MTP Vendor Extension ID = 6 [printDevInfo:772] MTP Version = 100 [printDevInfo:773] MTP Extensions = microsoft.com: 1.0; scei.co.jp/psvita:18.104.22.168.0; sony.net/MRLN: 1.0 [printDevInfo:774] Functional Mode = 0 [printDevInfo:775] ... [printDevInfo:776] Manufacturer = Sony Computer Entertainment Inc. [printDevInfo:777] Model = PlayStation(R)Vita [printDevInfo:778] Device Version = 1.51 [printDevInfo:779] Serial Number = [printOperation:815] ---- Operation: OperationCode_OpenSession[0x1002] [Transaction=1]--- [SendCommand:1446] [cellUsbMtpSendCommand:1010] Before cellUsbdBulkTransfer [SendCommandDone:308] SendCommandDone
(dump made by HI_Ricky on IRC)
contains the current account id