website attack

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Software Ontwikkelaar PHP

Functie omschrijving Software Ontwikkelaar PHP gezocht! Wij zijn op zoek naar een ervaren PHP Software Ontwikkelaar om het team van onze opdrachtgever te versterken! De ideale kandidaat zal fungeren als verlengstuk van klanten en complexe technische vraagstukken met enthousiasme benaderen. Naast het werken met de nieuwste technologieën, ben je in staat om aan meerdere projecten tegelijkertijd te werken. Als je deze uitdaging aangaat, werk je nauw samen met front-end developers en draag je bij aan het realiseren van grote veranderingen bij klanten. Het bedrijf zoekt iemand die zichzelf graag uitdaagt en altijd streeft naar het leveren van de beste resultaten.

Bekijk vacature »

SQL ontwikkelaar

Functieomschrijving Voor een gave werkgever in regio Breda zijn wij per direct op zoek naar een SQL ontwikkelaar/ functioneel consultant. Hier wordt jij mede verantwoordelijk voor zowel de design en implementatie van SQL-databases als voor het verstaan van de processen van klanten naar het vertalen van deze processen naar IT-oplossingen. Jouw takenpakket komt als volgt uit te zien: Je test de ontwikkelde oplossingen om er zeker van te zijn dat deze voldoen aan de functionele specificaties en de behoeften van de organisatie; Je ontwerpt, ontwikkelt en implementeert SQL-databases om de data behoeften van de organisatie te ondersteunen; Je stelt op

Bekijk vacature »

Java Developer bij een jonge groeiende organisatie

Bedrijfsomschrijving Vind jij het als Java developer ook zo belangrijk dat een bedrijf je de ruimte en tijd geeft voor persoonlijke ontwikkeling? Dan zit je hier helemaal goed. Deze jonge organisatie is opgericht in 2018 en is ondertussen uitgegroeid tot een club van ongeveer 30 medewerkers. Het gaat hier om een echte Java club, die vrijheid en verantwoordelijkheid erg belangrijk vinden. Het bedrijf heeft een informele sfeer en de teams zijn erg hecht met elkaar. Ze delen graag de kennis en ervaringen met anderen, maar vinden andermans mening ook zeer belangrijk. De organisatie zet zich in voor ontwikkeling en besteed

Bekijk vacature »

Full stack .NET developer Microsoft 365

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

Fullstack JavaScript developer (ReactJS, NodeJS, T

Functie Het team bestaat momenteel uit ruim 15 collega’s, waarvan ruim de helft in het ontwikkelteam werkzaam is. Er zijn gave plannen om het platform ook te gaan toepassen op bijv. vliegvelden, maar ook internationale groei zit in het verschiet en daarom zijn ze op zoek naar versterking. Als Fullstack JavaScript developer werk je nauw samen met 9 fullstack (Python en .NET) developers. Binnen het team ga jij je toespitsen op het creeren van de optimale toegankelijkheid en user experience. Om dit voor elkaar te krijgen zul je ontwerpen, programmeren, testen en implementeren. Het hele proces dus! Maar ook bijvoorbeeld

Bekijk vacature »

Integratie expert - Java Developer

Dit ga je doen Nieuw koppelingen ontwerpen, ontwikkelen en implementeren; Je schakelt met de klanten om hen zo goed mogelijk van dienst te zijn. Strategisch kijken naar nieuwe mogelijkheden op bestaande of nieuwe koppelingen zo effectief mogelijk te realiseren; Je bestaande toolset afwegen tegen nieuwe mogelijkheden om integratiedoelen steeds effectiever en/of effcienter te bewerkstelligen; Bestaande software koppelingen beheren, dit zijn koppelingen met zowel interne als externe systemen; Overleg met zowel directe collega's als met stakeholders om nieuwe integratieplannen concreet te maken; Je kunt de junioren meenemen op sleeptouw. Hier ga je werken Onze klant is op zoek naar een ervaren

Bekijk vacature »

Lead React Developer

Dit ga je doen Als Lead React Developer zul jij je voornamelijk gaan bezighouden met: Het werken aan tal van uiteenlopende projecten waar gloednieuwe (web)applicaties van scratch af aan ontwikkeld worden met o.a. React (Native) en Drupal; Het aansturen van een team bestaande uit 5-6 talentvolle en gedreven ontwikkelaars; Het adviseren en meedenken over nieuwe (technische) oplossingen en te gebruiken tools/frameworks; Het meedenken over de architectuur en de juiste implementatiebeslissingen maken; De doorontwikkeling van huidige applicaties. Hier ga je werken Als je inderdaad een ervaren Lead React Developer bent die zichzelf graag nog verder wil ontwikkelen dan is het goed

Bekijk vacature »

Senior developer (PHP en VB.NET)

Functie De development afdeling bestaat uit 2 teams. Het productteam (10 developers) is verantwoordelijk voor verschillende applicaties met als doel om zoveel mogelijk te automatiseren en uit te werken tot standaard software. Met diverse Solutions Architecten en ervaren developers denken ze voortdurend mee met hun klanten en bouwen ze de basis van het uiteindelijke maatwerk dat wordt geleverd. Hiernaast hebben ze een maatwerk/projectteam. Dit team bestaat momenteel uit 8 developers (junior tot senior) en is verantwoordelijk voor het maatwerk in hun klantprojecten. Momenteel zijn ze op zoek naar een senior developer die aan de slag gaat in het productteam. Hierin

Bekijk vacature »

C# developer

Functie Als ervaren Software Engineer wordt jij verantwoordelijk voor het bedenken en ontwikkelen van technische (maatwerk) oplossingen voor onze klanten en dit samen met de klant af te stemmen. Jij wordt o.a. verantwoordelijk voor de doorontwikkeling het software pakket welke voor ons enorm belangrijk is. Dit pakket zorgt er namelijk voor dat wij complete productielijnen kunnen aansturen en monitoren. Daarnaast heb jij actief contact met onze hoofdvestiging om het software achter een van onze systemen te verbeteren en te herschrijven. Momenteel zijn onze C# applicaties geschreven met o.a. Winforms. Echter hebben wij de actieve ambitie om dit te gaan herschrijven

Bekijk vacature »

SQL database developer

Functie omschrijving Voor een software bedrijf in omgeving Breda zijn wij op zoek naar een SQL database ontwikkelaar. Dit bedrijf bouwt applicaties om processen in distributiecentra te optimaliseren. Ter uitbreiding van het huidige team developers zijn wij op zoek naar een SQL database ontwikkelaar. De klanten van dit groeiende bedrijf zitten door heel Europa en jouw werkzaamheden zullen er als volgt uitzien: Het samenstellen van de software op basis van de input vanuit de klant (T-SQL & C#.NET). Het bezoeken van klanten om de processen en mogelijkheden in kaart te brengen. Het ontwerpen van databases met T-SQL als programmeer laag.

Bekijk vacature »

Full stack developer Node.js, React Remote

Functie Als fullstack JavaScript developer vind jij het uitdagend om op basis van concrete klantvragen nieuwe functionaliteiten te ontwikkelen. Bij voorkeur worden deze functionaliteiten op een bepaalde manier geprogrammeerd, zodat ze door meerdere klanten te gebruiken zijn. Je hebt dus vaak te maken met abstracte vraagstukken. Om dit te kunnen realiseren sta je nauw in contact met de product owner en/of klant. Je bent niet alleen onderdeel van het development team, maar hebt ook vaak contact met de product-owner en/of klanten om daardoor inzichten te verzamelen die leiden tot productverbeteringen. • Inzichten verzamelen bij de klant en/of product owner •

Bekijk vacature »

Software developer - senior

Functie omschrijving Voor een echt softwarebedrijf in omgeving Gouda zijn wij op zoek naar versterking voor de afdeling Software Development! Ben jij op zoek naar een werkgever waar meerdere software developers werken aan interessante projecten? Ben jij op zoek naar een werkgever waar je onderdeel wordt van een team dat echt passie heeft voor het ontwikkelen van software? Dan ben je hier aan het juiste adres! Als softwareontwikkelaar kom je terecht bij een onafhankelijk, door kwaliteit gedreven, doortastend en daarbij op een Agile wijze werkend bedrijf. Ben jij een expert in het vertalen van Componenten van Functionaliteit naar Business lagen?

Bekijk vacature »

Back End Developer .NET

Dit ga je doen Ontwikkelen in C# .NET en werken aan nieuwbouw, uitbouw en onderhoud van de software (die communiceren met 68.000 sensoren, waardoor er meerdere miljoenen berichten per uur verwerkt worden); Samenwerken in Scrum Teams; Meewerken aan verschillende, uitdagende projecten; Werken met nieuwe technologieën en vrijheid krijgen om jezelf te ontwikkelen en door te groeien. Hier ga je werken Je komt als Developer te werken bij een organisatie die gespecialiseerd is in software die real-time wordt gebruikt. De software constateert waar werk moet worden uitgevoerd en de chauffeurs worden met een andere applicatie hierop geattendeerd. Ook wordt er direct

Bekijk vacature »

Traineeship Java Developer

Functie Wat ga je doen als Java Developer? Jij start via ons bij deze opdrachtgever als Trainee Java ontwikkelaar, tijdens het traineeship ga je in 1 jaar van de basis naar professioneel Java ontwikkelaar. Je start samen met een groep trainees, volgt de aangeboden cursussen en gaat aan de slag bij één van onze opdrachtgevers. Na een aantal maanden volgt de volgende opdracht. Door de groei in jouw rol kom je op steeds complexere opdrachten terecht. Veel afwisseling dus. Collega’s met ervaring helpen je bij deze groei en samen met jouw coach ga je een persoonlijke leerplan opzetten om jou

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »
J C

J C

15/02/2015 17:19:58
Quote Anchor link
Sinds twee dagen wordt mijn website aangevallen, waardoor het de website overbelast werd.

Je krijgt dan als foutmelding iets als: exceeded the max_connections_per_hour.

Inmiddels is dit verhoogd waardoor de website weer bereikbaar is.

Als ik de errorlog erbij pak krijg ik veel dingen als onderstaande meldingen, is hieruit op te maken dat er een grove fout in mijn script zit dat ze aan het gebruiken zijn?

Quote:
[Sun Feb 15 01:20:03.630711 2015] [:error] [pid 4543] [client #####] PHP Fatal error: Uncaught exception 'mysqli_sql_exception' with message 'The used SELECT statements have a different number of columns' in *****\nStack trace:\n#0 *****: mysqli->query('\\n\\t\\t\\t\\t\\t\\tSELECT\\n\\t...')\n#1 ***** \n#2 {main}\n thrown in ***** on line 71, referer: *****'+%2f**%2fuNiOn%2f**%2faLl+%2f**%2fsElEcT+0x393133353134353632312e39,0x393133353134353632322e39,0x393133353134353632332e39,0x393133353134353632342e39,0x393133353134353632352e39,0x393133353134353632362e39,0x393133353134353632372e39,0x393133353134353632382e39,0x393133353134353632392e39,0x39313335313435363231302e39,0x39313335313435363231312e39,0x39313335313435363231322e39,0x39313335313435363231332e39,0x39313335313435363231342e39,0x39313335313435363231352e39,0x39313335313435363231362e39,0x39313335313435363231372e39,0x39313335313435363231382e39,0x39313335313435363231392e39,0x39313335313435363232302e39,0x39313335313435363232312e39,0x39313335313435363232322e39,0x39313335313435363232332e39,0x39313335313435363232342e39,0x39313335313435363232352e39,0x39313335313435363232362e39,0x39313335313435363232372e39,0x39313335313435363232382e39,0x39313335313435363232392e39,0x39313335313435363233302e39,0x39313335313435363233312e39,0x39313335313435363233322e39,0x39313335313435363233332e39,0x39313335313435363233342e39,0x39313335313435363233352e39,0x39313335313435363233362e39,0x39313335313435363233372e39,0x39313335313435363233382e39,0x39313335313435363233392e39,0x39313335313435363234302e39,0x39313335313435363234312e39,0x39313335313435363234322e39,0x39313335313435363234332e39,0x39313335313435363234342e39,0x39313335313435363234352e39,0x39313335313435363234362e39,0x39313335313435363234372e39,0x39313335313435363234382e39,0x39313335313435363234392e39,0x39313335313435363235302e39,0x39313335313435363235312e39,0x39313335313435363235322e39,0x39313335313435363235332e39,0x39313335313435363235342e39,0x39313335313435363235352e39,0x39313335313435363235362e39,0x39313335313435363235372e39,0x39313335313435363235382e39,0x39313335313435363235392e39,0x39313335313435363236302e39,0x39313335313435363236312e39,0x39313335313435363236322e39,0x39313335313435363236332e39,0x39313335313435363236342e39,0x39313335313435363236352e39,0x39313335313435363236362e39,0x39313335313435363236372e39,0x39313335313435363236382e39,0x39313335313435363236392e39,0x39313335313435363237302e39,0x39313335313435363237312e39,0x39313335313435363237322e39,0x39313335313435363237332e39,0x39313335313435363237342e39,0x39313335313435363237352e39,0x39313335313435363237362e39,0x39313335313435363237372e39,0x39313335313435363237382e39,0x39313335313435363237392e39,0x39313335313435363238302e39,0x39313335313435363238312e39,0x39313335313435363238322e39,0x39313335313435363238332e39,0x39313335313435363238342e39,0x39313335313435363238352e39+and+'0'='0--


Quote:
[Sun Feb 15 01:18:52.338818 2015] [:error] [pid 4542] [client ######] PHP Fatal error: Uncaught exception 'mysqli_sql_exception' with message 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(/**/sElEcT 1 /**/fRoM(/**/sElEcT count(*),/**/cOnCaT((/**/sElEcT(/**/sElEcT /**' at line 10' in *****\nStack trace:\n#0 *****: mysqli->query('\\n\\t\\t\\t\\t\\t\\tSELECT\\n\\t...')\n#1 *****): include_once('***o...')\n#2 {main}\n thrown in ***** on line 71, referer: *****(%2f**%2fsElEcT+1+%2f**%2ffRoM(%2f**%2fsElEcT+count(*),%2f**%2fcOnCaT((%2f**%2fsElEcT(%2f**%2fsElEcT+%2f**%2fuNhEx(%2f**%2fhEx(%2f**%2fcOnCaT(0x217e21,0x4142433134355a5136324457514146504f4959434644,0x217e21))))+%2f**%2ffRoM+information_schema.%2f**%2ftAbLeS+%2f**%2flImIt+0,1),floor(rand(0)*2))x+%2f**%2ffRoM+information_schema.%2f**%2ftAbLeS+%2f**%2fgRoUp%2f**%2fbY+x)a)+'


Quote:
[Sun Feb 15 01:18:52.597517 2015] [:error] [pid 4526] [client ######] PHP Fatal error: Uncaught exception 'mysqli_sql_exception' with message 'Duplicate entry '!~!ABC145ZQ62DWQAFPOIYCFD!~!1' for key 'group_key'' in *****\nStack trace:\n#0 *****: mysqli->query('\\n\\t\\t\\t\\t\\t\\tSELECT\\n\\t...')\n#1 *****: include_once('***...')\n#2 {main}\n thrown in ***** on line 71, referer: *****'+and(%2f**%2fsElEcT+1+%2f**%2ffRoM(%2f**%2fsElEcT+count(*),%2f**%2fcOnCaT((%2f**%2fsElEcT(%2f**%2fsElEcT+%2f**%2fuNhEx(%2f**%2fhEx(%2f**%2fcOnCaT(0x217e21,0x4142433134355a5136324457514146504f4959434644,0x217e21))))+%2f**%2ffRoM+information_schema.%2f**%2ftAbLeS+%2f**%2flImIt+0,1),floor(rand(0)*2))x+%2f**%2ffRoM+information_schema.%2f**%2ftAbLeS+%2f**%2fgRoUp%2f**%2fbY+x)a)+and+'1'='1
Gewijzigd op 15/02/2015 21:14:59 door J C
 
PHP hulp

PHP hulp

21/11/2024 13:04:09
 
Eeyk Vd noot

Eeyk Vd noot

15/02/2015 17:38:03
Quote Anchor link
Als ik het zo zie dan hebben ze een sql injectie gebruikt.
 
J C

J C

15/02/2015 17:41:21
Quote Anchor link
Dat dacht ik eerst ook, maar het stukje zou volgens mij veilig moeten zijn:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
$mainqry    ="
                        SELECT
                                website_titel,
                                website_naam,
                                website_inhoud  
                        FROM
                                website
            ";
                                
if (!isset ($_GET['pagina']) || $_GET['pagina'] == '')
    {                                
$mainqry     .="            WHERE
                                website_id=201
            ";
    }                                    
else            
    {                      
$mainqry     .="         WHERE
                                website_id BETWEEN  200 and 299
                        AND
                                website_naam='".mysql_real_escape_string($_GET['pagina'])."'
            ";
    }
    
    $mainsql = $connection->query($mainqry);
    


IS er hier uit te halen of ze er ook in zijn gekomen?
Gewijzigd op 15/02/2015 17:41:42 door J C
 
Ward van der Put
Moderator

Ward van der Put

15/02/2015 17:42:32
Quote Anchor link
Iemand probeert je site te hacken met SQL-injectie. Als dat in een fatal error eindigt, is dat niet zo'n probleem; je moet je meer zorgen maken over de injecties die wél slagen en die je daardoor niet als error voorbij ziet komen.

Als /medewerkers/ alleen voor medewerkers toegankelijk is, zou ik die directory snel even dichttimmeren met een whitelist van vertrouwde IP-adressen in .htaccess. Dat is de snelste oplossing. (Je voorbeelden noemen slechts één kwaadaardig IP-adres, maar er kunnen meerdere IP-adressen worden gebruikt.)

Daarna eens controleren of je ergens gevoelig bent voor SQL-injectie.
 
J C

J C

15/02/2015 17:46:02
Quote Anchor link
Bedankt, ik was al bezig alles overzetten naar het nieuwe php en daarmee alle scripts te controleren.
Maar dat heeft dus vanaf nu prioriteit nummer 1.

Ik kan uit de database niet halen dat er iemand is ingelogd.
Dit wordt namelijk wel bijgehouden.

We hebben best wel wat medewerkers, die ook via hun telefoon inloggen op de website.
Ik zal eens kijken of ik al die ipadressen kan gebruiken.
 
Thomas van den Heuvel

Thomas van den Heuvel

15/02/2015 19:31:13
Quote Anchor link
$connection->query($mainqry);
<-- -->
mysql_real_escape_string($_GET['pagina'])

???

Gebruik je overal (nog) de mysql-extensie?
En als je dan toch een wrapper hebt, waarom maak je dan geen shorthand voor mysql_real_escape_string()?
$connection->escape() leest toch wat prettiger. Ik zou het ook $db noemen, en niet $connection.

Het zou ook logischer zijn dat als je van een wrapper gebruik maakt, ook alles in deze wrapper zit.

Daarnaast, weet je zeker dat de bovenstaande query je parten speelt?
Tevens, is je character encoding overal hetzelfde? Dit is namelijk van cruciaal belang voor de correcte werking van _real_escape_string() functionaliteit en daarmee dus ook voor het voorkomen van SQL-injectie.

En ook: het escapen van je (SQL) output alleen is soms niet genoeg. Soms moet je je input ook filteren.
Als je een numerieke waarde verwacht in $_GET['whatever'], controleer hier dan op. Als deze waarde vervolgens niet numeriek is, zou je de query niet eens uit moeten voeren.
 
J C

J C

15/02/2015 19:46:18
Quote Anchor link
Ik ben nu alles aan het omzetten naar mysqli en probeer meteen dit soort dingen te tackelen.
Door de jaren heen zijn die basis bestanden een beetje verwaterd.
Het is me ook niet helemaal meer duidelijk waarom ik dit zo heb gedaan.

ik heb er nu dit van gemaakt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
if(isset($_GET['pagina'])){
$pagina = $_GET['pagina'];
}
else
{
$pagina = 'home';
}

$qry    ="
    SELECT
            website_titel,
            website_naam,
            website_inhoud  
    FROM
            website
    WHERE
        website_id
            BETWEEN  200 and 299
    AND
        website_naam=?
            ";

    $statement = $connection->prepare($qry);
    $statement->error;
    $statement->bind_param('s', $pagina);
    $statement->execute();
    $result = $statement->get_result();
    $maintekst = $result->fetch_assoc();  
 
Thomas van den Heuvel

Thomas van den Heuvel

15/02/2015 20:17:38
Quote Anchor link
Wellicht wil je je oorspronkelijke bericht ook anonimeseren.

Hier zitten nu nog remote IP's in (die trouwens van nederlandse origine lijken te zijn :)) en de URL van je website.

Waarschijnlijk wil je juist nu niet nog meer mensen hebben die aan jouw poort(en) gaan voelen wel?
Gewijzigd op 15/02/2015 20:18:12 door Thomas van den Heuvel
 
J C

J C

15/02/2015 20:25:40
Quote Anchor link
Dat ip adres had hij eerder moeten bedenken. Voordat hij aan mijn website begon te rommelen.
We hebben een behoorlijk vermoeden wie er achter zit. Namelijk degene die al maanden probeert via het inlog scherm probeert in te loggen.
 
Thomas van den Heuvel

Thomas van den Heuvel

15/02/2015 20:35:09
Quote Anchor link
Misschien gebeurt dit via een website die een even goede beveiliging had als die van jou.
 
J C

J C

15/02/2015 20:36:53
Quote Anchor link
Als dat werkelijk zo zou zijn, dan is het nog steeds zijn eigen schuld.

Maar gezien het ipadres en zijn geschiedenis op onze website vermoed ik wat anders.
Gewijzigd op 15/02/2015 20:37:38 door J C
 
- wes  -

- wes -

16/02/2015 09:04:38
Quote Anchor link
Als je het IP van iemand hebt die dit doet , waarom deze niet excluden van je gehele site?
 
J C

J C

16/02/2015 10:02:59
Quote Anchor link
hoe doe ik dat? In de htacces?
 
Ivo P

Ivo P

16/02/2015 10:10:53
Quote Anchor link
Allow from all
Deny from 111.222.333.444

Evt hoofdletter gebruik even checken
 



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.