GitHub gaat bepaalde commits scannen op tokens en private keys voor publicatie

GitHub gaat commits van bepaalde organisaties voor publicatie scannen op secrets als tokens en private keys. Nu gebeurt dat scannen pas achteraf, als de geheimen al door kwaadwillenden te zien zijn. De proactieve scanner kijkt naar 69 veelvoorkomende secrets.

Als ontwikkelaars code pushen waarin een bekende secret wordt geopenbaard, dan verschijnt er een waarschuwing in beeld. Ontwikkelaars kunnen dan de code aanpassen en de secret eruit halen. Gebruikers kunnen er ook voor kiezen om de code alsnog te pushen, als het bijvoorbeeld gaat om testcode of een false positive.

GitHub scant op 69 verschillende soorten secrets die zijn aangeleverd door partners en andere organisaties. Er wordt bijvoorbeeld gescand naar sessietokens en secret-access-keys van AWS, Cloud Access Keys van Alibaba Cloud, en Cloud Storage Access Keys van Google.

Secrets zijn bijvoorbeeld authenticatietokens of accesskeys voor externe diensten, maar het kunnen ook intern gebruikte wachtwoorden zijn. GitHub raadt ontwikkelaars aan die secrets op te slaan buiten de GitHub-repo's. Slaan ontwikkelaars die namelijk binnen publieke GitHub-repo's op, dan zijn deze secrets door anderen in te zien en uit te buiten.

De proactieve secretscanner is alleen beschikbaar voor bedrijven die van het betaalde GitHub Advanced Security-programma gebruikmaken. Deze organisaties moeten de proactieve secretscanner bovendien zelf inschakelen. Advanced Security bevat ook een scanner die code na publicatie kan scannen op zowel de aanwezigheid van secrets als op kwetsbaarheden.

GitHub gaat proactief naar secrets scannen

Door Hayte Hugo

Redacteur

05-04-2022 • 15:26

57

Reacties (57)

57
57
26
1
0
26
Wijzig sortering
Bijzonder dat dit enkel voor betalende bedrijven is. Je zou toch verwachten dat deze professionele ontwikkelaars wel weten wat ze doen. Ik denk dat dit vaker fout gaat bij de individuele hobbyisten.
Bijzonder dat dit enkel voor betalende bedrijven is. Je zou toch verwachten dat deze professionele ontwikkelaars wel weten wat ze doen. Ik denk dat dit vaker fout gaat bij de individuele hobbyisten.
Dat is een beetje naief, ben ik bang.
Ik denk dat je gelijk hebt dat professionals over het algemeen beter weten hoe het hoort. Maar tegelijkertijd staan ze bloot aan een tijdsdruk waar hobbyisten geen last van hebben. Daar komt bij dat hobbyisten zich vaak goed bewust zijn van het hele project, zoals het feit dat alle code leesbaar op internet staat.
In bedrijven heb je eerder dat de programmeur die de code schrijft niet overziet waar die code terecht komt. Vaak is de aanname dat alles achter gesloten deuren blijft en niemand ooit de code zal lezen. Dan is het makkelijk om wat losser om te gaan met de regels en wat dingen onder het kleed te vegen.. Tot drie jaar later blijkt dat alle code in een openbaar repository komt.

De tweede factor is natuurlijk dat bedrijven meer geld hebben om uit te geven aan extra features en theoretische bedreigingen. Hobbyisten zijn meestal wat zuiniger.

[Reactie gewijzigd door CAPSLOCK2000 op 22 juli 2024 21:42]

En de derde factor is dat professionals juridisch gewoon in een heel andere positie zitten dan hobbyisten. Als een stuk code niet aan wetgeving A, B of C voldoet, dan kun je die professional aansprakelijk stellen voor schade, omdat je de code ook bedrijfsmatig bij hem hebt afgenomen.

Bij een hobbyist is het "Deze code is as-is, geen garanties, als het niet goed is pas je het zelf maar aan".
Diezelfde (gebrek) aan garantie kan je natuurlijk als professional ook geven. Genoeg bedrijven die hun software op 'as-is' basis uitgeven waarbij je mag hopen dat eventuele bugs of belangrijke features ooit nog een keer opgepakt worden.
Daar kun je misschien mee weg komen als je als bedrijf die software gratis beschikbaar stelt. Maar als die software geleverd wordt als onderdeel van een overeenkomst, dan wordt er gewoon een bepaalde mate van kwaliteit verwacht. Lever je die niet, dan is het simpelweg contractbreuk met je klant.

Geen enkele disclaimer kan je daarvan vrij pleiten, althans niet in het Nederlandse recht, omdat de strekking van het 'leveren' van wat je in de overeenkomst hebt beloofd, gewoon niet wordt gehaald.
Als een bedrijf gewoon in een contract stelt dat je hun software versie x koopt voor y bedrag zonder support, en jij tekent daarvoor als bedrijf, valt er vrij weinig aan te vechten.

Deugdelijk product regels zijn voor B2C, niet B2B.
Als een bedrijf gewoon in een contract stelt dat je hun software versie x koopt voor y bedrag zonder support, en jij tekent daarvoor als bedrijf...
Vetgedrukte is hier belangrijk, als je daar als bedrijf voor tekent ben je natuurlijk ook vrij dom.

Bovendien gaan die regels niet op als je getekend hebt om een dienst af te nemen waarbij de software onderdeel is van de tools. Als die dienst dan niet geleverd kan worden door ondeugdelijke software ga je nog altijd nat.
Alleen zijdelings verbonden:
Ik meen dat er een veroordeling was van een systeembeheerder, die zich netjes aan de letter van het contract gehouden had, en dus geen extra maatregelen had genomen om (ik geloof) degelijke backups te maken zoals eigenlijk standaard hoorde te zijn in de branche. Van een partij met kennis wordt meer verwacht.

Ik kan me voorstellen dat het ontstaan van kwetsbaarheden uitlekken van wachtwoorden via verkeerd gepubliceerde source code ook een dergelijk soort grove nalatigheid is, zeker als je er automatisch op kan laten scannen...

Maar toegegeven, waarschijnlijk kom je goed weg met een clausule in je contract.
Ach, windows moet ook elke zoveel tijd een update krijgen omdat anders dingen niet werken of er mega gaten in het systeem zitten.

Als dat de standaard is.....
Dat geldt voor vrijwel alle software, open source en closed source.
Het verschil is dat ik niet top euro betaal voor FLOSS projecten die door hobbyisten worden bijgehouden.....
Betaal je dan top euros voor Windows?
Minstens 104 euro voor de basis, wil je meer moet je nog meer betalen. Wil je HEVC content zien via de bijgeleverde mediaspeler? Dan moet je bijleggen. Wil je NFS? Dan moet je bij leggen. Wil je X, dan moet je Y bijleggen.

Uiteindelijk betaal je heel veel geld voor iets met constant problemen.
Welke wetgevingen doel jij op? Heb je een voorbeeld? Of meer..?
Een foutje is anders zo gemaakt, even snel iets testen, dus credentials in de code zetten, vervolgens vergeten ze er uit halen, en dan staan ze opeens in de repo.
Ik snap het, idd even snel iets testen. Ooit ook zo'n fout gemaakt en gelukkig zelf snel ontdekt.
Sindsdien, heb ik credentials en tokens in een bestand staan, die buiten mijn git dir's staat. En deze include ik in mijn projecten.
Juist om er voor te zorgen, dat Ik die fout nooit meer maak. :)
Ik snap het, idd even snel iets testen. Ooit ook zo'n fout gemaakt en gelukkig zelf snel ontdekt.
Sindsdien, heb ik credentials en tokens in een bestand staan, die buiten mijn git dir's staat. En deze include ik in mijn projecten.
Juist om er voor te zorgen, dat Ik die fout nooit meer maak. :)
Misschien zou je ook nog een .gitignore kunnen toevoegen voor het geval je per ongeluk de verkeerde directory commit / verplaatst / kopieert. Beetje afhankelijk van hoe voorspelbaar en herkenbaar je bestandsnamen zijn.

[Reactie gewijzigd door CAPSLOCK2000 op 22 juli 2024 21:42]

Gebruik environment variabelen hiervoor, en geen includes!
(een include is ook gevaarlijk als je PHP interpreter er mee ophoud bijvoorbeeld)
environment variabelen, kan in bepaalde gevallen ook gevaarlijk zijn. Kijk maar naar o.a. shell4j
We werken veel hobbyisten bij betalende bedrijven ;)
Triest, maar waar helaas ;(
Wat is er slecht aan een hobbyist?
Oh boy, hier ga ik mezelf in de vingers snijden vrees ik. Maar ik ga een poging wagen :)

Wat is er mis aan een lasser zonder certificaten? In principe zegt dat niks over de kwaliteit van het laswerk... Maar, ik denk dat je wel snapt wat ik bedoel. Ik heb 4 jaar een HBO ICT studie gedaan met een vervolg opleiding universiteit van 2.5 jaar. ICT is mijn vak en daar heb ik toch wel bijna 7 jaar voor gestudeerd. Bij een hobbyist heb je vaak twee types, de natuurtalenten, die haal je er zo uit en die kunnen prima als ICTer aan de slag, en zijn soms zelf nog beter dan degene die er voor gestudeerd hebben. En je hebt de hobbyist die op een gegeven moment is gaan "programmeren" omdat het leuk was en op een gegeven moment dat vak ook is gaan uitoefenen.

Het is die tweede categorie waar ik nogal wat moeite mee heb (en dat is puur persoonlijk). Dat zijn vaak mensen die heel goed (kunnen) zijn in wat ze leuk vinden, maar daar blijft het ook bij. Ze hebben niet een goeie basis om nieuwe dingen en technieken snel bij te leren en het nodige abstract kunnen denken, wat in de ICT toch wel noodzakelijk is, maar dat is wederom mijn persoonlijke mening gebaseerd op mijn eigen ervaring. Redelijk simpele begrippen als overerving, abstracte clases (hoe vaak een hobbyist daar gewoon de implementatie uitvoert) of zelfs object oriented programming is vaak al iets wat uitgelegd moet worden aan iemand die geen opleiding heeft gevolgd.

Ik heb al genoeg mensen om me heen gehad met allerlei studies, vaak ook niet technische studies, achter de rug die uiteindelijk maar programmeur werden, en dat merk je direct.

Ik begeleid vaak jongere ICTers en heb al duidelijk bij het management aangegeven dat we ons moeten richten op natuurtalenten en mensen met een ICT(achtige) opleiding. Ik heb geen tijd en zin om jonge "hobbyisten" de basis beginselen van programmeren uit te leggen, daar heb je namelijk (M)HBO en universitaire studies voor. ;)

Het is niet de bedoeling om "elitair" over te komen of iets dergelijks, maar ik wil het vak van een ICTer toch wel iets meer allure geven dan wat het nu heeft, als je begrijpt wat ik bedoel.

Ik hoop ook dat ik niemand hier beledigd heb, dat is absoluut niet mijn intentie. Hopelijk wordt ik hier niet direct de grond ingeboord door deze post ;)
Ik heb geen tijd en zin om jonge "hobbyisten" de basis beginselen van programmeren uit te leggen, daar heb je namelijk (M)HBO en universitaire studies voor. ;)
Als een hobbyist nog niet eens kan programmeren, is er weinig gehobbied, lijkt me.

Persoonlijk heb ik juist weer liever een hobbyist die aantoonbaar wat geprogrammeerd heeft dan iemand die 3 jaar ICT heeft gestudeerd zonder verdere ervaring, omdat je juist als hobbyist dieper in code zal duiken dan een ICT student die niet verder komt dan de 8-weken durende projectjes die je met z'n 4'en de grond uit stampt en daardoor niet veel complexers heeft gedaan dan een paar if statements aan elkaar breien.

Ik hoop dat ik voor mijn mening eveneens niet de grond in word geboord ;)

[Reactie gewijzigd door Chrotenise op 22 juli 2024 21:42]

Programmeren is, zoals ik al zei, een vak. Ik denk dat ik de hobbyist onderschat, en jij de ICT student onderschat. Jij hebt het over het schrijven van een paar if statements, ik heb het over de compiler die de if statements interpreteert en de werking ervan (want dat is namelijk iets wat je leert op een technische ICT opleiding) en hoe je in pseudotaal een functie schrijft en vervolgens wiskundig kan aantonen dat het foutloos doet wat het moet doen.

Jouw ervaring is misschien gebaseerd op de mindere ICT student (want ook die categorie heb je), en die van mij op de knullige hobbyist. De waarheid ligt gegarandeerd in het midden ;)
Ik heb 4 jaar een HBO ICT studie gedaan met een vervolg opleiding universiteit van 2.5 jaar. ICT is mijn vak en daar heb ik toch wel bijna 7 jaar voor gestudeerd.
En toch geeft je dat geen enkel recht om te claimen dat je beter bent dan een 'hobbyist'. Overigens zit er behoorlijk wat overlap tussen HBO afgestudeerden en hobbyisten. Als je de materie echt leuk vind speel je er thuis ook vaak mee.

Ik heb HBO elektro gestudeerd en in mijn derde en vierde jaar een semester meegelopen met ICT, focus embedded software. Stelde werkelijk geen zak voor, een beetje goede hobbyist stampt die code zo uit de grond. Ja, er wordt ook aandacht besteed aan software patronen en OO etc. maar met een goed boek leer je dat zo. Ik durf zelfs de claim te maken dat er niks op het HBO te leren valt wat je niet ook kan leren uit een goed boek.

Je hoeft niet naar het HBO te gaan om te leren programmeren, je hoeft zeker niet naar de uni te gaan om te leren programmeren. Verder wel leuk dat papiertje hoor.

[Reactie gewijzigd door langestefan op 22 juli 2024 21:42]

edit:
En toch geeft je dat geen enkel recht om te claimen dat je beter bent dan een 'hobbyist'.
Uitzonderingen zoals natuurtalenten niet meegerekend, ja dat geeft me dat recht wel. Een hobbyist kan absoluut beter zijn in hetgene wat hij leuk vindt (dat zeg ik ook in mijn post hierboven) maar als ICT in het algemeen, nee, sorry.

end edit
Je hoeft niet naar het HBO te gaan om te leren programmeren, je hoeft zeker niet naar de uni te gaan om te leren programmeren. Verder wel leuk dat papiertje hoor
Leuk dat je dat "denkt", maar de realiteit is anders. Ik maak het al meer dan 20 jaar mee in allerlei omgevingen, projecten en development stacks. Je haalt de ICT student er zo uit (uitzonderingen zijn er altijd uiteraard). Jij doet programmeren af als iets "simpels" en dat je dat zo leert. Helaas moet ik je vertellen dat ik dan met een figuurlijke bezem door de code moet van mensen die er net zo over denken.

Dat jij door je studie meer affiniteit hebt met programmeren, dat geloof ik meteen. Maar ik maak helaas ook andere hobbyisten mee die mindr affiniteit hebben en toch aan core systemen werken van grote bedrijven.
Ik durf zelfs de claim te maken dat er niks op het HBO te leren valt wat je niet ook kan leren uit een goed boek.
Wat een uitspraak. Ik weet niet hoe jij de stof leerde tijdens je studie, maar dat kwam bij mij gewoon uit boeken hoor. Bij de universiteit soms ook boeken geschreven door de docent zelf of door oud docenten zoals Dijkstra (semaphoren). Praktijk ervaring komt met de jaren en is iets wat je juist niet bij je studie leert of heel beperkt.

Overigens, wat jij zegt over ICT studie kan ik net zo hard roepen over jouw studie. Dat is echt niet zo ingewikkeld hoor, dat leer je zo uit een boek en kan een hobbyist ook prima, het is echt geen ingewikkelde materie. Leuk papiertje dat van jou, maar stelt eigenlijk niks voor (pun intented ;) )

[Reactie gewijzigd door david-v op 22 juli 2024 21:42]

Uitzonderingen zoals natuurtalenten niet meegerekend, ja dat geeft me dat recht wel.
Ah, dus toch elitair. Jammer, dat papiertje zegt vrij weinig over wat je echt kan.
Ik maak het al meer dan 20 jaar mee in allerlei omgevingen, projecten en development stacks.
En dus is dat de waarheid, steekproef N=1?
Maar ik maak helaas ook andere hobbyisten mee die mindr affiniteit hebben en toch aan core systemen werken van grote bedrijven.
Nu verwar je incompetentie met hobbyist zijn. Incompetente mensen heb je in alle lagen van een bedrijf met allerlei papiertjes, ik heb met PhD's gewerkt die voor mijn gevoel geen flauw benul hadden waar ze mee bezig waren.
Ik weet niet hoe jij de stof leerde tijdens je studie, maar dat kwam bij mij gewoon uit boeken hoor.
Precies, die boeken die ik ook in mijn eigen tijd kan lezen. Heb je HBO niet voor nodig.
Overigens, wat jij zegt over ICT studie kan ik net zo hard roepen over jouw studie. Dat is echt niet zo ingewikkeld hoor, dat leer je zo uit een boek en kan een hobbyist ook prima, het is echt geen ingewikkelde materie.
Zou opzich prima kunnen, op HBO niveau. Probleem is dat je met elektrotechniek vaak dure/complexe apparatuur nodig hebt en daar heb je als hobbyist helaas geen beschikking toe. Wat ik nu op uni niveau doe is overigens daar wat te complex voor en het tempo is te hoog, de theorie staat wel in boeken maar de applicaties niet.

[Reactie gewijzigd door langestefan op 22 juli 2024 21:42]

Ah, dus toch elitair. Jammer, dat papiertje zegt vrij weinig over wat je echt kan.
Edit:
Ik vraag erkenning voor mijn studie en vakgebied. En dat doe ik met een reden. Daar gaat die artikel ook wel over namelijk. Goed je werk doen.
End edit

Een kwakzalver en een arts is voor jou ook hetzelfde, begrijp ik? Laat jij je tuinhuis bouwen en ontwerpen door een bouwvakker of door een architect? En als het nou geen tuinhuis is maar een flat gebouw met 25 verdiepingen? Ook maar door hobbyisten laten bouwen en ontwerpen? Of toch maar door vakmensen en mensen met een papiertje in hun zak?

Heb jij een dergelijk slecht beeld van een ICTer dat je niet inziet dat een hobbyist zonder de opleiding toch niet helemaal hetzelfde is? Of dat een ICTer na het studeren/werken de rest van zijn tijd geen computer meer aanraakt? Dat het naast zijn vak ook nog eens zijn hobby is?

Dat papiertje, of jij het nou leuk vindt of niet, is het bewijs dat een ICTer aantoonbaar kennis heeft van zaken, voornamelijk de theorie, en dat een ICTer in staat is
om complexe materie te snappen en bij te leren. Een hobbyist gaat niet een pseudotaal leren om te begrijpen wat de basis is van elke willekeurige programeertaal. Of met wiskunde aantonen dat je een bepaald probleem niet verder kan versnellen met een slimmere algoritme. Dat zijn namelijk niet de leukste dingen om te doen, maar dat is wel wat je nodig hebt om goed in je vak te zijn.

Hoeveel hobbyisten zonder relevante opleiding denk jij dat er rondlopen bij ASML? Met jouw opleiding denk ik wel dat je het antwoord weet. Mijn probleem is dat als je dezelfde vraag stelt over ICT vakgebied, het antwoord toch anders is. En ik heb daar continu mee te maken. Met mensen die denken dat ze kunnen programmeren omdat ze een cursus hebben gevolgd en "computeren" wel leuk vinden. Ik ben het beu om die mensen te moeten vertellen dat ze nooit senior zullen worden. Ik ben het beu om de code van die mensen te moeten herschrijven omdat ze maar wat aan elkaar knutselen en "bij mij werkt het" of "het werkt toch?" als motto hebben. En als ik jou zo hoor heb jij ook een beetje die neiging waar programmeren betreft. Programmeren is simpel, dat kan elke hobbyist wel, geen studie voor nodig. Niks mis mee. Zucht....

Op de een of andere manier zie je een ICTer niet als een proffesional, dat programmeren (alsof ICT alleen maar over programmeren gaat) zo geleerd is en dat je daar geen studie voor nodig hebt. Die kennis kan je zo uit een boek halen (programmeren voor dummies misschien?). Heb je dan wel HBOs en universiteiten wel nodig? Volgens jouw redenering niet, we kunnen gewoon op zoek gaan naar hobbyisten, want daar is niks mis mee en weten blijkbaar net zoveel als iemand die daar wel jarenlang voor gestudeerd heeft en in de avond verder gaat met precies dezelfde hobby als het vak wat ze aan het leren zijn.

Jammer dat je op een dergelijke jonge leeftijd (neem ik aan omdat je nog studeert, toch?) Al een dergelijke beeld hebt van een studie als ICT.

Ik blijf bij mij standpunt, ik neem geen mensen meer aan die zonder een relevante studie aan komen kloppen om in de ICT aan de slag te gaan. Natuurtalenten kan ik er zo uit halen, daar heb ik inmiddels wel een goed oog voor. Jij mag, als je ooit de kans krijgt om te bepalen wie wel en niet geschikt is, zelf je eigen criteria hebben. Ik ben benieuwd hoeveel hobbyisten zonder opleiding in jouw vakgebied jij gaat aannemen ;). We spreken elkaar wel weer over 10 jaar, ok? :)

[Reactie gewijzigd door david-v op 22 juli 2024 21:42]

Welk bedrijf is dat? Want dan zorg ik dat ik en mijn studiegenoten daar met een grote boog omheen lopen :) bvd
Ik wens je veel succes in je zoektocht naar een baan in je vakgebied zonder een papiertje ;) . Maare, jullie zijn welkom hoor, jullie zijn toch een vak aan het leren daar en je krijgt toch je diploma? Niks mis mee, dat zijn de mensen die we zoeken. Met een papiertje en passie voor hun vak. :).
Ik werk liever bij een bedrijf waar je beoordeelt wordt op je waarde en niet op je achtergrond :)
Ik denk dat je me verkeerd begrepen hebt, een misschien heb ik jou ook verkeerd begrepen.

Een natuurtalent, iemand met waarde, hoeft bij mij ook niet met papiertjes aan te komen. Ik leer juist enorm veel van deze mensen omdat ze een natuurlijke drive hebben en een ongelofelijke passie hebben voor hetgene waar ze talent voor hebben. Ik denk dat jij deze mensen hobbyisten noemt. De minder talentvolle mensen en die maar wat aan elkaar knutselen maar het werk leuk vinden, noem jij geen hobbyisten, en ik noem ze wel zo, hobbyisten zonder talent.

We gebruiken de termen op een andere manier en dat conflicteert met elkaar, met het beeld en de betekenis die we zelf aan de term geven.

Een natuurtalent neem ik zo aan, die hoeft bij mij geen enkel papiertje te laten zien. Iemand met een papiertje zonder talent of passie neem ik niet aan. Bij twijfel, zal ik toch altijd gaan voor degene die het papiertje heeft. Dat heeft mij tot nu toe het beste resultaat gegeven. Het liefste heb ik iemand met papiertje, passie en talent. Ik heb het genoegen gehad om een handvol van dit soort mensen te kunnen begeleiden. Daar haal ik enorm veel plezier uit.

Ik denk dat we allebei hetzelfde denken, verschillende betekenissen geven aan een woord, maar ook de passie hebben om goed te zijn in wat we doen.

Hopelijk kunnen we het gesprek op deze manier op een wat betere manier afronden dan hoe we dat een paar post terug hebben gedaan ;).
Heel veel. Maar een top AI programmeur / data scientist / full stack developer kan best gelijktijdig een hobbyist zijn op gebied van Git en security awareness. En de lijst van impliciete functie eisen kan nog wel even doorgaan, tot aan "niet vergeten wc deur op slot te doen". 8)7 Best heel veel triviale dingen die je moet weten.
Je zou toch verwachten dat deze professionele ontwikkelaars wel weten wat ze doen
Hahah, mee eens, maar als je het nieuws er bij pakt zijn er continue IT gerelateerde problemen bij grote bedrijven met ruim voldoende budget.

Bedrijven, overheden, stichtingen etc, het blijven mensen, mensen blijven fouten maken, professionals zijn niet foutloos.
Als iemand die in de keuken heeft gekeken bij banken, verzekeraars en mkb'ers kan ik je gerust vertellen dat 'voldoende budget' en Enterprise zelden samen gaan. Alles zit in potjes, en het potje waarvan je als externe softwareleverancier betaald moet worden is altijd op.

Er is alleen geld voor de nieuwe 'toffe' features, maar onderhoud/licenties zijn duur en een kostenpost en moeten zo goedkoop mogelijk.
Je moest eens weten hoe vaak dit bij grote bedrijven ook fout gaat :X . Misschien niet in public projecten op github (hoewel, die zullen er vast ook wel zijn), maar gewoon intern git repositories waar hele tokens, wachtwoorden tot aan private keys van certificaten worden opgeslagen die eigenlijk niet toegankelijk zouden moeten zijn voor de mensen die toegang hebben tot de sources.

edit: voor de mensen die sonarlint gebruiken, een blog hierover

[Reactie gewijzigd door david-v op 22 juli 2024 21:42]

Bijzonder dat dit enkel voor betalende bedrijven is. (...) Ik denk dat dit vaker fout gaat bij de individuele hobbyisten.
Dat is alleen bijzonder als je er van uit gaat dat de reden voor het aanbieden van deze feature het voorkomen van het lekken van secrets is. Als dat het doel is, dan moet je dit uiteraard voor iedereen beschikbaar stellen.

Maar uiteraard is dat niet het doel hiervan, het doel is het maximaliseren van de winst van Github. Door zo'n feature alleen aan te bieden aan betalende accounts willen ze een extra incentive creëren om een betaald account af te nemen.
Juist bij professionele devs is dit een gevaar. Daar worden wel eens shortcuts genomen (terecht of onterecht) vanwege tijdsdruk.

Daarbij een hobby project hacken is 1 ding, toegang krijgen tot een bedrijf biedt veel meer mogelijkheden om andere partijen aan te vallen. Denk aan bijv een supply chain attack waar je op naam van dat bedrijf een malafide package published.

Het zou wel beter zijn als dit voor iedereen beschikbaar was.

[Reactie gewijzigd door Barsonax op 22 juli 2024 21:42]

Dit komt (veel) vaker voor dan je denkt.
Juist bij grote bedrijven wil iemand uit lui/nalatigheid nog wel eens zijn commits niet checken of er iets niet per ongeluk is meegenomen dat er niet in zou moeten zitten.

[Reactie gewijzigd door MrFax op 22 juli 2024 21:42]

Als je met professionele ontwikkelaar bedoeld dat ze wachtwoorden op de git gooien :+
Het zelfde als dat bij sommige professionele sites / diensten extra moet betalen om MFA of Saml in te schakelen.
Ik mag hopen, dat github bij het detecteren van een bericht stuurt naar het security team van het betreffende bedrijf. Deze scan, zou namelijk je laatste vang net moeten zijn.
Of gewoon de commit blokkeren? Lijkt me veiliger
Weet iemand zo'n tool voor in je pipeline? Met name voor PHP projecten.
Dat is zeer nuttig. Dank u
Ik ben benieuwd wat jullie gebruiken om secrets zoals in dit bericht bedoeld op een veilige manier op te slaan en vervolgens te kunnen gebruiken in je projecten en scripts
Hashicorp Vault (https://www.vaultproject.io/) is heel populair hiervoor.
In mijn ervaring hebben betalende bedrijven het juist best heel goed voor elkaar en hebben ze hier effectief weinig aan.

Dingen gaan naar een eigen private github repository waar geen public tools in staan, secrets scanners staan geinstalleerd in de pipelines enzo. Heel erg mooie feature dit voor de bühne, maar het voegt niets toe wat beschermt tegen het grootste gapende gat waar de bulk van mijn Responsible Disclosures vandaan komen: De medewerker die even naar zijn eigen nieuwe temp accountje iets pushed en alle pipelines en intern of op github afgedwongen security bypassed.

Ik weet wel dat deze functionaliteit in de toekomst er echt komt voor de public en free repositories (het is nogal een operatie, deze uitrol), en eerlijk is eerlijk, alle begin is een goed begin, maar ik denk dat iets wat je proactief aan moet zetten en in een pipeline op moet nemen niet de beste manier is om dit probleem te tackelen.
Voor je eigen pipelines in Actions kan ik Gitleaks aanraden:
https://github.com/zricethezav/gitleaks-action

Ondersteund ook pre-commit hooks. Niet perfect maar het vind een hoop.

Mocht je Azure DevOps gebruiken kan ik je mijn extension aanraden wat wrapper is rondom Gitleaks: https://marketplace.visua...emName=Foxholenl.Gitleaks

[Reactie gewijzigd door Joost1981_2 op 22 juli 2024 21:42]

De proactieve scanner kijkt naar 69 veelvoorkomende secrets.
Nice!
Ja, benieuwd of ze dit nog uit gaan breiden, maar is al een mooi groot aantal
In de originele blogpost staat "69 high confidence patterns", maar ook "100+ different token types" ¯\_(ツ)_/¯
Je mag zelfs zelf 500 eigen patronen definieëren heb ik ergens gelezen.
Ik ben benieuwd hoeveel ze van de secrets van OWASP WrongSecrets detecteren…

Op dit item kan niet meer gereageerd worden.