Po dvaceti letech skončil leader japonské SUMO (SUpport.MOzilla.org) komunity Marsf. Důvodem bylo nasazení sumobota, který nedodržuje nastavené postupy a hrubě zasahuje do překladů i archivů. Marsf zároveň zakázal použití svých příspěvků a dat k učení sumobota a AI a požádal o vyřazení svých dat ze všech učebních dat.
Úřad pro ochranu hospodářské soutěže zahajuje sektorové šetření v oblasti mobilních telekomunikačních služeb poskytovaných domácnostem v České republice. Z poznatků získaných na základě prvotní analýzy provedené ve spolupráci s Českým telekomunikačním úřadem (ČTÚ) ÚOHS zjistil, že vzájemné vztahy mezi operátory je zapotřebí detailněji prověřit kvůli možné nefunkčnosti některých aspektů konkurence na trzích, na nichž roste tržní podíl klíčových hráčů a naopak klesá význam nezávislých virtuálních operátorů.
Různé audity bezpečnostních systémů pařížského muzea Louvre odhalily závažné problémy v oblasti kybernetické bezpečnosti a tyto problémy přetrvávaly déle než deset let. Jeden z těchto auditů, který v roce 2014 provedla francouzská národní agentura pro kybernetickou bezpečnost, například ukázal, že heslo do kamerového systému muzea bylo „Louvre“. 😀
Z upstreamu GNOME Mutter byl zcela odstraněn backend X11. GNOME 50 tedy poběží už pouze nad Waylandem. Aplikace pro X11 budou využívat XWayland.
Byl publikován plán na odstranění XSLT z webových prohlížečů Chrome a Chromium. S odstraněním XSLT souhlasí také vývojáři Firefoxu a WebKit. Důvodem jsou bezpečnostní rizika a klesající využití v moderním webovém vývoji.
Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.3.0. Přehled novinek v poznámkách k vydání.
Organizace Open Container Initiative (OCI) (Wikipedie), projekt nadace Linux Foundation, vydala Runtime Specification 1.3 (pdf), tj. novou verzi specifikace kontejnerového běhového prostředí. Hlavní novinkou je podpora FreeBSD.
Nový open source router Turris Omnia NG je v prodeji. Aktuálně na Allegro, Alternetivo, Discomp, i4wifi a WiFiShop.
Na YouTube a nově také na VHSky byly zveřejněny sestříhané videozáznamy přednášek z letošního OpenAltu.
Jednou za rok otevírá společnost SUSE dveře svých kanceláří široké veřejnosti. Letos je pro vás otevře 26. listopadu v 16 hodin v pražském Karlíně. Vítáni jsou všichni, kdo se chtějí dozvědět více o práci vývojářů, prostředí ve kterém pracují a o místní firemní kultuře. Můžete se těšit na krátké prezentace, které vám přiblíží, na čem inženýři v Praze pracují, jak spolupracují se zákazníky, partnery i studenty, proč mají rádi open source a co
… více »$IPTABLES -N INTERNET_SSH $IPTABLES -A INPUT -i $INTERNET -p tcp -j INTERNET_SSH $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp --dport 22 -m recent --rcheck --name SSH -j ACCEPT $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp --dport 1600 -m recent --name SSH --remove -j DROP $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp --dport 1601 -m recent --name SSH --set -j DROP $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp --dport 1602 -m recent --name SSH --remove -j DROPStačí telnetem zaťukat na port 1601 a Sezame otevři se. Na port 1600 a je zase zavřeno. Jenže bych rád, abych musel zaťukat na vícero portů anebo když ne to, tak alespoň aby se to otevřelo jen pro danou IP adresu, ze které ťukám a nejlépe jen pro dané username. Úplně nejlepší by to bylo vše naráz, ale to už bych asi chtěl až moc. Každopádně NetFilter je velice mocný nástroj, tak třeba někoho alespoň něco z toho, co bych rád napadne.
$INTERNET=eth0 # interface
$STROJ=10.10.10.10 # povoleny stroj
$IPTABLES -N INTERNET_SSH_PK
$IPTABLES -A INPUT -i $INTERNET -p tcp -j INTERNET_SSH_PK
$IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $STROJ \
-m state --state NEW -m tcp -p tcp --dport 22 \
-m recent --rcheck --name SSH -j ACCEPT
$IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $STROJ \
-m state --state NEW -m tcp -p tcp --dport 1600 \
-m recent --name SSH --remove -j DROP
$IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $STROJ \
-m state --state NEW -m tcp -p tcp --dport 1601 \
-m recent --name SSH --set -j DROP
$IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $STROJ \
-m state --state NEW -m tcp -p tcp --dport 1602 \
-m recent --name SSH --remove -j DROP
$IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $STROJ \
-m state --state NEW -m tcp -p tcp --dport 22 \
-m recent --rcheck --seconds 10 --name SSH -j ACCEPT
...
...
Takže zbývá už jen to, aby se pro otevření mohlo klepat na více portů než jen jeden jediný.
$IPTABLES -N INTERNET_SSH
$IPTABLES -A INPUT -i $INTERNET -p tcp -j INTERNET_SSH
$IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp \
--dport 22 -m recent --rcheck --name SSH2 -j ACCEPT
$IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp \
--dport 1600 -m recent --name SSH --remove \
--name SSH2 --remove -j DROP
$IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp \
--dport 1601 -m recent --name SSH --set -j DROP
$IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp \
--dport 1603 -m recent ! --rcheck --name SSH -j DROP
$IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp \
--dport 1603 -m recent --name SSH2 --set -j DROP
Idea je, že při ťukání na port 1603 se testuje, jestli SSH je set (ťukalo se na 1601) - když ne, paket se zahodí. Když ano, uplatní se další pravidlo, které nastaví SSH2, což už umožní spojení na port 22.
Jak říkám, je to jenom takový nápad - nejsem si jistý, že ten vykřičník u testování na portu 1603 bude fungovat ani jestli jde vymazat SSH i SSH2 naráz (aby se ťukáním na 1600 zavřelo všechno)
IPTABLES=/sbin/iptables
### AN INTERFACE
INTERNET=eth0
### NOTICE: DEFAULT POLITIC IS TO DROP EVERYTHING AS USUAL
.
.
.
### BLOCK INCOMING SSH BRUTE-FORCE ATEMPTS
### ONE ATEMPT PER 10 SECONDS ONLY FOR SSH IS ALLOWED
$IPTABLES -N INTERNET_SSH_BF
$IPTABLES -A INPUT -i $INTERNET \
-p tcp \
-j INTERNET_SSH_BF
$IPTABLES -A INTERNET_SSH_BF -i $INTERNET \
-p tcp --dport 22 \
-m recent --update --seconds 20 \
-j REJECT --reject-with icmp-port-unreachable
$IPTABLES -A INTERNET_SSH_BF -i $INTERNET \
-p tcp --dport 22 --tcp-flags syn,ack,rst syn \
-m recent --set \
-j ACCEPT
### PORT-KNOCKING FROM SPECIFIC HOST
### PORT WILL BE OPNENED FOR 3 SECONDS ONLY
### PORT-KNOCKING IS POSSIBLE FROM ONE HOST ONLY
OPENEDTIME=3
ALLOWEDHOST=10.10.10.10
KNOCKPORT=1600
$IPTABLES -N INTERNET_SSH_PK
$IPTABLES -A INPUT -i $INTERNET \
-p tcp -j INTERNET_SSH_PK
$IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $ALLOWEDHOST \
-m state --state NEW \
-p tcp --dport 22 \
-m recent --rcheck --seconds $OPENEDTIME --name SSH_PK \
-j ACCEPT
$IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $ALLOWEDHOST \
-m state --state NEW \
-p tcp --dport $KNOCKPORT \
-m recent --name SSH_PK --set \
-j DROP
Jedinou nevýhodou může být, že když někdo bude zrovna provozovat na náš stroj brute-force, tak se také nezalogujeme, dokud brute-force neskončí. To není příjemná představa a je to asi obecná vlastnost všech port-knockingů jen na jeden port. Myslím, že právě možnost zaťukat na posloupnost portů, by to mohla vyřešit, ale nepovedlo se mi zatím vytvořit žádnou funkční implementaci. Dám opět vědět, jak to pokračuje. Nápady jsou stále vítány.
INTERNET=eth0
ALLOW_HOST=10.10.10.10
OPEN_TIME=3
KNOCK_PORT=1601
$IPTABLES -N INTERNET_SSH_PK
$IPTABLES -A INPUT -i $INTERNET \
-p tcp \
-j INTERNET_SSH_PK
$IPTABLES -A INTERNET_SSH_PK -i $INTERNET \
-s $ALLOW_HOST \
-m state --state NEW \
-p tcp --dport 22 \
-m recent --rcheck --seconds $OPEN_TIME --name SSH_PK \
-j ACCEPT
$IPTABLES -A INTERNET_SSH_PK -i $INTERNET \
-s $ALLOW_HOST \
-m state --state NEW \
-p tcp --dport $KNOCK_PORT -m recent --name SSH_PK --set \
-j DROP
Je to tedy opět ta původní a nejjednodušší verze klepání na jediný port s modifikací, že je nutno se zalogovat do určitého počtu vteřin. Poté se port opět uzavře. Na vzáleném stroji provedeme zaťukání a zalogování takto:
telnet adresa 1601 ; ssh uzivate@adresaPo stisku
ctrl-c se provede druhý příkaz a dojde k zalogování. Po třech vteřinách je port opět uzavřen. Hm, nic moc, ale je to alespoň něco.
# Netfilter/IPtables - example of multiple-port knocking # Note: Knock ports 100,200,300,400 to open SSH port for 5 seconds. # Nice thing to knock TCP with is `telnet' program: # $> alias k='telnet ip_address_or_hostname' # $> k 100 ; k 200 ; k 300 ; k 400 ; ssh ip_address_or_hostname # Then press Ctrl-C 4 times. That's all. Enjoy. HOST_IP="12.34.56.78" /sbin/iptables -N INTO-PHASE2 /sbin/iptables -A INTO-PHASE2 -m recent --name PHASE1 --remove /sbin/iptables -A INTO-PHASE2 -m recent --name PHASE2 --set /sbin/iptables -A INTO-PHASE2 -j LOG --log-prefix "INTO PHASE2: " /sbin/iptables -N INTO-PHASE3 /sbin/iptables -A INTO-PHASE3 -m recent --name PHASE2 --remove /sbin/iptables -A INTO-PHASE3 -m recent --name PHASE3 --set /sbin/iptables -A INTO-PHASE3 -j LOG --log-prefix "INTO PHASE3: " /sbin/iptables -N INTO-PHASE4 /sbin/iptables -A INTO-PHASE4 -m recent --name PHASE3 --remove /sbin/iptables -A INTO-PHASE4 -m recent --name PHASE4 --set /sbin/iptables -A INTO-PHASE4 -j LOG --log-prefix "INTO PHASE4: " /sbin/iptables -A INPUT -m recent --update --name PHASE1 /sbin/iptables -A INPUT -p tcp --dport 100 -m recent --set --name PHASE1 /sbin/iptables -A INPUT -p tcp --dport 200 -m recent --rcheck --name PHASE1 -j INTO-PHASE2 /sbin/iptables -A INPUT -p tcp --dport 300 -m recent --rcheck --name PHASE2 -j INTO-PHASE3 /sbin/iptables -A INPUT -p tcp --dport 400 -m recent --rcheck --name PHASE3 -j INTO-PHASE4 /sbin/iptables -A INPUT -p tcp -s $HOST_IP --dport 22 -m recent --rcheck --seconds 5 --name PHASE4 -j ACCEPTTento ukazkovy script si lze take stahnout zde, popr. je k nalezeni tez na strankach Debian Administration.
Tiskni
Sdílej: