Kan AI vechten met toenemend aantal ransomware-aanvallen?
Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek
ModSecurity is een open source webapplicatie firewall (WAF) module die geweldig is voor het beschermen van Apache, Nginx en IIS tegen verschillende cyberaanvallen die potentiële kwetsbaarheden in verschillende webapplicaties aanpakken
In dit artikel zullen we ModSecurity voor Nginx installeren en configureren op CentOS 7, Debian 8 en Ubuntu 16.04.
root.Volg deze handleiding en werk de kernel en pakketten van uw server bij naar de nieuwste beschikbare versie.
Voordat u Nginx en ModSecurity succesvol kunt compileren, moet u verschillende softwarepakketten als volgt installeren.
a) Op CentOS 7:
yum groupinstall -y "Development Tools"
yum install -y httpd httpd-devel pcre pcre-devel libxml2 libxml2-devel curl curl-devel openssl openssl-devel
shutdown -r now
b) Op Debian 8 of Ubuntu 16.04:
apt-get install -y git build-essential libpcre3 libpcre3-dev libssl-dev libtool autoconf apache2-dev libxml2-dev libcurl4-openssl-dev automake pkgconf
Vanwege verschillende instabiliteit gemeld op ModSecurity voor Nginx master branch, wordt het voorlopig officieel aanbevolen om nginx_refactoringwaar mogelijk de nieuwste versie van de branch te gebruiken.
Download de nginx_refactoringtak van ModSecurity voor Nginx:
cd /usr/src
git clone -b nginx_refactoring https://github.com/SpiderLabs/ModSecurity.git
Compileer ModSecurity:
a) Op CentOS 7:
cd ModSecurity
sed -i '/AC_PROG_CC/a\AM_PROG_CC_C_O' configure.ac
sed -i '1 i\AUTOMAKE_OPTIONS = subdir-objects' Makefile.am
./autogen.sh
./configure --enable-standalone-module --disable-mlogc
make
Opmerking: de twee sedbovenstaande opdrachten worden gebruikt om waarschuwingsberichten te voorkomen bij het gebruik van nieuwere automake-versies.
b) Op Debian 8 of Ubuntu 16.04:
cd ModSecurity
./autogen.sh
./configure --enable-standalone-module --disable-mlogc
make
Download en archiveer de nieuwste stabiele release van Nginx die Nginx 1.10.3op het moment van schrijven is:
cd /usr/src
wget https://nginx.org/download/nginx-1.10.3.tar.gz
tar -zxvf nginx-1.10.3.tar.gz && rm -f nginx-1.10.3.tar.gz
a) Op CentOS 7:
Eerst moet je een toegewijde gebruiker nginxen een toegewijde groep nginxvoor Nginx maken:
groupadd -r nginx
useradd -r -g nginx -s /sbin/nologin -M nginx
Compileer vervolgens Nginx terwijl u ModSecurity- en SSL-modules inschakelt:
cd nginx-1.10.3/
./configure --user=nginx --group=nginx --add-module=/usr/src/ModSecurity/nginx/modsecurity --with-http_ssl_module
make
make install
Wijzig de standaardgebruiker van Nginx:
sed -i "s/#user nobody;/user nginx nginx;/" /usr/local/nginx/conf/nginx.conf
b) Op Debian 8 of Ubuntu 16.04:
Ten eerste moet u de bestaande gebruiker www-dataen de bestaande groep gebruiken www-data.
Compileer vervolgens Nginx terwijl u ModSecurity- en SSL-modules inschakelt:
cd nginx-1.10.3/
./configure --user=www-data --group=www-data --add-module=/usr/src/ModSecurity/nginx/modsecurity --with-http_ssl_module
make
make install
Wijzig de standaardgebruiker van Nginx:
sed -i "s/#user nobody;/user www-data www-data;/" /usr/local/nginx/conf/nginx.conf
Als Nginx met succes is geïnstalleerd, bevinden gerelateerde bestanden zich op:
nginx path prefix: "/usr/local/nginx"
nginx binary file: "/usr/local/nginx/sbin/nginx"
nginx modules path: "/usr/local/nginx/modules"
nginx configuration prefix: "/usr/local/nginx/conf"
nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
nginx pid file: "/usr/local/nginx/logs/nginx.pid"
nginx error log file: "/usr/local/nginx/logs/error.log"
nginx http access log file: "/usr/local/nginx/logs/access.log"
nginx http client request body temporary files: "client_body_temp"
nginx http proxy temporary files: "proxy_temp"
nginx http fastcgi temporary files: "fastcgi_temp"
nginx http uwsgi temporary files: "uwsgi_temp"
nginx http scgi temporary files: "scgi_temp"
u kunt de installatie testen met:
/usr/local/nginx/sbin/nginx -t
Als er niets misgaat, moet de uitvoer zijn:
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
Voor uw gemak kunt u een systemd-eenheidsbestand voor Nginx instellen:
cat <<EOF>> /lib/systemd/system/nginx.service
[Service]
Type=forking
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
KillStop=/usr/local/nginx/sbin/nginx -s stop
KillMode=process
Restart=on-failure
RestartSec=42s
PrivateTmp=true
LimitNOFILE=200000
[Install]
WantedBy=multi-user.target
EOF
In de toekomst kunt u Nginx als volgt starten / stoppen / herstarten:
systemctl start nginx.service
systemctl stop nginx.service
systemctl restart nginx.service
vi /usr/local/nginx/conf/nginx.conf
Zoek het volgende segment binnen het http {}segment:
location / {
root html;
index index.html index.htm;
}
Voeg de onderstaande regels in het location / {}segment in:
ModSecurityEnabled on;
ModSecurityConfig modsec_includes.conf;
#proxy_pass http://localhost:8011;
#proxy_read_timeout 180s;
Het uiteindelijke resultaat zou moeten zijn:
location / {
ModSecurityEnabled on;
ModSecurityConfig modsec_includes.conf;
#proxy_pass http://localhost:8011;
#proxy_read_timeout 180s;
root html;
index index.html index.htm;
}
Opslaan en afsluiten:
:wq!
Opmerking: de bovenstaande Nginx-configuratie is slechts een voorbeeldconfiguratie voor het gebruik van Nginx als een webserver in plaats van een omgekeerde proxy. Als u Nginx gebruikt als een omgekeerde proxy, verwijder dan het #teken in de laatste twee regels en breng de nodige wijzigingen aan.
/usr/local/nginx/conf/modsec_includes.conf:
cat <<EOF>> /usr/local/nginx/conf/modsec_includes.conf
include modsecurity.conf
include owasp-modsecurity-crs/crs-setup.conf
include owasp-modsecurity-crs/rules/*.conf
EOF
Opmerking: de bovenstaande configuratie past alle OWASP ModSecurity Core-regels in de owasp-modsecurity-crs/rules/directory toe. Als u alleen selectieve regels wilt toepassen, moet u de include owasp-modsecurity-crs/rules/*.confregel verwijderen en na stap 4.5 de exacte regels specificeren.
cp /usr/src/ModSecurity/modsecurity.conf-recommended /usr/local/nginx/conf/modsecurity.conf
cp /usr/src/ModSecurity/unicode.mapping /usr/local/nginx/conf/
/usr/local/nginx/conf/modsecurity.confbestand:
sed -i "s/SecRuleEngine DetectionOnly/SecRuleEngine On/" /usr/local/nginx/conf/modsecurity.conf
cd /usr/local/nginx/conf
git clone https://github.com/SpiderLabs/owasp-modsecurity-crs.git
cd owasp-modsecurity-crs
mv crs-setup.conf.example crs-setup.conf
cd rules
mv REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf.example REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf
mv RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf.example RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf
Start Nginx:
systemctl start nginx.service
Open poort 80 om externe toegang mogelijk te maken:
a) Op CentOS 7:
firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload
b) Op Debian 8:
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
touch /etc/iptables
iptables-save > /etc/iptables
c) Op Ubuntu 16.04:
ufw allow OpenSSH
ufw allow 80
ufw default deny
ufw enable
Richt uw webbrowser op:
http://203.0.113.1/?param="><script>alert(1);</script>
Gebruik grepom foutmeldingen als volgt op te halen:
grep error /usr/local/nginx/logs/error.log
De uitvoer moet verschillende foutmeldingen bevatten die vergelijkbaar zijn met:
2017/02/15 14:07:54 [error] 10776#0: [client 104.20.23.240] ModSecurity: Warning. detected XSS using libinjection. [file "/usr/local/nginx/conf/owasp-modsecurity-crs/rules/REQUEST-941-APPLICATION-ATTACK-XSS.conf"] [line "56"] [id "941100"] [rev "2"] [msg "XSS Attack Detected via libinjection"] [data "Matched Data: found within ARGS:param: \x22><script>alert(1);</script>"] [severity "CRITICAL"] [ver "OWASP_CRS/3.0.0"] [maturity "1"] [accuracy "9"] [tag "application-multi"] [tag "language-multi"] [tag "platform-multi"] [tag "attack-xss"] [tag "OWASP_CRS/WEB_ATTACK/XSS"] [tag "WASCTC/WASC-8"] [tag "WASCTC/WASC-22"] [tag "OWASP_TOP_10/A3"] [tag "OWASP_AppSensor/IE1"] [tag "CAPEC-242"] [hostname ""] [uri "/index.html"] [unique_id "ATAcAcAkucAchGAcPLAcAcAY"]
Dat is het. Zoals u ziet, heeft de ModSecurity-module deze aanval met succes geregistreerd in overeenstemming met het standaardactiebeleid. Als u meer aangepaste instellingen wilt maken, controleer en bewerk dan zorgvuldig /usr/local/nginx/conf/modsecurity.confen /usr/local/nginx/conf/owasp-modsecurity-crs/crs-setup.confbestanden.
Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek
ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.
WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+
Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.
Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie
13 Commerciële data-extractietools voor big data
Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true
Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.
Een inzicht in 26 Big Data-analysetechnieken: deel 1
AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.