BeID-lab / eIDClientCore

Präambel: Die Humboldt-Universität zu Berlin, Unter den Linden 6, 10099 Berlin, im Folgenden als Humboldt-Universität bezeichnet, stellt für die Anwendung im Zusammenhang mit deutschen hoheitlichen Dokumenten, wie beispielsweise den neuen Personalausweis und den elektronischen Aufenthaltstitel, eine clientseitige eID-Basis-Software zum Bereitstellen der sogenannten eID-Funktionalität, d.h. Ermöglichen eines elektronischen Identitätsnachweises, die sich an den Richtlinien des BSI TR-03110, TR-03112, TR-03130 orientiert, bereit, und zwar in dem Entwicklungszustand, in dem sie sich zum Zeitpunkt der Bereitstellung befindet. Diese Software, die im Folgenden als eIDClientCore bezeichnet wird, hat die Humboldt-Universität von der Bundesdruckerei GmbH, Oranienstraße 91, 10969 Berlin zur Verwendung in Lehre und Forschung sowie zur Bereitstellung an die Öffentlichkeit („Hosten“) für die allgemeine Prüfung und Verwendung durch jedermann erhalten.
15 stars 16 forks source link

Adds Travis-CI configuration #41

Closed frankmorgner closed 9 years ago

eriknellessen commented 9 years ago

Fixes bad handling of PREFIX in Makefile: What is the advantage of the new version?

Adds initial Travis-CI configuration: If I understand it correctly, the "INSECURE" switch is used to download the dependencies in an insecure way and to switch off peer verification and hostname verification in the eIDClientCore library. Installing software from a not authenticated source is another thing than switching off the security mechanisms in eIDClientCore. Installing software from a not authenticated source opens other possibilities for an attacker than performing the eID service in a non-authentic way. That is why I think, that two switches should be used. This way, one could install the dependencies only from authentic sources while still being able to switch off peer verification and hostname verification (which could make testing easier).

frankmorgner commented 9 years ago

(By the way, if everyone fetches the sources from Github via SSL, I don't think supplying the trust anchors for other SSL connections is very useful. If an attacker can compromise the connection to asn1c or libexpat, he can surely do the same to the initial github connection. And if he can, he can very well replace the trust anchors given in the repository.)

eriknellessen commented 9 years ago
frankmorgner commented 9 years ago

Two switches are fine with me, but please remember to not disable peer/hostname verification for everyone by default.

Have you tried setting CFLAGS or CXXFLAGS the standard way instead of using sed? something like export CFLAGS="..." && make eIDClient or ./configure CFLAGS="..."?

frankmorgner commented 9 years ago

See https://travis-ci.org/frankmorgner/eIDClientCore/jobs/80815883 and https://travis-ci.org/frankmorgner/eIDClientCore/jobs/80807648 if you want to investigate further why disabling the ssl verification and sha1validation was necessary.

psytester commented 9 years ago

After Makefile was changed from

$(PREFIX)/OpenSSL_1_0_2-stable/apps/openssl ciphers 'RSAPSK' -v ;\ 

into

OpenSSL_1_0_2-stable/apps/openssl ciphers 'RSAPSK' -v ;\ 

The build process does not longer work for me, as the make job does not longer find the openssl executable:

/bin/bash: line 10: OpenSSL_1_0_2-stable/apps/openssl: No such file or Directory
frankmorgner commented 9 years ago

it's possible that there was a previous error. Was the executable installed to $PREFIX/bin/openssl?

wolfmueller commented 9 years ago

The problem occurred while testing the fresh built binary for RSA_PSK chiphers.
It was fixed in f56c706d2ab5588dec224bf23c06c086620bc00b :-)

psytester commented 9 years ago

1.) There was no previous error during build process. It simply does not find the executable at the suspected location. make -d in debug mode and an additional pwd in it shows me the simple reason

Im make target openssl first we go into the OpenSSL Directory:

cd OpenSSL_1_0_2-stable ;\

And after the make install_sw the make Job is pretending to leave the directoy

Leaving Directory /........./eIDClientCore-master/OpenSSL_1_0_2-stable

but the pwd command clearly shows that we are still in that Directory ..../OpenSSL_1_0_2-stable

If you don't what to use $(PREFIX) a call will relative path is working too:

../OpenSSL_1_0_2-stable/apps/openssl ciphers 'RSAPSK' -v ;

2.) Yes, the executable was installed to $PREFIX/bin/ and it is executable from there

frankmorgner commented 9 years ago

nevermind, its fixed with 39f402844031add6d09f2c6b8c6cca5d502f1c0b

psytester commented 9 years ago

Yes, after Pull request 44 with usage of "apps/openssl ciphers 'RSAPSK' -v ;\ " it works as expected