bruteforce-protect query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET Developer

Functie omschrijving Net afgestudeerd en op zoek naar een leuke baan als developer? Zoek niet verder! Ik heb een functie beschikbaar als back-end developer, bij een leuk familiebedrijf. Je gaat werken met de Microsoft stack en de technieken C# en .NET. Verder maak je gebruik van MVC en Entity framework. SQL kent ook geen geheimen voor jou. Jouw verantwoordelijkheden: Nieuwe maatwerk software bouwen; API koppelingen bouwen; Applicaties en software optimaliseren; Back-end programmeren. Een erg uitdagende functie, met veel vrijheid. Je kan meerdere dagen thuis werken en als je op kantoor werkt wordt de lunch verzorgd. Heb je interesse, reageer dan

Bekijk vacature »

PHP Software Developer

Functie omschrijving PHP Software Developer gezocht! Voor een organisatie in de regio Zeist die zich bezighoud met het verbeteren van de medicatieveiligheid zoeken wij een Software Developer. In deze functie zijn wij op zoek naar een slimme en enthousiaste Developer die interesse heeft in farmacie, logistiek en ICT. Daarnaast beschik je over een goed analytisch vermogen en ben je van nature gestructureerd en resultaatgericht. Je moet in deze functie daadkrachtig, flexibel en communicatief goed zijn. Je verantwoordelijkheden bestaan uit: Object georiënteerd programmeren; Werken in een scrumteam aan de ontwikkeling van een medicatiebewakingssysteem; Meedenken over de mogelijkheden en onmogelijkheden van projecten;

Bekijk vacature »

Fullstack Developer

Functieomschrijving Voor een erkende werkgever in regio Etten-Leur zijn wij op zoek naar een Fullstack Developer met PHP/Laravel ervaring. Je gaat aan de slag met het bouwen van maatwerk software voor klanten die actief zijn in een specifieke markt. Als fullstack developer ben je samen met een enthousiast team van 7 collega’s verantwoordelijk voor de ontwikkeling, beheer en innovatie van informatiesystemen voor klanten in een specifieke branche. Verder ondersteun je complexe uitdagingen van klanten. Je brengt hun wensen in kaart en vertaalt deze door naar maatwerk software. Ervaring met Laravel is een must. Om de klant zo goed mogelijk te

Bekijk vacature »

Oracle Developer / PL SQL

Dit ga je doen Software ontwikkeling aan een internationaal gebruikt pakket; Werken met technieken als Oracle 19c, Toad, PL/SQL, Oracle Forms, Reports en Designer; Meedraaien in internationale projecten; Meedenken over technisch en functioneel ontwerp; Samenwerken met collega's als Informatie Analisten, Testers en Release Managers; Soms wensen en eisen afstemmen met de business. Hier ga je werken Onze klant, een internationaal bekend bedrijf dat essentiële producten maakt waar iedereen graag gebruik van maakt, zoekt versterking in het Software Development team. Samen met 3 developers, een release manager, een informatie analist en 3 testers werk jij aan een systeem waarmee complexe producten

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Team Lead/ Lead developer gezocht (Hands-on, PHP,

Functie Als Team Lead ben je de leider van één van de ontwikkelteams binnen de organisatie. Je leidt als lead developer een goed draaiend team dat werkt aan complexe en duurzame applicaties en API’s. Vanuit je kennis en ervaring ben je in staat het grote plaatje te blijven overzien, en kritisch mee te denken over bijvoorbeeld de architectuur, maar ook de algehele aanpak binnen het project. Je laat je team niet alleen technisch goed functioneren maar ben ook betrokken bij het menselijke aspect. Zo weet jij je collega’s te motiveren en begeleiden in hun dagelijkse werk. Buiten het team ben

Bekijk vacature »

Medior/senior Front-end developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

Back-end developer

Functieomschrijving Voor een gewaardeerde werkgever in regio Tilburg zijn wij op zoek naar een gemotiveerde SQL Developer/ functioneel consultant. Jij wordt verantwoordelijk voor zowel het ontwerpen en implementeren van SQL-databases als voor het in kaart brengen van de bedrijfsprocessen van een organisatie en het vertalen van deze processen naar IT-oplossingen. Jouw takenpakket komt als volgt uit te zien: Ontwerp en implementatie van SQL-databases: Je ontwerpt, ontwikkelt en implementeert SQL-databases om de data behoeften van de organisatie te ondersteunen; Analyse van bedrijfsprocessen: Je analyseert de bedrijfsprocessen van de organisatie om de behoeften van de klant te begrijpen en te vertalen naar

Bekijk vacature »

Creatieve Front-end developer gezocht!

Functie Het front-end team bestaat momenteel uit 4 collega’s en is hard aan het groeien! Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren. Je werkt in het front-end team samen met de back-end teams en product owners om te zorgen dat de applicaties een fijne gebruikerservaring opleveren. Jouw expertise zorgt ervoor dat de juiste keuzes gemaakt worden qua techniek en ontwerp, van back-end tot aan gebruiker. In samenspraak met je team bepalen jullie de beste keuze voor techniek. Ook is er altijd ruimte om nieuwe technieken te ontdekken. Eisen • Je hebt gedegen

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »

Senior Front end developer Angular

Functie Er zijn momenteel 5 SCRUM-teams waarvan drie gefocust zijn op DevOps en de huidige projecten en twee op innovatie van de platformen. Jij zal onderdeel worden van het innovatie Scrum team. De 2 multidisciplinaire innovatie teams bestaan momenteel uit 14 werknemers. Jij als senior Front end developer wordt onderdeel van onze innovatieteams. De innovatieteams houden zich bezig met het door ontwikkelen van de huidige producten en denken na over nieuwe functionaliteiten. Binnen de rol van Front end developer krijg je veel vrijheid en kan je je dag zelf indelen. Dingen waar jij je dagelijks mee bezig zult houden is

Bekijk vacature »

Senior Product Developer

Functieomschrijving Als senior Product Developer ben je verantwoordelijk voor bestaande mobiliteitsproducten en de ontwikkeling van nieuwe mobiliteitsconcepten. Met behulp van diverse klantonderzoeken, klantsessies en salesmeetings zorg je ervoor dat je de veranderende mobiliteitsbehoeften in de markt kent. Hier speel je op in door innovatieve, flexibele, efficiënte en duurzame vervoersoplossingen te bedenken, te ontwikkelen, te implementeren en uiteindelijk samen met Sales en Marketing collega’s in de markt te zetten. Je initieert en neemt deel aan (internationale en afdeling overschrijdende) projecten, vaak in de rol van projectleider. In die rol bewaak je de voortgang, coördineer je de activiteiten en zorg je voor

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

PHP Back-end Developer

Vacature details Vakgebied: Software/IT Opleiding: Starter Werklocatie: Nijmegen Vacature ID: 13633 Introductie OUr client develop websites, webshops, and digital environments that are used by many visitors daily. They are seeking an experienced PHP-Developer Back-end to join the team. If you're looking for a position where you can tackle challenging, innovative, and multidisciplinary ICT projects and make a difference, this vacancy might be for you! Functieomschrijving As a PHP developer, you'll develop websites and digital environments used by many visitors daily. You'll work as a back-end developer and want to continuously develop in this field. You can work independently and efficiently,

Bekijk vacature »

Pagina: 1 2 volgende »

Jeroen VD

Jeroen VD

08/04/2012 14:03:15
Quote Anchor link
ik heb een tijdje geleden een topic gestart over een login-script, zie hier. alleen daar zat nog een foutje in de brute-force protectie, al een keer of vijf gebumpt maar nog geen reactie, en ik kom er niet uit.

het login script is zodanig gebouwd dat er bij het inloggen gekeken wordt of de gebruiker de laatste vijf minuten al 3 keer foutief heeft geprobeerd in te loggen. dan een blokkade van 5 minuten, na die vijf minuten moet het dan weer opnieuw beginnen. bij elke foutieve inlogpoging wordt er een rij toegevoegd aan de volgende tabel:
tabel loginfail
- username (gebruikersnaam geprobeerd om in te loggen)
- IP (op welk ip)
- dateAndTime (huidige datum en tijd)

en wat er mis gaat, en volgens mij aan volgende query ligt:
na drie keer foutief inloggen blokkeert dit script het keurig. ook na vijf minuten weer opnieuw in kunnen loggen, prima. maar dan weer een fout wachtwoord (al is dat een dag later) kun je maar 1 keer foutief inloggen, en dan wordt je geblokkeerd. dit zou dus 3 keer moeten zijn.

wanneer ik dit dan in phpmyadmin draai, krijg ik altijd alle records.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
SELECT
    COUNT(loginFail_id) AS loginAttempts,
    (5 - MIN(TIMESTAMPDIFF(MINUTE, dateAndTime, NOW()))) AS minuteRest,
    dateAndTime
FROM
    loginfail
WHERE
    username = :username
HAVING
    TIMESTAMPDIFF(MINUTE, dateAndTime, NOW()) < 5
 
PHP hulp

PHP hulp

02/06/2024 05:46:29
 
Jens erd

Jens erd

08/04/2012 15:22:31
Quote Anchor link
Na die 5 minuten voer je een query uit om te kijken of het toegestaan is, als dat wel het geval is kun je het resultaat toch gewoon weer verwijderen?
 
Jeroen VD

Jeroen VD

08/04/2012 15:56:52
Quote Anchor link
ik wil kunnen zien welke ip's er allemaal hebben geprobeerd om verkeerd in te loggen, om een brute-force aanval te kunnen herkennen. ik wil dan een script bouwen die bij een x aantal inlogpogingen gewoon het ip blokkeert
 
Jeroen VD

Jeroen VD

10/04/2012 15:20:38
Quote Anchor link
is er toevallig een genie online, die dit eens wil bekijken?
 
Yanick  vB

Yanick vB

10/04/2012 16:46:01
Quote Anchor link
Kan je geen cookie gebruiken? Lijkt mij stukken makkelijker...
 
Jeroen VD

Jeroen VD

10/04/2012 16:48:48
Quote Anchor link
beveiligingrisico. die kan de gebruiker zo verwijderen. en sessions gaan ook verloren
 
Arend b

arend b

10/04/2012 16:58:50
Quote Anchor link
kun je niet een query laten uitvoeren die controleert hoeveel verschillende ip adressen er proberen in te loggen op 1 gebruikersnaam binnen 24 uur
 
Jeroen VD

Jeroen VD

10/04/2012 17:01:36
Quote Anchor link
check bovenstaande query... alleen die checkt op laatste vijf minuten, omdat ik meer niet nodig heb
 
Arend b

arend b

10/04/2012 17:20:16
Quote Anchor link
kun je niet het ip adres controleren vanuit de loginfail met het ip van loginsucces
als deze niet gelijk zijn dan zou het kunnen zijn dat er een bot bezig is.
 
Jeroen VD

Jeroen VD

10/04/2012 17:27:22
Quote Anchor link
dan zou dus iedere normale bezoeker een bot zijn, want die loggen met succes in, en iedereen logt wel eens foutief in.

maar ik wil een brute-force tegengaan door te bekijken of dat IP de laatste vijf minuten driemaal heeft geprobeerd in te loggen zonder succes, dan wil ik dat username + IP blokkeren voor 5 minuten. de loginAttempt (in de query) moet dus lager zijn dan 3 om uberhaupt in te kunnen loggen (hier zorgt php voor). maar die query geeft dus lekker de hele database terug
 
Arend b

arend b

10/04/2012 17:30:56
Quote Anchor link
nee ik bedoel dat je er een kolom bij maakt in je database in het loginsucces.
en dat je hier iedere keer dat een inlog wel lukt het ip adres bij schrijft dat zie je dit. als de gebruiker dan 3x verkeerd inlogt maar dan met het ip van hem zelf dan kun je hem bijvoorbeeld een andere blokkerings tijd meegeven.
 
Jeroen VD

Jeroen VD

10/04/2012 17:33:06
Quote Anchor link
zou kunnen. maar dan moet die query dus wel werken, en dat doet ie niet
 
 - Diov  -

- Diov -

10/04/2012 17:40:56
Quote Anchor link
Je maakt een nieuwe TABEL aan namelijk: pogingen.
rijen: id, datum van wanneer er verkeerd is gedaan, ip

Telkens als er een fout wachtwoord is, moet je een nieuw record aanmaken.
id wordt automatisch gedaan, de tabel 'pogingen' moet je ook na 30 minuten bijvoorbeeld resetten. Niet alles, alleen deze waarvoor de datum:
>= NOW() + 30 minuten

Je kan nog een tabel aanmaken: BAN
Als er 5 records zijn van hetzelfde ip, dan wordt het ip gepost bij bans.
Daar kan je dan ook een ban_verloop rij maken, ban_reden enzovoort.


Je controleert dan ook op de loginpagina of de ip in de database bevindt.
 
Jeroen VD

Jeroen VD

10/04/2012 17:45:41
Quote Anchor link
lijkt me vrij omslachtig, en wat als er over dat halfuur wordt geprobeerd te bruteforcen? dat er elke keer niet meer dan 4 ip voorkomen?
 
 - Diov  -

- Diov -

10/04/2012 17:51:07
Quote Anchor link
Je moet de records verwijderen die 30 minuten in de tabel pogingen staan.
Anders kunnen ze niet meer inloggen?

Met cookies of sessie's ga je niet kunnen werken.
Gewijzigd op 10/04/2012 17:51:18 door - Diov -
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

10/04/2012 17:54:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
SELECT username, ipaddress
FROM loginFail
WHERE
    DateAndTime >= DATE_ADD(NOW() INTERVAL -5 MINUTE)
        AND
    username = :username    
GROUP BY username, ipaddress
HAVING (COUNT(username) = 3)

Eventjes uit mijn hoofd maar in die richting moet je het zoeken.
 
Jeroen VD

Jeroen VD

10/04/2012 17:57:12
Quote Anchor link
@dem, lees eerst alsjeblieft wat de topicstarter wil, voordat je maar wat zegt.

@ger, wat doet DATE_ADD()?
 
Marco PHPJunky

Marco PHPJunky

10/04/2012 18:11:53
Quote Anchor link
De DATE_ADD() functie en het synoniem ADDDATE() kan je een interval toevoegen af te trekken van de geselecteerde datum.

Voorbeeld:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
SELECT *,DATE_ADD(OrderDate,INTERVAL 45 DAY) AS BetaalDag
FROM Orders


Leesvoer
 
Jeroen VD

Jeroen VD

10/04/2012 19:11:26
Quote Anchor link
dit lijkt voorlopig te werken. moet even testen of ie altijd werkt, maar tot nu toe bedankt!
 
Noppes Homeland

Noppes Homeland

10/04/2012 19:20:00
Quote Anchor link
DATE_ADD en DATE_SUB zijn overbodige mysql functies

Als je het goed uitschrijft ben je er ook:
NOW() - INTERVAL 5 MINUTE
 
Jeroen VD

Jeroen VD

10/04/2012 19:28:07
Quote Anchor link
vind ik ook netter! bedankt voor het melden noppes ^^
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.