Springe zum Hauptinhalt

Ausgerechnet CSC will Websites-Sicherheit testen ...

... und die Mut­ter­fir­ma ar­bei­tet für die NSA, toll.

Die CSC Deut­sch­land So­lu­ti­ons GmbH er­hielt 2014 den Big Bro­t­her Award, da sie im Auf­trag von 10 Bun­des­mi­nis­te­ri­en an si­cher­heits­re­le­van­ten Pro­jek­ten ar­bei­tet – und gleich­zei­tig ist die Mut­ter­fir­ma die ex­ter­ne ED­V­-­Ab­tei­lung der US­-­a­me­ri­ka­ni­schen Ge­heim­diens­te und hat Ent­füh­rungs­flü­ge in Fol­ter­ge­fäng­nis­se im Auf­trag der CIA or­ga­ni­sier­t. (Aus­führ­li­che Be­grün­dung der Preis­ver­lei­hung.)

Und aus­ge­rech­net die­se Fir­ma bie­tet nun ein kos­ten­freie Si­cher­heits­über­prü­fung von We­b­an­wen­dun­gen. Kla­r, da­mit kann CSC mit Er­laub­nis die Schwach­stel­len su­chen und dann hin­ten­her­um an die NSA ver­kau­fen.

Zi­tat aus dem Newslet­ter der Al­li­anz für Cy­ber­-­Si­cher­heit des BSI:

2. Kos­ten­freie Si­cher­heits­prü­fung von Web­prä­senz oder We­bap­pli­ka­ti­on durch CSC Deut­sch­land So­lu­ti­ons

Die CSC Deut­sch­land So­lu­ti­ons GmbH bie­tet den Teil­neh­mern ei­ne kos­ten­freie Si­cher­heits­prü­fung ei­ner Web­prä­senz oder We­bap­pli­ka­ti­on an.

[...] rich­tet sich an Un­ter­neh­men, [...] de­ren Kern­ge­schäft au­ßer­halb der IK­T­-­Bran­che lieg­t. Ins­be­son­de­re die­se Un­ter­neh­men sind er­heb­li­chen Ri­si­ken aus­ge­setz­t, wäh­rend Un­ter­neh­men der IK­T­-­Bran­che in die­sem Feld er­fah­rungs­ge­mäß be­reits gut auf­ge­stellt sin­d. [...]

Man kann das auch so in­ter­pre­tie­ren: Bei den Un­ter­neh­men der an­de­ren Bran­chen fin­den sich noch Si­cher­heits­lü­cken, die man leicht aus­nut­zen kann. Ide­al für In­dus­trie­spi­o­na­ge.

Transportr als Alternative zum DB Navigator und zu Öffi

End­lich ei­ne freie Soft­ware zur Fahr­pla­naus­kunft

/images/2014/transportr.png

Neu­lich blogg­te ich zu "Öf­fi als Al­ter­na­ti­ve zum DB Na­vi­ga­tor". Öf­fi hat aber einen – in mei­nen Au­gen gro­ßen – Nach­teil: Es ist kei­ne freie Soft­ware. Ich ver­ste­he auch nicht, wes­halb der Au­tor die Soft­ware nicht frei gib­t, ja noch nicht ein­mal ein Re­po für F-­Dro­id er­stellt.

In­zwi­schen wur­de ich auf Trans­por­tr hin­ge­wie­sen, ei­ne freie Soft­ware zur Fahr­pla­naus­kunft. Es be­nutzt als Grund­la­ge die glei­che Bi­blio­thek, die auch Öf­fi be­nutz­t, ver­wen­det aber ei­ne an­de­re Dar­stel­lung.

Im Un­ter­schied zum DB Na­vi­ga­tor ist die An­zei­ge viel kom­pak­ter, weil es nur um die Fahr­pla­naus­kunft geht, nicht um ei­ne Preis­aus­kunft. Kon­kret muss ich auf mei­nem Ge­rät nicht nach un­ten scrol­len, um "Su­chen" zu kli­cken. Bei DB Na­vi­ga­tor muss ich das tun, weil dar­über noch die An­ga­ben zu Bahn­card, An­zahl der Per­so­nen, et­c. ab­ge­fragt wer­den.

Trans­por­tr gibt es im Goo­gle Play Sto­re oder bei F-­dro­id.

Edit 2016: Na­men, Bild und Links an­ge­pass­t, das Pro­gramm hieß frü­her "Li­be­ra­rio".

In need for an enhanced git URL scheme

Which al­lows spe­cify­ing heads/­bran­ches and paths wi­thin the re­po­si­to­ry.

I'm current­ly tes­ting pro­jec­t­-­buil­der, to tool for ea­si­ly buil­ding soft­ware for dif­fe­rent Li­nux dis­tri­bu­ti­ons. One of the fea­tu­res of this tool is to check out the con­fi­gu­ra­ti­on from a sour­ce code ma­nage­ment sys­tem. Well, with git this be­co­mes qui­te a pro­blem, as one can not spe­cify the branch nor a path wi­thin the re­po when clo­ning.

So I'm pro­po­sing an ex­ten­ded git URL sche­ma:

Ex­am­ple:

git://<host>/path/to/git/repo?h=devel&p=src/Makefile

Which means:

  • The re­­po­­si­to­ry itself is pas­­sed as URL as usu­al

  • The head (a­­ka bran­ch) is pas­­sed as que­ry pa­ra­­me­ter "h"

  • The file or di­rec­to­ry is pas­­sed as que­ry pa­ra­­me­ter "p"

Reasoning

For clo­ning the re­po­si­to­ry, git needs to know the re­po­si­to­ry UR­L. When pas­sing a URL li­ke cgit uses, git can not de­ci­de which part of the path be­longs to the re­po and which part is be­low. Git would need to walk the UR­L­-­path up un­til it is ab­le to find ac­cess a va­lid re­po­si­to­ry. This be­ha­viour is not de­si­red as it may ha­ve un­ex­pec­ted si­de­-­ef­fects, es­p. when ac­ces­sing a a htt­p-­ba­sed re­po­si­to­ry.

This means: The par­t­-­part of the URL must on­ly con­tain the path to the re­po­si­to­ry!

So ob­vious­ly the­re is a need for spe­cify­ing the hea­d/­branch to ac­cess. This is gi­ven as a que­ry pa­ra­me­ter. I de­ci­ded to use "h" li­ke "hea­d" li­ke cgit does.

If one wants to spe­cify a cer­tain file or di­rec­to­ry wi­thin the re­po­si­to­ry, this is as a que­ry pa­ra­me­ter, too. I de­ci­ded to use "p" li­ke "pa­th".

FAQ

Why not using the notation /BRANCH/path?

See above: When cloning, git would need to walk the URL-path up until it is able to access a valid repository. This behaviour is not desired as it may have unexpected side-effects, esp. when accessing a a http-based repository. Additionally git does not support this when cloning local repositories. (Try something like git clone /path/to/repo/master/Makefile.) So this would implement an asymmetry.

Why not using the notation /path@BRANCH?

This would inhibit using an @-sign in any path. Plus it does not solve the problem described in the /BRANCH/path-case.

Why not using the notation /tree/BRANCH/path?

Sa­me pro­blem her­e: git could de­ci­de which part of the path be­longs to the re­po.

TR-069 auf Fritzbox ausschalten und Ergebnis prüfen

Ei­gent­lich soll­te das über die GUI ge­hen, aber auf mei­ner Fritz­box kann ich das nicht fin­den. Al­so per Hand ...

/images/2014/tr069.cfg.png

Die­se Wo­che gibt es et­was Auf­re­gung um TR-­069, weil Si­cher­heits­for­scher ent­deckt ha­ben, dass vie­le Pro­vi­der es un­si­cher im­ple­men­tie­ren. Zeit, si­cher zu stel­len, ob TR-­069 auf mei­ner Fritz­box ak­tiv ist.

Mei­ne Kurz­an­lei­tung fin­det sich wei­ter un­ten

Mein Vorgehen

Bei ei­ner Su­che bin ich auf ei­ne An­lei­tung ge­sto­ßen, die den TCP­-­Port für TR-­069 in der Fire­wall ab­klemm­t. Net­t, aber kom­pli­ziert ein­zu­rich­ten. Au­ßer­dem su­che ich den Ein­-­/Aus­schal­ter. Lei­der kann ich den nicht in der We­b­-­O­ber­flä­che mei­ner Fritz­box fin­den.

Die­se An­lei­tung zeig­t, wie man TR-­069 per tel­net aus­schal­tet. We­der per net­stat (List der of­fe­nen Netz­werk­ports) noch per ps (Lis­te der lau­fen­den Pro­zes­se) konn­te ich kei­nen Un­ter­schied fest­stel­len zwi­schen aus- und ein­ge­schal­tet – auch wenn ich die Fritz­box da­zwi­schen neu ge­st­ar­tet ha­be. Al­so brau­che ich einen an­de­ren Weg, um her­aus­zu­fin­den, ob das Kom­man­do wirk­lich tut, was es soll.

Auf der Fritz­box ha­be ich ein Pro­gramm Na­mes tr069­star­ter ge­fun­den. Das in­of­fi­zi­el­le Wi­ki zur FRITZ!­Box hat ei­ne de­tail­lier­te Be­schrei­bung da­zu. Die­ses Pro­gramm macht aber et­was an­de­res als ge­dacht: es ko­piert ei­ne TR-­069­-­Kon­fi­gu­ra­ti­on von ei­nem US­B-­Stick. Nach et­was stö­bern in die­sem Wi­ki ha­be ich die Be­schrei­bung für tr069.cfg ge­fun­den. Und dort än­dert sich ein Ein­trag, wenn man die in der ers­ten An­lei­tung ge­nann­ten Kom­man­dos ab­setz­t.

Nun hat die Fritz­box meh­re­re Schich­ten von Kon­fi­gu­ra­ti­ons­da­tei­en. Ak­tiv ist die in /va­r/flas­h/tr069.cfg (TFFS­-­Kon­fi­gu­ra­ti­o­n). Die an­de­ren bei­den (S­quas­hFS und Pro­vi­der­-­Da­ten­bank) wer­den beim Zu­rück­set­zen auf Werk­ein­stel­lun­gen ge­le­sen.

Nachtrag

Eben ha­be ich noch ei­ne AV­M­-­Hil­fe­sei­te ent­deck­t: die er­klär­t, wes­halb ich die Ein­stel­lung nicht in der We­b­-­O­ber­flä­che se­he: »Die Sei­te "An­bie­ter­-­Diens­te" ist in der Be­nut­ze­r­o­ber­flä­che der FRITZ!­Box nur dann vor­han­den, wenn Ihr In­ter­ne­tan­bie­ter die au­to­ma­ti­sche Ein­rich­tung der FRITZ!­Box nach TR-­069 un­ter­stütz­t«. Al­les kla­r!

Kurzanleitung

Und so kann man TR-­069 aus­schal­ten und das Er­geb­nis prü­fen:

  • Tel­­netd auf der Fritz­­box ak­ti­vie­ren: #96*7* auf ei­­nem an­­ge­schlos­­se­­nen Te­le­­fon ein­­ge­­ben. Das Pass­wort ist das der We­­bo­­ber­flä­che.

  • Per tel­­net auf die Fritz­­box: tel­­net fritz.­­bos

  • TR-­­069 aus­­­scha­l­ten: ctl­m­­gr_ctl w tr069 set­tings/e­na­b­led 0

  • Con­­fig­­-­­Da­tei aus­­­ge­­ben, um Er­­ge­b­­nis zu prü­­fen: cat /va­r/flas­h/tr069.cfg

  • Dort steht fast am An­fang die Zei­le "e­na­b­led = no".

  • Tel­­netd auf der Fritz­­box wie­­der aus­­­scha­l­ten: #96*8* auf ei­­nem an­­ge­schlos­­se­­nen Te­le­­fon ein­­ge­­ben

Heartbleed: $500 Mio. Kosten ... $1–10 Mio. benötigt ... Programmier bekommen magere $2000

Le­se­tipp - über die Dis­kre­panz zwi­schen der Wich­tig­keit frei­er Soft­ware und den tat­säch­lich da­für auf­ge­wende­ten Mit­teln am Bei­spiel von He­art­blee­d: 500 Mil­li­o­nen Kos­ten durch He­art­bleed für die Volks­wirt­schaf­ten, wäh­rend die Pro­gram­mie­rer, die OpenS­SL sup­por­ten, bis­lang mit ma­ge­ren 2.000 USD im Jahr an Un­ter­stüt­zung für ih­re an­sons­ten eh­ren­amt­li­che Ar­beit aus­kom­men müs­sen. Be­den­kens­wer­t.

Le­se­tipp - über die Dis­kre­panz zwi­schen der Wich­tig­keit frei­er Soft­ware und den tat­säch­lich da­für auf­ge­wende­ten Mit­teln am Bei­spiel von He­art­blee­d: 500 Mil­li­o­nen Kos­ten durch He­art­bleed für die Volks­wirt­schaf­ten, wäh­rend die Pro­gram­mie­rer, die OpenS­SL sup­por­ten, bis­lang mit ma­ge­ren 2.000 USD im Jahr an Un­ter­stüt­zung für ih­re an­sons­ten eh­ren­amt­li­che Ar­beit aus­kom­men müs­sen. Be­den­kens­wer­t.

UR­L: htt­p://­mo­bi­le.e­week.­com/­se­cu­ri­ty­/he­art­blee­d­-­ss­l­-­f­laws-­true­-­cost­-­will­-­ta­ke­-­ti­me­-­to­-­tal­ly.html

Akkurater Widerstand – Demo im Anzug

"Wir wol­len, dass Oma Krau­se in den Nach­rich­ten pro­per ge­klei­de­te Leu­te sieht. Wir hal­ten die üb­li­che De­mon­s­tra­ti­ons­-­Folk­lo­re für kon­tra­pro­duk­ti­v." Tol­le Ide­e!

"Wir wol­len, dass Oma Krau­se in den Nach­rich­ten pro­per ge­klei­de­te Leu­te sieht. Wir hal­ten die üb­li­che De­mon­s­tra­ti­ons­-­Folk­lo­re für kon­tra­pro­duk­ti­v." Tol­le Ide­e!

UR­L: htt­p://­mi­chael­bu­kow­ski.­de/2014/07/23/ak­ku­ra­ter­-­wi­der­stan­d/

Zarafa speichert(e) Passwörter im Klartext

Das be­stä­tigt lei­der mei­ne Er­fah­rung, dass PHP­-­Soft­wa­re von schlech­ter Qua­li­tät ist. Zarafa ist ei­ne freie Ex­chan­ge- Al­ter­na­ti­ve, hin­ter der ei­ne deut­sche GmbH steck­t. Er­schre­cken­d, dass auch dann sol­che ele­men­ta­ren Feh­ler ein­ge­baut wer­den.

Das be­stä­tigt lei­der mei­ne Er­fah­rung, dass PHP­-­Soft­wa­re von schlech­ter Qua­li­tät ist. Zarafa ist ei­ne freie Ex­chan­ge­-­Al­ter­na­ti­ve, hin­ter der ei­ne deut­sche GmbH steck­t. Er­schre­cken­d, dass auch dann sol­che ele­men­ta­ren Feh­ler ein­ge­baut wer­den.

UR­L: htt­p://c­ve.­mitre.or­g/c­gi­-­bin/c­ve­na­me.c­gi?na­me=C­VE­-­2014­-­0103

OpenStreetMap-Karten in Typo3 einbinden

Kei­ne Aus­re­de mehr, Goo­gle­-­Maps zu ver­wen­den.

Open­Street­Map-Kar­ten in Ty­po3 ein­zu­bin­den ist ganz ein­fach. Der Web­mas­ter muss nur das Plu­g­in ods_osm in­stal­lie­ren. Die­ses Plu­g­in ist auch bei den Top 10 TY­PO­3­-­Ex­ten­si­ons ge­nannt. Das An­le­gen der Kar­te soll­te dann ge­nau so ein­fach ge­hen, wie mit den häu­fig ge­nut­zen Plu­g­in "WEC­-­Kar­te", die Goo­gle­-­Maps ver­wen­det.

Ein Bei­spiel und ei­ne An­lei­tung fin­det sich bei der Uni Köln. Dort gibt es auch ein Ver­wen­dungs­-­Bei­spiel, mit ei­nem Screen­shot (im un­te­ren Drit­tel), wie der Be­nut­zer das Plu­g­in kon­fi­gu­rier­t.

Ein Repo für F-droid erstellen

Geht ganz ein­fach, war­um ma­chen das nicht mehr?

Wie ge­schrie­ben, bin ich auf der Su­che nach ei­ner Al­ter­na­ti­ve zum DB Na­vi­ga­tor auf Öf­fi ge­sto­ßen. Dem Au­tor ha­be ich nun vor­ge­schla­gen, ein Re­po­si­to­ry auf zu set­zen, das man in den F-­dro­id-Cli­ent ein­bin­den kann. Dar­über kön­nen die­je­ni­gen, die Öf­fi be­nut­zen, dann au­to­ma­tisch mit Up­dates ver­sorgt wer­den – oh­ne den Goo­gle Play Sto­re zu brau­chen.

Das schö­ne am F-­dro­i­d­-­Cli­ent ist näm­lich, dass man dort wei­te­re Re­po­si­to­ries ein­bin­den kann. Ein Bei­spiel ist das F-­dro­i­d­-­R­e­po­si­to­ry des Gu­ar­di­an Pro­ject, das Ver­schlüs­se­lungs­-­App­s, den Tor­-­Brow­ser und ähn­li­ches für An­dro­id be­reit­stell­t.

Um nun den Au­tor von Öf­fi zu über­zeu­gen, ein Re­po­si­to­ry ein­zu­rich­ten, ha­be ich es selbst pro­bier­t. Es ist recht ein­fach und soll­te in ei­ner Stun­de er­le­digt sein:

  • An­dro­id SDK und NDK in­­­sta­l­­lie­ren

  • Ein Git­­-­­Re­­po clo­­nen

  • Ei­­ne Kon­­fig­­-­­Da­tei an­pas­­sen

  • Ev­t­l. einen GPG­­-­­Key er­­zeu­­gen

  • Ev­t­l. ein Zer­ti­­fi­­kat er­s­tel­len

  • Ein Kom­­man­­do ab­­set­­zen

Um ei­ne Pa­ket auf zu neh­men wä­re zu tun:

  • Ei­­ne Me­ta­da­ten­­-­­Da­tei an­le­­gen (ein Ge­rüst da­­für kann au­to­­ma­tisch er­­zeugt wer­­den)

  • Ein Kom­­man­­do ab­­setz­ten

Im Build­-­Pro­zess wä­re zu tun:

  • Bi­na­ry­­-­­APK in das Re­­po­­si­to­ry ko­pie­ren

  • Ein Kom­­man­­do ab­­setz­ten

  • Das Ver­­­zeich­­nis auf den We­b­­-­­­Ser­­ver ko­pie­ren

Al­so wirk­lich ganz sim­pel!

Die An­lei­tung fin­det sich un­ter htt­ps://f­-­dro­i­d.or­g/­ma­nu­a­l/f­dro­i­d.html#­Sim­ple­-­Bi­na­ry­-­R­e­po­si­to­ry, und ein Bei­spiel, wie das Er­geb­nis aus­sieht, un­ter htt­ps://­gu­ar­di­an­pro­jec­t.­in­fo/re­po/

Portrait von Hartmut Goebel

Hartmut Goebel

Diplom-Informatiker, CISSP, CSSLP, ISO 27001 Lead Implementer

Haben Sie noch Fragen?
Anruf oder Mail genügt:
  +49 871 6606-318
  +49 175 29 78 072
  h.goebel@goebel-consult.de