Skip to Content

Odoo 19 Community: Web RBL – rhestr rwystro ar gyfer traffig ymosodol ar eich gwefannau eich hun

24 Medi 2026 by
Odoo 19 Community: Web RBL – rhestr rwystro ar gyfer traffig ymosodol ar eich gwefannau eich hun

Cod ffynhonnell: github.com/Alex0176/odoo-web-rbl — AGPL-3, ar gael i’w ddefnyddio’n rhydd.

Mae unrhyw un sy’n rhedeg gweinydd Odoo ar y rhyngrwyd yn cael ymwelwyr. Nid yn achlysurol, ond yn ddi-baid. Dros ddau ddiwrnod ar bymtheg, fe wnaethom gofnodi a dadansoddi 731,297 o geisiadau ar ein pum gwefan. Nid ymwelwyr oedd 110,511 ohonynt, ond chwiliadau awtomataidd am wendidau, manylion mynediad a ffeiliau ffurfweddu.

Mae’r erthygl hon yn disgrifio Web RBL, modiwl cod agored ar gyfer Odoo 19 Community sy’n adnabod, sgorio, cofnodi a gwrthod y traffig hwn — ac sy’n cyhoeddi’r rhestr flocio fel rhestr RBL, sef y fformat y gall waliau tân a dirprwyon gwrthdro ei ddarllen yn uniongyrchol. Daw’r holl ffigurau o’r system fyw.

Beth all y modiwl ei wneud — trosolwg o’r swyddogaethau

SwyddogaethBeth mae’n ei wneudGosodiad diofyn
Adnabod patrymauAdnabod chwilota ar sail y llwybr a’r estyniad: .env, .git, ffeiliau ffurfweddu, allweddi cwmwl, cyfarwyddiadau adeiladu CI/CD, WordPress, PHP, croesi llwybrau, rheolwyr cronfeydd data, GraphQL, gweithredu gorchmynion drwy /api/fs/exec a rhyngwynebau tebygblocio
Tair lefel fesul patrwmblocio, cyfrif neu hysbysu — gellir newid y gosodiad fesul patrwm, heb godfesul patrwm
TrothwyonNifer y digwyddiadau sy’n cyfateb i’r un patrwm cyn blocio; deg ar gyfer mewngofnodi10 ar gyfer mewngofnodi
Diogelu mewngofnodiYmdrechion mewngofnodi aflwyddiannus drwy’r ffurflen a XML-RPC/JSON-RPC, gwiriadau sesiwn aflwyddiannus, mynediad at reolwr y cronfeydd data — wedi’u cofnodi yn y gronfa ddata, nid yn y cof gweithioymlaen
Canfod botiau wrth fewngofnodiCaiff unrhyw un sy’n anwybyddu’r neges i aros ar ôl deg ymgais aflwyddiannus ac yn dal i geisio ei flocio ar unwaithblocio
Adnabod ymddygiadCyfeiriadau sy’n cynhyrchu ugain tudalen wall a phrin unrhyw dudalennau dilys mewn pum munud — hynny yw, dyfalu yn hytrach na darllenhysbysu
Sgôr 0–100Pa mor sicr yw hi bod ymosodwr y tu ôl i'r cyfeiriad? O ddifrifoldeb y patrwm, nifer y patrymau gwahanol, diwrnodau amlwg, parthau yr effeithir arnynt a nifer y cyfatebiaethau — gyda rhesymeg mewn testun clirymlaen
Blocio mewngofnodi ar sail sgôrPan gyrhaeddir sgôr y gellir ei gosod, ni chaniateir mewngofnodi, ond gellir darllen y wefan o hyd40 neu fwy
Amheuaeth bod manylion mynediad wedi’u dwynRhoddir gwybod am fewngofnodi llwyddiannus o gyfeiriad amheus a gellir ei neilltuo fel tasg os dymunir — unwaith fesul cyfeiriad bob dyddymlaen
Rhestrau bygythiadauNodau ymadael Tor, Spamhaus DROP, FireHOL Level 1, blocklist.de wedi’u ffurfweddu ymlaen llaw; gellir ychwanegu unrhyw restr RBL arall drwy ei chyfeiriad, cysoni dyddiol, lefel ar wahân ar gyfer pob rhestrhysbysu
Dim mynediad at fewngofnodiY bedwaredd lefel ar gyfer rhestrau a gwledydd: gellir darllen y wefan, ond mae’r ffurflen fewngofnodi a’r rhyngwynebau ar gau — yr ymateb priodol i TorDewisol
Gwlad tarddiadGwlad pob digwyddiad a chyfeiriad drwy GeoLite2; mae’r modiwl ei hun yn diweddaru’r gronfa ddata gan ddefnyddio allwedd drwydded am ddimdangos
Rheolau gwledyddBlocio, atal mynediad at fewngofnodi, hysbysu neu ganiatáu’n benodol — fesul gwlad, heb osodiad diofyn drwy ddewis bwriadoldim
Gwallau ffurfwedduCaiff QNAP, Synology, Exchange-Autodiscover, ActiveSync, WebDAV/CalDAV/CardDAV eu hadnabod, byth eu blocio, a’u rhoi ar restr waith gyda’r canfyddiad a’r parth dan sylwhysbysu
Tocyn fesul cyfeiriadGellir creu tocyn o ganfyddiad os dymunir — un yn union fesul cyfeiriad; caiff tocyn sydd wedi’i gau ei ailagor yn hytrach na chreu copi dyblygi ffwrdd
Tudalennau gofynnol a chasglwyrMae llwybr canonig y dudalen hysbysiad cyfreithiol bob amser ar gael; caiff ymdrechion awtomataidd i roi cynnig ar amrywiadau eraill o’r enw eu hadnabod a gellir eu blocio os dymunirhysbysu
Rhestr ganiatáuCyfeiriadau a rhwydweithiau na chânt byth eu blocio; caiff y rhestr ei llenwi bob dydd o’r wal dân (pen arall cysylltiadau VPN) ac o ystodau cyfeiriadau cyhoeddedig Googlebot a Bingbotymlaen
Cysylltu â chwsmerCaiff digwyddiad o rwydwaith cwsmer ei gysylltu â’r cwsmer hwnnw — ar sail y rhestr ganiatáu, byth drwy ddyfalu â llawymlaen
Parth a dynodwr pob digwyddiadPa wefan y cysylltwyd â hi, a pha User-Agent a ddefnyddiwyd — mae’r ddau ar goll o’r log mynediadymlaen
DadansoddiSiart a thabl colyn ar gyfer pob digwyddiad: fesul patrwm, diwrnod, parth, gwlad a chyfeiriadymlaen
AbwydMae ceisiadau chwilota yn cael ymatebion ffug sy’n cynnwys gwerth caneri; mae unrhyw un sy’n gofyn amdano’n ddiweddarach wedi’u darlleni ffwrdd
Darparu RBLY rhestr flocio fel rhestr syml o gyfeiriadau neu JSON mewn cyfeiriad pwrpasol a ddiogelir gan docyn — ar gyfer HAProxy, OPNsense ac unrhyw wal dân sy’n darllen rhestrau URLymlaen

Mae popeth sy’n dod gyda’r gosodiad hysbysu, i ffwrdd neu Dewisol wedi’i osod felly’n fwriadol: dylai unrhyw un sy’n actifadu bloc wneud hynny am ei fod wedi treulio ychydig ddyddiau’n gweld pwy fyddai’n cael ei ddal ganddo — nid am mai dyna oedd y gosodiad diofyn.

Dadansoddiad Web RBL: digwyddiadau fesul patrwm dros saith diwrnod

Y dadansoddiad: digwyddiadau fesul patrwm dros saith diwrnod. Y bar uchaf yw chwiliadau am ffeiliau .env.

Rhestrau RBL: dull safonol o ddarparu rhestrau blocio

Mae RBL yn sefyll am Real-time Blackhole List. Daw’r term o fyd e-bost, lle mae Spamhaus ac eraill wedi bod yn cyhoeddi rhestrau o gyfeiriadau anfonwyr maleisus ers y nawdegau. Mae’r egwyddor yn hynod syml, a dyna’n union pam ei bod mor gyffredin: un cyfeiriad fesul llinell, ar gael drwy HTTP, a’i ail-lwytho’n rheolaidd. Dim fformat y mae angen ei ddosrannu’n gyntaf, dim rhyngwyneb sy’n gofyn am offeryn.

Gall bron pob wal dân a dirprwy gwrthdro ddarllen rhestr o’r fath a chreu rheolau ohoni. Mae’r gweithgynhyrchwyr yn defnyddio enwau gwahanol amdano, ond mae’r mecanwaith yr un fath ym mhobman:

  • OPNsense a pfSense — URL Table Alias: llwytho rhestr gyfeiriadau drwy HTTP, ei defnyddio fel alias mewn rheolau wal dân, a’i diweddaru bob awr neu bob dydd
  • HAProxy — ffeiliau ACL a Maps: src -f sperrliste.txt mewn rheol http-request deny, y gellir ei hail-lwytho drwy’r API amser rhedeg heb ailgychwyn
  • nginx — modiwl geo â ffeil gyfeiriadau wedi'i chynnwys, neu gyfarwyddiadau deny o ffeil include a gynhyrchir
  • Fortinet FortiGate — External Block List neu Threat Feed: URL y mae'r wal dân yn cael rhestr IP ohono ac yn ei defnyddio mewn polisïau
  • Palo Alto Networks — External Dynamic List (EDL): yr un egwyddor, fel math penodol o wrthrych yn y polisïau diogelwch
  • Check Point — Custom Intelligence Feeds ac IP Block Lists drwy URL
  • Cisco Secure Firewall (Firepower) — Security Intelligence Feeds â ffynonellau rhestrau personol
  • Sophos Firewall — Third-Party Threat Feeds: rhestrau cyfeiriadau o URL fel ffynhonnell ar gyfer rheolau blocio
  • Juniper SRX — Dynamic Address Entries o ffrydiau
  • MikroTik RouterOS — Address Lists, wedi'u llenwi o URL drwy sgript a fetch
  • CrowdSec — rhestrau personol fel ffynhonnell i'r Bouncers ar bob system a gefnogir

Dyma'r union fformat y mae Web RBL yn ei ddefnyddio i ddarparu ei restr flocio. Mae'r wal dân yn gollwng y pecynnau cyn iddynt gyrraedd y gweinydd gwe — ac, ynghyd â nhw, bob ymgais arall o'r un cyfeiriad, er enghraifft at y gweinydd e-bost neu'r porth VPN.

I'r ddau gyfeiriad, ond yn y man cywir

Mae'r dull yn gweithio i'r cyfeiriad arall hefyd: gellir ychwanegu unrhyw restr RBL at Web RBL — URL, lefel, a dyna ni. Mae nodau ymadael Tor, Spamhaus DROP, FireHOL a blocklist.de wedi'u ffurfweddu ymlaen llaw, a gellir ychwanegu rhagor mewn tri chlic. Mae'r modiwl yn rhannu pob rhestr yn ystodau cyfeiriadau ac yn gwirio pob cais yn eu herbyn, mewn ychydig ficroeiliadau.

Serch hynny: mae'n gwneud mwy o synnwyr defnyddio rhestrau allanol ar y wal dân o flaen y gweinydd. Mae tri rheswm dros hyn. Mae'r wal dân yn gweld pob gwasanaeth, nid HTTP yn unig — dylai cyfeiriad ar restr Spamhaus gael ei wrthod gan y gweinydd e-bost a'r VPN hefyd. Mae'n gollwng pecynnau cyn i gysylltiad gael ei sefydlu hyd yn oed, felly nid yw'n rhoi unrhyw faich ar weinydd y rhaglen. A dyma lle mae rhestrau o'r fath yn cael eu cynnal beth bynnag; mae ail gopi yn y rhaglen yn ail le a all fynd yn hen.

Felly beth yw diben y rhestrau yn y modiwl? Gwneud yr hyn na all wal dân ei wneud. Nid yw wal dân yn adnabod ffurflen fewngofnodi. Gall Web RBL wrthod mynediad at y mewngofnodi i gyfeiriad ar restr Tor a dal i weini'r dudalen we — dylai pobl allu darllen yn ddienw; ni ddylent allu rhoi cynnig ar gyfrineiriau yn ddienw. A gall roi gwybod am fewngofnodi llwyddiannus o gyfeiriad ar restr fel digwyddiad amheus. Mae'r ddwy swyddogaeth yn gofyn bod y rhestr yn y man lle mae'r mewngofnodi'n digwydd.

Sgorio yn hytrach na dibynnu ar reddf

Mae cyfeiriad sydd wedi gofyn am /wp-login.php unwaith yn wahanol i un sydd wedi taro tri pharth â phum patrwm gwahanol dros ddau ddiwrnod. Mae Web RBL yn trosi hyn yn sgôr o 0 i 100 — ar sail yr hyn y mae wedi'i weld ei hun, heb wasanaeth allanol a heb anfon ymholiad allan.

Cofnod Web RBL â sgôr o 84 ac esboniad

Un cofnod: 99 trawiad, sgôr o 84, a'r rheswm mewn iaith glir — y patrwm mwyaf difrifol, pum patrwm difrifol gwahanol, dau ddiwrnod o weithgarwch amheus, dros ugain trawiad.

Mae'r sgôr yn penderfynu dau beth. O werth y gellir ei osod ymlaen mae'r mewngofnodi wedi'i wahardd — erys y wefan yn ddarllenadwy, ond ni chaiff y sawl sydd eisoes wedi chwilio am fanylion mewngofnodi gyfle i roi cynnig ar y rhai a ganfuwyd. A chaiff mewngofnodi llwyddiannus o gyfeiriad â sgôr ei adrodd: yna nid dyfalu bellach ond gwybod a wnaeth rhywun. Naill ai roedd y defnyddiwr awdurdodedig ar y ffordd, neu mae'r manylion mewngofnodi wedi diflannu — nid yw'r modiwl yn penderfynu hynny, mae'n ei roi i rywun a all holi. Ni chyffyrddir â'r cyfrinair ei hun mewn unrhyw fodd.

Rhestr flocio Web RBL, wedi'i hidlo i ddangos sgoriau o 40 neu fwy

Y rhestr flocio, wedi'i hidlo i ddangos sgoriau o 40 neu fwy: nifer y trawiadau, diwrnodau o weithgarwch amheus, y parthau dan sylw a'r llwybr diweddaraf ar gyfer pob cyfeiriad.

Beth mae Web RBL yn ei ddiogelu — manylion yr amddiffyniad

1. Mae manylion mewngofnodi'n aros yn gudd

Nid gwendidau yn Odoo y mae'r dosbarth mwyaf o ymosodiadau a fesurwyd yn chwilio amdanynt, ond cyfrinachau a adawyd ar ôl. Dros ddau ddiwrnod ar bymtheg:

  • 57,721 o geisiadau am ffeiliau .env — sy'n cynnwys cyfrineiriau cronfeydd data, allweddi API a chyfrinachau sesiynau
  • 5,535 o geisiadau am ffeiliau ffurfweddu
  • 4,388 o geisiadau am fanylion mynediad i'r cwmwl: credentials.json, service-account.json, firebase-adminsdk.json, rclone.conf, .git-credentials
  • 2.811 o geisiadau am gyfeiriaduron .git — mae pwy bynnag sy'n dod o hyd i un yn lawrlwytho'r cod ffynhonnell cyflawn gyda'r hanes
  • 1,907 o geisiadau am gyfarwyddiadau adeiladu fel .github/workflows/deploy.yml neu .gitlab-ci.yml, sy'n cynnwys cofrestrfeydd ac enwau allweddi

Nid nifer y ceisiadau sy'n bwysig yma, ond nifer y cyfeiriadau gwahanol: daeth ceisiadau am /credentials.json o 98 o gyfeiriadau, ac am /.git-credentials o 92. Nid un sganiwr sydd ar waith, ond cyfres safonol o dechnegau sy'n rhedeg ar draws y byd ar yr un pryd.

2. Mae ymdrechion mewngofnodi'n mynd i'r wal — yn barhaol

Mae gan Odoo ei fecanwaith ei hun i arafu ymdrechion i ddyfalu cyfrineiriau. Mae iddo dri chyfyngiad sydd wedi'u dogfennu yng nghod ffynhonnell Odoo ei hun: mae'r cyfrifydd yng nghof gweithio y broses weithio ac yn cael ei ailosod bob tro y caiff ei hailgychwyn, oedi yn unig y mae yn hytrach na blocio, a dim ond ymdrechion sy'n cyrraedd y gwiriad cyfrinair y mae'n eu cyfrif.

Mae Web RBL yn gweithredu yn yr un mannau, ond yn ysgrifennu i'r gronfa ddata. Mae hynny'n golygu:

  • Mae'r cyfrif yn cael ei gadw ar ôl pob ailgychwyn ac yn berthnasol ar draws pob proses weithio
  • Cofnodir y ddau lwybr: y ffurflen fewngofnodi /web/login a'r rhyngwynebau /xmlrpc/2/common a /jsonrpc
  • Cofnodir hefyd ymdrechion nad ydynt byth yn cyrraedd y gwiriad cyfrinair — er enghraifft, ymdrechion mewngofnodi heb docyn sesiwn dilys
  • Mae ymgais aflwyddiannus i gyrchu'r rheolwr cronfeydd data yn cael ei chyfrif hefyd; dyma'r ymgais fewngofnodi fwyaf difrifol oll

Mae'r trothwy mewngofnodi wedi'i osod ar ddeg, a mesuriad yw'r rheswm: o naw ymgais fewngofnodi aflwyddiannus dros ddau ddiwrnod ar bymtheg, daeth y mwyafrif gan gwsmeriaid a oedd yn sefydlu mynediad eu hunain ar ddyfais arall ac wedi rhoi'r parth anghywir — mewn un achos, eu parth eu hunain, ond â chysylltnod yn lle dot. Felly byddai blocio ar yr ymgais aflwyddiannus gyntaf wedi effeithio ar gwsmeriaid wrth sefydlu mynediad yn hytrach nag ymosodwyr.

Ond mae rhywun sy'n dal i geisio ar ôl i'r gweinydd eisoes ateb “arhoswch am eiliad” yn cael ei flocio ar unwaith. Bydd person yn darllen y neges hon ac yn aros; rhaglen sy'n ei hanwybyddu. Mae patrwm penodol â throthwy o sero yn dal yr union achos hwn, ac ni all effeithio ar gydweithiwr: dim ond rhywun sydd eisoes wedi methu ddeg gwaith ac yna'n dal ati sy'n cyrraedd y fan honno.

3. Nid yw'r ymosodiad yn rhoi baich ar y gweinydd mwyach

Cyn gosod y modiwl, roedd chwiliedydd at lwybr fel /@fs/../../.env yn gostus: mae Odoo yn chwilio am y dudalen wall, yn ei rendro, yn baglu dros y segmentau dot wrth lunio'r cyfeiriad, ac yna'n methu â chreu tudalen wall y dudalen wall hefyd. Dau gofnod stac am bob chwiliedydd. Mesurwyd 28,401 o wallau o'r fath dros ddau ddiwrnod ar bymtheg, ynghyd â 9,467 o wallau dilynol.

Mae Web RBL yn ymyrryd yn ir.http._match, hynny yw, cyn y llwybro. Cynhyrchir yr ymateb heb dempled, heb gyrchu'r gronfa ddata y tu hwnt i'r gwiriad blocio, a heb linell yn y log. Mae'r gwiriad yn erbyn y rhestr ganiatáu, y rhestrau bygythiadau a'r rheolau gwledydd yn rhedeg o'r storfa dros dro drwy ystodau cyfeiriadau wedi'u didoli — ychydig ficroeiliadau, hyd yn oed gyda dros ddeng mil ar hugain o ystodau.

4. Mae'r wal dân yn cau'r drws ar yr ymosodwr cyn iddo gyrraedd

Cyhoeddir y rhestr rwystro fel rhestr RBL y mae HAProxy a OPNsense yn ei darllen yn uniongyrchol. Felly nid yw'r ymosodwr yn cyrraedd y gweinydd gwe mwyach o gwbl — na gwasanaeth arall ar y gwesteiwr hwnnw. Mae mynediad a adnabuwyd unwaith yn faleisus yn amddiffyn felly yn ôl-weithredol y peiriant cyfan.

Tair lefel: blocio, cyfrif, hysbysu

Nid ymosodiad yw pob cais sy'n mynd i'r wal. Felly mae Web RBL yn gwahaniaethu rhwng tair lefel, a gellir newid y lefel ar gyfer pob patrwm heb gyffwrdd â'r cod.

LefelY cais sy'n ei sbardunoY canlyniad i'r cyfeiriad
blocioyn cael ei wrthodwedi'i flocio am 24 awr, ac yn barhaol ar ôl tri diwrnod o weithgarwch amheus
cyfrifyn cael pasio drwoddyn cael ei gofnodi yn unig, dim blocio
hysbysuyn cael pasio drwoddyn cael ei gofnodi â disgrifiad o'r canfyddiad, byth yn cael ei flocio

Mae pedwaredd lefel ar gyfer rhestrau bygythiadau a gwledydd: dim mynediad at fewngofnodi. Mae'r wefan yn dal yn ddarllenadwy, ond mae'r ffurflen fewngofnodi a'r rhyngwynebau ar gau. Dyma'r llwybr canol ar gyfer unrhyw beth amheus nad yw o reidrwydd yn faleisus — Tor, ystod cyfeiriadau canolfan ddata, gwlad heb gwsmeriaid.

Pa ymosodiadau sy'n cael eu canfod

Mae pob patrwm wedi'i brofi yn erbyn traffig go iawn. Dangosir nifer y cyfeiriadau gwahanol wrth ei ochr yn fwriadol — mae'n dangos a yw patrwm yn dal un sganiwr neu ddull gweithredu cyffredin.

Dosbarth ymosodiadCeisiadauCyfeiriadau
Dwyn data .env57.721223
Chwiliedyddion PHP12.237256
Tramwyo llwybrau at darged gwerth chweil10.04664
Ffeiliau ffurfweddu5.535114
Allweddi mynediad i'r cwmwl4.388152
Chwiliedyddion WordPress3.366385
Dwyn data .git2.811255
Archwilio Odoo (rheolwr cronfeydd data, ymholiad fersiwn)2.500213
Cadwyni offer deallusrwydd artiffisial a gweithredu gorchmynion (/mcp, /api/fs/exec)2.45074
Cyfarwyddiadau adeiladu (CI/CD)1.90788
Pwyntiau terfyn GraphQL1.87871

Mae'r dosbarth mwyaf newydd yn drawiadol. Gofynnwyd am /api/fs/exec 369 o weithiau gan 54 o gyfeiriadau gwahanol — nid mynediad i ddarllen yw hyn, ond ymgais i weithredu gorchmynion. Nid oedd targedau o'r fath yn bodoli ddwy flynedd yn ôl; maent yn deillio o ryngwynebau offer deallusrwydd artiffisial newydd a chiwiau tasgau. Ni fydd amddiffyniad sy'n canolbwyntio ar WordPress a PHP yn unig yn gweld dim o hyn. Mae'r dosbarth hwn felly'n cael pwysau mawr yn y sgôr.

Rhestrau bygythiadau a gwlad tarddiad

Rhestrau bygythiadau Web RBL: Tor, Spamhaus DROP, FireHOL, blocklist.de

Pedair rhestr, 32,851 o ystodau cyfeiriadau, pob un wedi'i osod ar “hysbysu yn unig”. Dim ond cyfeiriad a lefel sydd eu hangen ar gyfer pob rhestr ychwanegol.

Honiad gan rywun arall yw rhestr allanol, ar sail rhesymau nad ydym yn eu gwybod, am draffig nad ydym erioed wedi'i weld. Gall fod yn anghywir, yn hen neu wedi'i bwriadu at ddiben arall: mae blocklist.de yn casglu'n bennaf gyfeiriadau sydd wedi ceisio dyfalu manylion mewngofnodi SSH mewn mannau eraill, ac nid yw hynny'n dweud llawer am weinydd gwe. Dyna pam mae Web RBL yn cadw rhestrau allanol ar wahân i'w restr flocio ei hun, a dyna pam mai hysbysu yw'r rhagosodiad. Ac mae'r rhestr ganiatáu leol bob amser yn cael blaenoriaeth: mae cwsmer rydym yn ei adnabod yn cyfrif am fwy na barn trydydd parti.

Mae'r wlad tarddiad ynghlwm wrth bob trawiad a phob cyfeiriad. Ar gyfer asesu mae'n anhepgor — mae ymgais mewngofnodi o'r wlad ei hun am ddeg o'r gloch y bore yn wahanol i un o wlad heb yr un cwsmer. Ar gyfer cloi allan yn llwyr mae'n cyfrif am ychydig, ac mae ein ffigurau ein hunain yn dweud hynny: Daeth yr ymosodwyr yn ein rhestr yn bennaf o ardaloedd cwmwl yng Ngwlad Belg, Ffindir a'r Iseldiroedd. Ni fyddai rhwystr ar bopeth y tu allan i'r ardal Almaeneg ei hiaith wedi eu taro — ond byddai wedi taro cyflogeion ein hunain ar wyliau a chwsmeriaid ar deithiau busnes.

Rheolau gwledydd Web RBL: yn wag wrth eu cyflenwi, gydag esboniad

Mae rheolau gwledydd yn wag wrth eu cyflenwi, ac mae'r wedd yn esbonio pam.

Rhoi gwybod am wallau ffurfweddu yn hytrach na blocio

Nid ymosodiad nac ymwelydd yw'r achos mwyaf cyffredin mewn traffig go iawn, ond meddalwedd ddiffygiol sy'n camgymryd y gweinydd gwe am rywbeth arall:

  • 1,367 o alwadau i ryngwyneb gwe QNAP NAS — cleient cysoni nad yw ei darged yn gywir mwyach. Gwnaeth un cysylltiad yn unig 962 o geisiadau.
  • 65 o ymholiadau Autodiscover — Outlook sy'n camgymryd y parth gwe am ei weinydd Exchange

Nid yw cyfeiriadau o'r fath byth yn cael eu blocio. Nid yw blocio'n trwsio'r diffyg, ond yn ei guddio — ac yn effeithio ar y person y mae ei ddyfais eisoes wedi'i ffurfweddu'n anghywir. Yn lle hynny, crëir cofnod â disgrifiad o'r canfyddiad a'r parthau dan sylw, a gellir ei droi'n docyn yn awtomatig os dymunir: un yn union i bob cyfeiriad. Os caiff ei gau a bod y cyfeiriad yn tynnu sylw eto, mae'r un tocyn yn ailagor yn hytrach na chreu ail un.

Canfyddir cleientiaid QNAP, Synology, Exchange-Autodiscover ac ActiveSync, yn ogystal â WebDAV, CalDAV a CardDAV. Mae'r patrymau'n nodi enwau ffeiliau a chyfeiriaduron penodol, byth estyniadau yn unig: yn yr un cyfeiriadur /cgi-bin/, mae galwadau cysoni diniwed yn union wrth ymyl chwiliedyddion clasurol fel printenv.pl.

Y rhestr ganiatáu: cyfeiriadau na chânt byth eu blocio

Nid yw pris camgymeriad yr un fath ar gyfer pob cyfeiriad. Gyda sganiwr o ganolfan ddata nid yw larwm ffug yn costio dim. Gyda y pen arall i dwnnel safle, mae'n costio'r safle.

Dyna pam mae ail restr sy'n cael blaenoriaeth dros y gyntaf: cyfeiriadau a rhwydweithiau na chânt byth eu blocio. Nid yw'n tawelu dim — mae'r cyfeiriadau arni'n dal i gael eu gwirio a'u cofnodi; dim ond y canlyniad sy'n cael ei hepgor. Dyna'r gwahaniaeth rhyngddi ac eithriad yn y wal dân: mae hwnnw'n eich dallu, ond mae hon yn eich gwneud yn amyneddgar.

Caiff ei llenwi bob dydd o ddwy ffynhonnell: o'r wal dân ei hun, gyda phob pwynt cysylltu VPN, fel nad yw twnnel newydd yn dibynnu ar rywun yn cofio am y rhestr flocio — ac o ystodau cyfeiriadau cyhoeddedig Google a Microsoft ar gyfer eu cropwyr. Dyma'r unig ffordd o wahaniaethu rhwng Googlebot go iawn a sganiwr sy'n defnyddio'r enw. Ni ddylid byth flocio peiriannau chwilio; mae gwneud hynny'n tynnu'ch gwefan o'r mynegai heb ffordd yn ôl.

Mae un rheol yn bwysicach na'r cysoni ei hun: nid yw ymateb gwag byth yn dileu dim. Os nad yw'r ffynhonnell yn ymateb, neu os yw'r ymateb yn wag neu'n annealladwy, nid yw'r rhestr yn newid. Gall rhestr ganiatáu sy'n gwagio'i hun pan fydd nam daro pob twnnel ar yr eiliad waethaf bosibl.

Os oes cwsmer wedi'i nodi ar gofnod yn y rhestr ganiatáu, priodolir pob trawiad o'i rwydwaith iddo. Felly mae rhywun i gysylltu ag ef ar unwaith ynghylch gwall ffurfweddu, heb i neb orfod chwilio am gyfeiriadau.

Gwybodaeth orfodol a chasglwyr data awtomataidd

Nid tudalen arferol yw'r dudalen manylion cyfreithiol. Rhaid iddi aros yn hygyrch i bobl, oherwydd byddai ei blocio'n creu'r union achos o dorri'r rheolau y mae casglwr yn chwilio amdano. Ar yr un pryd, dyma'r dudalen sy'n cynnwys enw a chyfeiriad — ac felly'n darged i gasglu awtomataidd.

Yn ystod y don o rybuddion cyfreithiol yn Awstria ynghylch ffontiau Google wedi'u mewnblannu, dangosodd y logiau nad ymweliadau unigol oedd sail y llythyrau, ond ymgyrch awtomataidd eang: gwesteiwyr gwahanol, digyswllt, wedi'u cyrchu o fewn milieiliadau i'w gilydd.

Mae Web RBL yn datrys hyn drwy ostwng y lefel yn hytrach na gwneud eithriad. Nid yw'r llwybr canonaidd /impressum yn cyfateb i unrhyw batrwm ac mae bob amser yn hygyrch. Mae ffurfiau eraill fel /impressum.php — na allant fodoli ar wefan Odoo — yn sbarduno hysbysiad, a gall unrhyw un nad yw am ganiatáu casglu awtomataidd newid un paramedr. Mae sitemap a robots wedi'u heithrio o hyn ac ni ellir eu blocio o gwbl: nid ydynt yn cynnwys unrhyw wybodaeth bersonol, a'u nôl yw gwaith pob cropwr peiriant chwilio.

Parth a dynodwr: beth sydd ar goll o'r log mynediad

Nid yw log mynediad werkzeug yn cofnodi'r gwesteiwr y cysylltwyd ag ef na dynodwr y cleient sy'n gwneud y cais. Mae Odoo wrth gwrs yn derbyn y ddau — heb y gwesteiwr, ni allai ddewis y wefan gywir pan fo sawl un. Ond nid oes modd edrych ar y wybodaeth wedyn.

Mae Web RBL yn cofnodi'r ddau ar gyfer pob trawiad. Mae hyn yn ateb dau gwestiwn na ellid eu hateb fel arall: pa wefan y mae ffurfweddiad anghywir yn cysylltu â hi — ac felly pa gwsmer sy'n berchen ar y parth — ac a yw cyfeiriad yn ymweld ag un wefan neu bob un. Mae ceisiadau at sawl parth digyswllt o'r un cyfeiriad yn nodweddiadol o ymgyrch eang, ac maent yn codi'r sgôr.

Dangosodd dadansoddiad ar un o'n gwefannau faint o wahaniaeth y mae'r dynodwr yn ei wneud: roedd dros saith deg y cant o'r holl draffig yno'n dod o un cleient, wedi'i wasgaru dros fwy na chant o gyfeiriadau. Heb y dynodwr, byddai wedi edrych fel sgrapiwr gwasgaredig. GPTBot ydoedd, cropwr OpenAI — roedd yn gofyn am robots.txt dro ar ôl tro ac yn ymddwyn yn gwbl briodol.

Yr agweddau diogelwch yn fanwl

1. Adnabod y dirprwy — y man mwyaf peryglus oll

Os yw Odoo yn rhedeg y tu ôl i ddirprwy gwrthdro a bod proxy_mode wedi'i osod yn anghywir, mae'r modiwl yn gweld yr un cyfeiriad ar bob cais: cyfeiriad y dirprwy. Byddai blocio wedyn yn cau pob ymwelydd allan ar yr un pryd.

Dyna pam mae Web RBL yn gwirio cyn pob cam blocio fod y cyfeiriad wedi'i bennu'n ddibynadwy. Mae'n mynnu bod proxy_mode wedi'i osod ynghyd â phennyn anfon ymlaen, yn gwrthod gweithredu os daw cais wedi'i anfon ymlaen heb proxy_mode, ac yn gwrthod hefyd os oes mwy nag un dirprwy rhyngol. Os oes amheuaeth, ni chaiff dim ei flocio.

2. Byth rwydweithiau eich hun

Mae ystodau cyfeiriadau preifat, Loopback, Link-Local a CGNAT wedi'u heithrio'n barhaol. Ni allant fynd ar y rhestr o dan unrhyw amgylchiadau, hyd yn oed â llaw. Mae'r un peth yn wir am restrau allanol: caiff ystodau preifat a neilltuedig, yn ogystal â rhwydweithiau afresymol o fawr, eu gwrthod wrth eu darllen.

3. Rhaid i wall yn y modiwl beidio â chwalu'r wefan

Mae'r gwiriad cyfan yn rhedeg o fewn mecanwaith diogelu sy'n dal pob gwall. Caiff unrhyw beth sy'n mynd o'i le yma ei logio, ac mae'r cais yn parhau heb ei newid. Mae modiwl diogelu sy'n chwalu'r wefan oherwydd ei wall ei hun yn waeth na dim modiwl o gwbl. Hefyd, mae pob ymholiad wrth brosesu cais yn rhedeg heb ddefnyddio iaith porwr yr ymwelydd a heb ddidoli yn ôl meysydd wedi'u cyfieithu — ni ddylai ymwelydd sy'n defnyddio iaith nad yw wedi'i gosod beri i'r gwiriad fethu.

4. Arsylwi cyn blocio

Ar ôl gosod, mae blocio cyfeiriadau ar y rhestr ar gyfer ceisiadau arferol wedi'i ddiffodd. Caiff chwiliedyddion eu gwrthod a'u cofnodi, ond mae popeth arall yn cael pasio drwodd. Mae hyn yn caniatáu arsylwi am ychydig ddyddiau i weld pwy sy'n mynd ar y rhestr mewn gwirionedd cyn cau unrhyw un allan. Mae'r un peth yn wir am ganfod ymddygiad, rhestrau bygythiadau a rheolau gwledydd: hysbysu yn gyntaf, blocio ar ôl adolygu.

5. Patrymau manwl yn hytrach na rhwydi eang

Mae camadnabod ymwelydd yn fwy costus na methu â sylwi ar chwiliedydd. Felly mae gan bob patrwm ei lefel ei hun, a gellir ei newid ar gyfer pob patrwm. Anaml y mae estyniad ffeil ar ei ben ei hun yn ddigon: yn achos .php, mae 14,012 o chwiliedyddion go iawn yn erbyn llond llaw o hen ddolenni; yn achos .asp, mae'r gymhareb i'r gwrthwyneb. Dylai penderfyniadau o'r fath fod yn seiliedig ar fesur, nid dyfalu.

6. Mae caniatâd a roddir â llaw yn aros mewn grym

Roedd gan y person a ganiataodd gyfeiriad reswm dros wneud hynny. Nid yw trawiad arall yn dirymu'r penderfyniad hwnnw'n ddistaw.

7. Mae'r rhestr wedi'i diogelu, ond nid yw'n gyfrinach

Mae angen tocyn ar y pwynt terfyn, ac os nad oes tocyn dilys, mae'n ymateb gyda 404, yn hytrach na 403 — felly nid yw hyd yn oed yn cadarnhau bod y cyfeiriad yn bodoli. Mae'r gymhariaeth yn cymryd yr un faint o amser bob tro. Nid yw'r rhestr ei hun yn cynnwys dim cyfrinachol: mae'n cynnwys cyfeiriadau sydd wedi cysylltu â ni o'u gwirfodd.

8. Dim cyfrinachau yn y cofnodion

Pan fydd mewngofnodi'n methu, cofnodir yr enw defnyddiwr a ddefnyddiwyd, ond byth y cyfrinair. Yn achos y rheolwr cronfeydd data, ni ddarllenir dim o gwbl o'r gwerthoedd a gyflwynir: y prif gyfrinair sydd gyntaf yno, a bydd cofnod mewn rhestr rwystro yn mynd i bob copi wrth gefn o'r gronfa ddata. Dim ond ym mharamedr y system y cedwir allwedd drwydded GeoLite2, ac nid mewn unrhyw gofnod log.

9. Nid yw'r abwyd yn datgelu dim y gellir ei ddefnyddio

Fel opsiwn, gall Web RBL ymateb i brofion chwilota â chynnwys ffug sy'n cynnwys gwerth caneri unigryw. Mae unrhyw un sy'n gofyn am y gwerth hwn yn ddiweddarach wedi darllen yr ymateb ffug ac wedi gweithredu arno — ni all hyn fod yn larwm ffug. Nid yw'r abwyd yn cynnwys gwybodaeth y gellir manteisio arni, llwybrau go iawn na manylion mewngofnodi dilys. Daw'r nodwedd hon wedi'i diffodd yn ddiofyn, gan ei bod yn newid yr ymddygiad mewn ffordd sy'n weladwy o'r tu allan.

Yr hyn na all y modiwl ei wneud

Nid yw'n cymryd lle wal dân na wal dân cymwysiadau gwe. Mae'n adnabod patrymau chwilota hysbys mewn llwybrau, ymdrechion mewngofnodi aflwyddiannus ac ymddygiad amheus — ond nid ymosodiadau ar ffurflenni nac ymdrechion i chwistrellu cod mewn paramedrau.

Ar ben hynny, dim ond yr hyn sy'n dod yn ôl drwy HTTP y mae'n ei weld. Ni all weld beth mae ymosodwr yn ei wneud â manylion mynediad wedi'u dwyn ar gyfer cronfa ddata neu flwch post — a dyna'n union pam mai llwybrau yw'r gwerthoedd caneri, yn hytrach na manylion mewngofnodi.

Ac nid yw'n cymryd lle gofal: nid yw modiwl sy'n gwrthod profion chwilota .env yn gwneud ffeil .env a ddatgelwyd yn ddamweiniol yn ddiogel.

Argaeledd

Mae Web RBL ar gael i'r cyhoedd o dan AGPL-3, ac rydym yn ei ddefnyddio mewn amgylchedd cynhyrchu ar bum gwefan:

github.com/Alex0176/odoo-web-rbl

Mae'r modiwl yn gofyn am Odoo 19 Community ac nid oes ganddo unrhyw ddibyniaethau heblaw base a web. Mae'r cysylltiad â system docynnau yn ddewisol ac nid oes angen system docynnau benodol arno; heb un, nid oes dim yn digwydd. Mae angen cronfa ddata GeoLite2 am ddim gan MaxMind i bennu'r wlad wreiddiol; os nad yw ar gael, mae'r maes yn aros yn wag ac mae popeth arall yn gweithio fel arfer.

Darllen pellach: Sut mae Web RBL yn ffitio mewn pensaernïaeth ddiogelwch gyflawn -- ynghyd â wal dân, dilysu dau ffactor a chaniatadau, gan gynnwys canllaw cam wrth gam: Cyfuno elfennau pensaernïaeth ddiogelwch Odoo 19 yn gywir.

Rydym yn croesawu cwestiynau, sylwadau ac adroddiadau am wallau — yn ddelfrydol fel Issue ar GitHub.