Clever-Excel-Forum

Normale Version: Country-Settings
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

kann man aus einem Workbook auslesen, mit welchen Country- oder Language-Settings es erstellt wurde.

In xl vor 2007 ging es:

Zitat:Properties SummaryInformation:
codepage: 1252 ANSI Latin 1; Western European (Windows)
author: b'Name'
last_saved_by: b'Name'
create_time: 2017-03-08 16:29:44
last_saved_time: 2017-03-08 16:52:01
creating_application: b'Microsoft Excel'
security: 0
Properties DocumentSummaryInformation:
codepage_doc: 1252 ANSI Latin 1; Western European (Windows)
scale_crop: False
company: b'Firma'
links_dirty: False
shared_doc: False
hlinks_changed: False
version: 726502

Ab xl2007 gehören diese Settings zu "Application" und stehen nicht mehr einfach auszulesen im Workbook.

In der "Theme1.xml" und "styles.xml" steht zwar recht viel, es scheint aber für alle Länder gleich zu sein.

Interessant wäre auch ein Zeitstempel, der die Zeitzone angibt.

Das Auslesen muss ohne Excel, eventuell mit LibreOffice, möglich sein. Das Beste wäre Python, das auch die Binär-Codes auslesen kann.

Kann man die UUID's dem Land der Installation (PC oder MS Office) zuordnen?

Vielen Dank

mfg
Hallo,

UUID ist nicht gleich UUID, je nachdem wie man die aufbaut. Es kommt wohl darauf an, was für den Node genommen wird ...

https://de.wikipedia.org/wiki/Universall...Identifier
https://www.ics.uci.edu/~ejw/authoring/u...ids-01.txt (Draft aus 1998 von MS)

Ich würde sagen, die GUIDs die in den XML's von Excel-Dateien zu finden sind, sind Version 4, also mit Zufallszahlen
auch für den Node-Teil. Standard-GUIDs z.B. von MS findest Du hier ...

https://uuid.pirate-server.com/ (Nebenbei, die URL-Adresse ist nicht so optimal, jedenfalls ist das kein Pirateriezeugs)

Aus der docProps/Core und docProps/app lassen sich ein paar Informationen ziehen, ein Hinweis auf dei Sprache
gibt es über die HeadingPairs, allerdings bringt das nicht viel, denn EN oder DE sprechen mehrere Länder.
Zeitangaben sind m.W. in Office Docs immer UTC.

Gruß
Kannst du bitte erlautern wozu ?

Denn Excel wandelt alles um wenn die Datei geöffnet wird (Formula, Daten, separators, usw.)

Vielleicht gibt es eine Ausnahme: die Builtin customlists.
@snb

Es gibt eine Datenbank mit ca einem Duzend xlsx und xlsm mit Viren. Diese wollte ich etwas analysieren, sowohl auf die Art des Schadcodes ("oleObject.bin") als auch auf Hinweise auf die Autoren.

@Mourad

vielen Dank, die link zur "Piraten"-Anlyse von UUID's ist sehr gut. Allerdings muss ich da noch viel daran arbeiten.

Im ersten Test mit einer meiner Datein:

In der vbaProject.bin sind folgende UUID's:

Code:
# Powershell
$Pfad = 'C:\Users\xxxx\Desktop\'

$Tx = ''

$VBA = get-content ($Pfad + 'VBAProject.bin') -Encoding Byte

foreach ($B in $VBA) {
    if ($B -ne 0x00) { $Tx = $Tx + [char]$B }
}

$RegEx = $Tx | Select-String -Pattern '\w{8}-\w{4}-\w{4}-\w{4}-\w{12}' -AllMatches

$RegEx.matches.Count
$RegEx.Matches.value

# Ergebnis:
8
00020819-0000-0000-C000-000000000046
00020820-0000-0000-C000-000000000046
000204EF-0000-0000-C000-000000000046
00020813-0000-0000-C000-000000000046
00020430-0000-0000-C000-000000000046
2DF8D04C-5BFA-101B-BDE5-00AA0044DE52
21703E7F-3501-4745-BBD2-FE53A8FC07BA
3832D640-CF90-11CF-8E43-00A0C911005A

Eine Abfrage aller UUID Version 1:

Code:
foreach ($uuid in $RegEx.Matches.value) {
    $tt = $uuid.split('-')
    if ($tt[2].Substring(0,1) -eq '1') {
    $Ret = iwr ('https://uuid.pirate-server.com/' + $uuid)
    Write-Host '-------------------------------------'
    Write-Host $uuid
    write-host ($Ret.ParsedHtml.title, $Ret.ParsedHtml.body.innerText)
    }
}

gab die Warnung "Melissa", die MAC und diverse Zeitstempel.

Als nächsten Schritt werde ich die Malware auf diese Art testen. Ohne Powershell wird das etwas mühsam.

Da das Thema aber nur bedingt hier ins Forum passt, muss ich mir noch einmal überlgen, ob ich darüber berichte.

mfg

----------------------------------------------

PS: kleines update solange noch Änderungen möglich sind:
Es gibt UUID's der Version 1, aber einige Zeichen werden nicht richtig aus der zip umgewandelt. Damit ist eine Abfrage auf der "Piraten"-Seite nicht möglich.

Es bleibt die Erkenntnis, dass auch xlsx Schadcode enthalten können.
Hi,
es gibt Frameworks zu Excel Dateien, die recht gut auslesen (das xml).
Eines ist EPPlus - kostenlos, hat aber auch Schwächen, könnte aber schon ausreichen sein für deine Anforderungen.
Dann gibt es Aspose (.cells), was richtig stark ist, aber sehr teuer - wobei die Testversion vollkommen ausreicht für deine Experimente, denke ich.
Das ganze am Besten in DotNet auch da gibt es kostenlose Versionen. Ich arbeite da am liebsten mit vb.net trotz der ganzen c# MöchteGernExperten


Und wer sich einmal damit beschäftigt hat, wird noch überrascht sein, was man damit alles auslesen kann.
Viel Spaß - und viel Zeit  Sleepy
Hallo,

ich nutze die kostenlose Python Programme von Didier Stevens (https://blog.didierstevens.com/my-software/), das hat den Vorteil, dass es auch unter Linux läuft. Komfortabel ist anders, aber dafür sicher.

Da auch LibreOffice Teil des Raspberry Pakets ist, kann man sogar in Einzelfällen VBA nutzen. Dass keine API's und CreateObject laufen, ist nur von Vorteil.

mfg

(PS: auch nach langem googeln habe ich nichts gefunden bei UUID Version 4 den seed zu finden. Ein Test mit Powershell zeigte, dass auch die 2-Byte-Felder niemals mehr als dezimal 4000 ergeben. Aber zur Krypto-analyse fehlt mir noch viel)

(PS2: in einigen Word-Dateien gibt es den Tag "lang=" und ein Länderkürzel)