Software mit bösartiger Absicht an ausführbare Dateien gebunden?

525
Doktoro Reichard

Ich hatte einige Software für mich von einem Programmierer in Übersee erstellt. Ich bin etwas verdächtig, da die Software ausführbar ist. Ich dachte darüber nach, ob sie einen Schlüssellogger an die für mich erstellte Anwendung oder an jegliche Art von Software mit böswilliger Absicht gebunden haben könnten. Wie kann ich es herausfinden?

5
Sie könnten versuchen, einen Paket-Sniffer anzuschließen und zu sehen, ob das Programm TCP- oder UDP-Pakete sendet. Darüber hinaus würde ich sagen, dass es wichtig ist, eine vertrauensvolle Beziehung zu Ihren ausländischen Partnern zu haben. Robert Harvey vor 14 Jahren 1
@closers: Wenn Sie jemanden im Ausland beauftragen, Software für Sie zu schreiben, wie hängt dieser SuperUser zusammen? Robert Harvey vor 14 Jahren 0
Es fragt, wie man feststellen kann, ob sich in einer Software ein Key Logger befindet, was keine Programmierfrage ist. Die Tatsache, dass die Software vertraglich für das OP geschrieben wurde, ist meist unerheblich. David Z vor 14 Jahren 1
Was für eine Software? David Thornley vor 14 Jahren 0

6 Antworten auf die Frage

11
cHao

For reference, when you have someone create a custom program for you, you should insist on getting the source code -- all of it, in a state where you (or someone you trust) can recompile it with the proper tools. That's the only way to be anywhere close to certain of what any binary exe does, short of learning assembler language.

5
Sniggerfardimungus

If you contracted with them to have it done, your best bet is to get the source. If you paid for it, your contract should read this way, anyway. Then you just inspect the code yourself before you use it.

If there's no way to get source, it really comes down to a trust issue. If you don't trust them, you probably should find an alternative solution. And, for the love of all that's FSM, DON'T release a product based upon that code. Remember, depending upon where you are and who your customers are, YOU can end up shouldering the liability for any damage that system does.

3
BlueRaja - Danny Pflughoeft

Can't believe no one has mentioned this yet: Run a virus scanner, it is not easy to fool their heuristics.

Aside from that, demand the source code and (have someone) check it over.

1
jeffamaphone

You should have contracted to get the source code and built it yourself after auditing the source code.

0
DanJ

Here are a few ideas:

  • Run it with process monitor and see if it writes to disk, the registry, etc.
  • Profile it via depends and see if it loads any strange dlls you didn't expect.
  • Run it in a virtual machine and see what system changes are made.

Make sure you have a good anti-virus running.

Wenn Sie dem nicht vertrauen, würde ich es vorziehen, es in einer VM ohne Netzwerkzugriff auszuführen. Auf diese Weise ist Ihre Maschine nicht gefährdet, und es besteht keine Chance, dass sie nützliche Informationen nach Hause anrufen kann. SqlRyan vor 14 Jahren 2
Eine Black-Box-Analyse ist niemals eine ausreichende Prüfung eines Systems. Es sei denn, Sie mögen Drei-Kilotonnen-Explosionen: http://en.wikipedia.org/wiki/Siberian_pipeline_sabotage. (Die bösartige Logik wurde entwickelt, um das Testen zu umgehen und kommt nur aus dem Sleeper-Status heraus, wenn sie vollständig in Betrieb war.) vor 14 Jahren 2
0
Aaron

What language was the code written in? If it was written in .NET, for example, you could Reflector to disassemble and take a look at what the code actually does.