Pam mae cod un-defnydd dilys yn dal i fethu wrth fewngofnodi i VPN
Cod a wrthodwyd fel arfer yw problem â threfn yr anogiad, y cofrestriad neu'r amser, nid cod anghywir. Gwiriwch y rhain yn nhrefn cyn ailgofrestru unrhyw beth.
Rydych yn agor y cleient VPN, yn teipio'r cyfrinair, ac mae'r chwe digid o'ch dilysydd yn dychwelyd fel rhai annilys — ddwywaith, yna drydedd waith. Nid oes unrhyw beth wedi newid ar y cyfrif ers ddoe, felly'r reddf yw dileu'r cofnod yn y dilysydd a'i sganio eto — fel arfer y gwaith atgyweirio anghywir. Nid yw cod un-defnydd yn ail gyfrinair: rhaid i'r porth ofyn amdano mewn cam penodol, o gofnod cofrestredig penodol, o fewn ffenestr benodol, ac mae'r rhan fwyaf o'r gwrthodiadau'n digwydd cyn i'r digidau gael eu cymharu. Darganfyddwch pa gam rydych ynddo cyn cyffwrdd â'r cofrestriad.
Mae trefn yr anogiad yn dweud pa lif rydych ynddo
Mae tair siâp yn cwmpasu bron pob mewngofnodi VPN sy'n cynnwys cod. Yn y siâp dau-gam mae'r cleient yn anfon y cyfrinair, mae'r gweinydd yn cyhoeddi her, ac mae'r cleient yn gofyn eto. Yn y siâp cyfunol mae'r porth eisiau cyfrinair a chod mewn un cyflwyniad — weithiau wedi'u cysylltu, weithiau ar ôl gwahanwr nad yw ond yr gweithredwr yn ei ddogfennu. Yn siâp y porwr nid oes gan y cleient faes o gwbl: mae'r cod yn mynd i dudalen we, neu mae cymeradwyaeth gwthio yn ei le, ac mae'r cleient bwrdd gwaith yn aros am y canlyniad.
Mae cael y siâp yn anghywir yn edrych fel cod drwg. Gludwch god ffres i faes ar gyfer cyfrinair yn unig a bydd'r gweinydd yn ei ddarllen fel rhan o'r cyfrinair. Ar ochr y cleient, mae OpenVPN 2.4 a diweddarach yn gwneud y gwahaniaeth yn weladwy: mae gweinydd sy'n ateb ag AUTH_FAILED,CRV1: yn disgwyl ymateb i her, felly mae ar y proffil angen static-challenge neu ffeil gyfrinair ar ffurf SCRV1:. Mae proffil hŷn sy'n cario auth-user-pass yn unig yn dilysu'r cyfrinair ac yna'n stopio, sy'n edrych fel methiant OTP yn y log er na anfonwyd cod.
Mae WireGuard yn werth ei enwi fel yr eithriad: mae'n dilysu parau allwedd, nid pobl, felly nid oes maes ar gyfer cod. Os yw darparwr yn hysbysebu un, rhywbeth y tu allan i'r tiwnel sy'n ei dderbyn.
Beth mae'r gweinydd yn ei wneud â'r chwe digid
Mae codau amser-seiliedig yn dilyn RFC 6238, sy'n lapio'r gystrawen hŷn sy'n seiliedig ar gyfrifydd o RFC 4226: HMAC dros ffactor symudol, wedi'i dorri i chwe digid yn ddiofyn. Ar gyfer TOTP y ffactor symudol yw amser Unix cyfredol wedi'i rannu â cham, 30 eiliad oni bai bod y gweithredwr wedi'i newid. Nid yw'r dilysydd byth yn cymharu eich digidau â gwerth wedi'i storio; mae'n ailgyfrifo'r cod disgwyliedig o'r hedyn a rennir ac fel arfer yn derbyn y camau cyfagos hefyd, felly nid yw taith gron araf yn methu'r mewngofnodi.
Mae dau ganlyniad yn cael eu colli. Nid yw cylchfa amser y ffôn yn berthnasol, oherwydd nad yw'r hedyn byth yn gweld cloc lleol — dim ond y gwyriad oddi wrth UTC go iawn sy'n cyfrif, ac mae set law sy'n rhedeg dau funud yn gyflym yn methu pob cod tra'n dangos cyfrif i lawr glân. Ac mae cod yn un-defnydd yn ôl y cynllun: mae'r dilysydd yn cofio'r gwerth cyfrifydd olaf a dderbyniodd ar gyfer yr hedyn hwnnw, felly gwrthodir yr un digidau a gyflwynir eto hyd yn oed o fewn yr un ffenestr. Gall cleient sy'n ceisio eto ar ôl terfyn amser losgi'r cod a anfonodd yn union o'r blaen.
Mae tocynnau sy'n seiliedig ar gyfrifydd yn symud eu cyfrifydd gyda phob gwasgiad, felly maent yn mynd allan o gydamseriad ar ôl i godau gael eu cynhyrchu ond byth eu hanfon; yr atgyweiriad arferol yw ffenestr ailsymud sy'n derbyn ychydig o werthoedd ymlaen. Os cofrestrodd y gweithredwr HOTP a bod eich ap yn dangos TOTP, mae pob gwerth yn anghywir mewn ffordd sy'n edrych fel problem gloc. Mae URI darparu y tu ôl i'r cod QR yn enwi'r math, y digidau, y cyfnod a'r hash.
Methiannau sy'n edrych fel cod anghywir
Y cofnod cofrestredig yw'r tramgwyddwr mwyaf cyffredin. Mae apiau dilysu yn labelu cofnodion yn ôl cyhoeddwr a chyfrif, felly gall unrhyw un sydd â dau hunaniaeth ar yr un VPN orffen â dau gofnod y mae eu labeli'n gwahaniaethu gan un nod. Mae cod yn ddilys ar gyfer yr hedyn a'i cynhyrchodd ac nid ar gyfer unrhyw beth arall. Cymharwch y label ar y ffôn â'r enw defnyddiwr y mae'r gweinydd yn ei gofnodi, nid â'r hyn rydych yn cofio'i deipio.
Yn ail, set o baramedrau nad ydynt yn cyd-fynd. Mae hedyn a gofrestrwyd ag wyth digid, cyfnod o 60 eiliad neu SHA-256 yn cynhyrchu codau y mae dilysydd sy'n disgwyl chwe digid, 30 eiliad a SHA-1 yn eu gwrthod, ac i'r cleient nid yw hynny'n wahanol i god anghywir. Mae'n ymddangos ar ôl ymfudo lle cafodd y cofnod ei ychwanegu eto o lun o'r cod QR, neu lle cafodd y cofnod tocyn ei ailadeiladu gyda gwerthoedd diofyn.
Yn drydydd, nid yw'n ymwneud â'r cod. Mae porthladdoedd fel arfer yn dychwelyd un methiant dilysu cyffredinol ar gyfer cyfrinair gwael, cod sydd wedi dod i ben a chyfrif anabl, yn fwriadol, fel na all neb archwilio pa ffactor a fethodd. Darllenwch log y porth neu RADIUS yn lle baner y cleient: mae her na chyhoeddwyd erioed, gwrthodiad mynediad heb briodwedd OTP a gwadiad polisi i gyd yn ymddangos yn unfath ar y sgrin ac yn arwain at gamau nesaf gwahanol.
Dilyniant byr sy'n culhau'r peth
Dechreuwch gyda'r gwiriad rhataf a stopiwch yn y cam cyntaf nad yw'n dal.
- Arhoswch am god ffres, cyflwynwch ef unwaith, a nodwch a yw'r her yn ymddangos cyn neu ar ôl i'r cyfrinair gael ei dderbyn.
- Cytunwch y label yn y dilysydd â'r enw defnyddiwr y mae'r gweinydd yn ei storio.
- Cadarnhewch fod y proffil yn gallu ateb her o gwbl, fel yng nghas
CRV1uchod. - Cymharwch gloc y ddyfais â ffynhonnell amser hysbys; mae gwyriad dros ychydig ddwsinau o eiliadau yn torri TOTP ar ei ben ei hun.
- Gofynnwch i'r gweithredwr ai TOTP neu HOTP yw'r tocyn, a pha ddigidau, cyfnod a hash a gofrestrwyd.
Mae dwy reol yn atal hyn rhag gwneud pethau'n waeth. Peidiwch ag ailgeisio llawer o weithiau: mae digon o borthladdoedd yn cyfrif methiannau fesul cyfrif ac naill ai'n ei gloi neu'n dechrau gohirio ymatebion, felly mae ffrwydrad yn troi camgymeriad bach mewn ffurfweddiad yn docyn cymorth. Ac na ailgofrestrwch y tocyn fel diagnosis, oherwydd mae hynny'n annilysu'r hen hedyn; os mai'r bai go iawn oedd her na anfonodd y cleient erioed, nawr mae gennych ddau newid i ymresymu amdanynt yn lle un.
Cadwch yr hedyn a'r codau adfer allan o'r cylch
Nid yw'r chwe digid a'r gyfrinach y tu ôl iddynt yn gyfnewidiol. Mae cod QR darparu neu hedyn Base32 yn cynhyrchu pob cod yn y dyfodol ar gyfer y cyfrif, felly mae'n perthyn i'r un categori â'r cyfrinair: nid mewn ciplun, nid mewn sylw tocyn, nid mewn sgwrs â rhywun a gysylltodd â chi gyntaf. Mae codau adfer yn fecanwaith ar wahân — un-defnydd, yn aml yn hepgor yr anogiad cod yn gyfan gwbl, ac mae gwario un i brofi'r cyfrif yn dileu ffordd gefn y gallech fod ei hangen yn ddiweddarach.
Nid yw cod chwaith yn gwneud tudalen fewngofnodi yn un y gellir ymddiried ynddi: mae anogiad OTP ar barth tebyg yn casglu cod dilys ac yn ei ailchwarae o fewn y ffenestr, a'r dystysgrif yw'r peth sy'n dweud wrthych ble rydych yn teipio.
Os daw'r dilyniant i broffil na all ateb her, trwsiwch y proffil a phrofwch eto ag un cod ffres. Os daw i baramedrau cofrestru nad ydynt yn cyd-fynd, gofynnwch i'r gweithredwr ddarllen y cofnod tocyn cyn i unrhyw un sganio unrhyw beth. Os daw i glo, arhoswch iddo basio yn lle newid cleientiaid — cyflwr y cyfrif yw'r rhwystr, nid yr ap.