Privacy - Wat niemand over je mag weten

schrijft een c# programma ook altijd de metadata weg?

04-08-2017, 11:55 door [Account Verwijderd], 3 reacties
Ik weet niet of dit een echte privacy vraag is, zo niet dan mogen de moderators dit topic verplaatsen.

Mijn vraag gaat over het schrijven van een programma in c#.
Klopt het dat (net als bij de exif data van foto's) standaard bij het maken van een c# programma metadata over de machine waarop de software is ontwikkeld worden opgeslagen?

Als dit zo is, hoe kan ik deze metadata over bijv. processor of serienummer vinden?

Zijn deze gegevens verder noodzakelijk of kan een c# programma ook zonder dit functioneren?
Reacties (3)
04-08-2017, 12:15 door Anoniem
Door WesleyJ: Ik weet niet of dit een echte privacy vraag is, zo niet dan mogen de moderators dit topic verplaatsen.

Mijn vraag gaat over het schrijven van een programma in c#.
Klopt het dat (net als bij de exif data van foto's) standaard bij het maken van een c# programma metadata over de machine waarop de software is ontwikkeld worden opgeslagen?

Als dit zo is, hoe kan ik deze metadata over bijv. processor of serienummer vinden?

Zijn deze gegevens verder noodzakelijk of kan een c# programma ook zonder dit functioneren?

Dat hangt niet puur van de taal af, maar wel enorm van de compiler/linker en het formaat van de binaries die op een bepaald OS platform gebruikt worden.

Of bij c# (wat min of meer garandeert dat een microsoft compiler en Windows platform van toepassing zijn) specifiek CPU of hardware versie worden opgeslagen weet ik niet .

Wel kan ik in het algemeen zeggen dat er uit een binary "veel" valt op te maken over de gebruikte compiler, tijdstip van compileren e.d.
(dit op basis van ELF binaries op Linux, meestal afkomstig van C source )

Begin vooral met google (bv "windows file format compiler information" ) en lees (voor windows )

https://msdn.microsoft.com/en-us/library/ms809762.aspx
05-08-2017, 23:37 door Vixen - Bijgewerkt: 05-08-2017, 23:41
Ik snap wat jij bedoelt, TS!

Als jij Visual Studio gebruikt om een C# programmaatje te maken, en vervolgens de gecompileerde exe gebruikt / verspreid / weggeeft dan zit daar inderdaad PRIVACYGEVOELIGE Informatie in. Namelijk by default zit er het pad in van het debug bestand.

Dit is standaard iets als:

C:/Users/JOUW GEBRUIKERSNAAM/documents/visual studio 201x/projects/jouw project/bin/debug/naam.pdb

Dit kan je eenvoudig zien door de executable the analyseren op strings. (Je kan zelfs je exe in notepad openen en je zal deze text ergens zien)

Dit is eenvoudig uit te zetten.
Ga bij je visual studio naar instellingen van je project (zodra je deze geopend hebt) en ga naar de compiler instellingen. Vind ergens een optie met pdb debug en zet deze naar none of uit.

(Ik kan geen precieze omschrijving geven, aangezien ik op vakantie ben zonder mijn computer)

Als je verder nog vragen of hulp nodig hebt, stel ze :-)

Groeten,
Vixen

PS. De reden dat ik zo enthousiast dit antwoord schrijf in mijn vakantie is dat ik dit privacy probleem sirieus vind, terwijl er weinig over de vinden is op Google. (ik wenste dat ik dit wist, voordat ik 5 jaar geleden als script kiddie c# code kopieerde en plakte van YouTube tutorials, waarna ik achteloos mijn exe deelde met mijn vrienden. Gelukkig niks ernstigs maar toch)
06-08-2017, 11:38 door karma4
Ik zou zeker even in de ADS Alternate Data Streams kijken.
https://blogs.msdn.microsoft.com/junfeng/2006/04/21/alternate-data-stream/
https://www.microsoft.com/msj/1198/ntfs/ntfs.aspx ... https://msdn.microsoft.com/en-us/library/windows/desktop/hh449404(v=vs.85).aspx
Het is van lang geleden maar ik merkte raar gedrag op wanneer iets over fat gekopieerd dan wel met ntfs. In het eerste geval leek hij na overzetten de boel opnieuw te vertalen. Ik weet niet meer welke taal compiler het betrof. Het alarm vlaggetje is blijven staan dat er meer data is dan je zo op het eerste gezicht denkt.
Daarnaast heb je nog allerlei attributen die de compiler zelf als header toevoegt. Dat is wie wat wanneer informatie als een soort versie aanduiding. Vaak handig voor debugging.
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.