Серверийн бүртгэлээр дамжуулан нууц мессеж солилцох

Википедиагийн тодорхойлолтоор үхсэн дусал нь нууц байршлыг ашигладаг хүмүүсийн хооронд мэдээлэл эсвэл зарим зүйлийг солилцох зорилготой хуйвалдааны хэрэгсэл юм. Хүмүүс хэзээ ч уулздаггүй гэсэн санаа юм - гэхдээ тэд үйл ажиллагааны аюулгүй байдлыг хангахын тулд мэдээлэл солилцдог.

Нуугдсан газар нь анхаарал татахгүй байх ёстой. Тиймээс, офлайн ертөнцөд тэд ихэвчлэн нууцлаг зүйлсийг ашигладаг: ханан дахь сул тоосго, номын сангийн ном эсвэл модны хөндий.

Интернет дээр шифрлэх, нэрээ нууцлах олон хэрэгсэл байдаг боловч эдгээр хэрэгслийг ашиглах нь анхаарал татдаг. Нэмж дурдахад тэдгээрийг корпораци эсвэл засгийн газрын түвшинд хааж болно. Юу хийх вэ?

Хөгжүүлэгч Райан Флоуэрс нэгэн сонирхолтой сонголтыг санал болгов. ямар ч вэб серверийг нуугдах газар болгон ашиглах. Хэрэв та бодож байгаа бол вэб сервер юу хийдэг вэ? Хүсэлтийг хүлээн авч, файл гаргаж, лог бичнэ. Мөн энэ нь бүх хүсэлтийг бүртгэдэг, бүр буруу!

Ямар ч вэб сервер нь бүртгэлд бараг бүх мессежийг хадгалах боломжийг олгодог. Цэцэг үүнийг хэрхэн ашиглах талаар гайхаж байв.

Тэрээр энэ сонголтыг санал болгож байна:

  1. Текст файл (нууц мессеж) аваад хэшийг (md5sum) тооцоол.
  2. Бид үүнийг кодчилдог (gzip+uuencode).
  3. Бид серверт санаатайгаар буруу хүсэлтийг ашиглан бүртгэлд бичдэг.

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

Файлыг уншихын тулд та эдгээр үйлдлүүдийг урвуу дарааллаар гүйцэтгэх хэрэгтэй: файлыг тайлж, задлах, хэшийг шалгах (хэшийг нээлттэй сувгуудаар аюулгүйгээр дамжуулах боломжтой).

Орон зайг -ээр сольсон =+=Ингэснээр хаяг дээр хоосон зай байхгүй болно. Зохиогчийн CurlyTP гэж нэрлэдэг програм нь имэйлийн хавсралт гэх мэт base64 кодчилолыг ашигладаг. Хүсэлтийг түлхүүр үгээр хийдэг ?transfer?Ингэснээр хүлээн авагч үүнийг бүртгэлээс хялбархан олох боломжтой.

Энэ тохиолдолд бүртгэлээс бид юу харж байна вэ?

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"

Өмнө дурьдсанчлан, нууц мессеж хүлээн авахын тулд та урвуу дарааллаар үйлдлүүдийг хийх хэрэгтэй.

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

Процессыг автоматжуулахад хялбар байдаг. Md5sum таарч байгаа бөгөөд файлын агуулга нь бүх зүйлийг зөв тайлсан болохыг баталж байна.

Арга нь маш энгийн. "Энэ дасгалын гол зорилго нь зүгээр л гэм зэмгүй жижиг вэб хүсэлтээр файлуудыг шилжүүлж болно гэдгийг батлах явдал бөгөөд энэ нь энгийн текст лог бүхий ямар ч вэб сервер дээр ажилладаг. Үндсэндээ вэб сервер бүр нуугдах газар юм!” гэж Flowers бичжээ.

Мэдээжийн хэрэг, энэ арга нь зөвхөн хүлээн авагч серверийн бүртгэлд хандах боломжтой тохиолдолд л ажиллана. Гэхдээ ийм хандалтыг жишээлбэл, олон хостууд олгодог.

Үүнийг хэрхэн ашиглах вэ?

Райан Флоуэрс өөрийгөө мэдээллийн аюулгүй байдлын мэргэжилтэн биш бөгөөд CurlyTP-ийн боломжит хэрэглээний жагсаалтыг гаргахгүй гэжээ. Түүний хувьд энэ нь бидний өдөр тутам харж байгаа танил хэрэгслүүдийг уламжлалт бус аргаар ашиглаж болно гэдэг ойлголтын л баталгаа юм.

Үнэн хэрэгтээ энэ арга нь бусад серверээс "нуух" олон давуу талтай Digital Dead Drop буюу PirateBox: энэ нь серверийн талд тусгай тохиргоо эсвэл ямар нэгэн тусгай протокол шаарддаггүй бөгөөд замын хөдөлгөөнийг хянадаг хүмүүсийн дунд сэжиг төрүүлэхгүй. SORM эсвэл DLP систем нь шахсан текст файлын URL-уудыг сканнердах магадлал багатай юм.

Энэ нь үйлчилгээний файлуудаар дамжуулан мессеж дамжуулах арга замуудын нэг юм. Зарим дэвшилтэт компаниуд хэрхэн байрлуулж байсныг санаж байна HTTP толгой хэсэгт хөгжүүлэгчийн ажлын байр эсвэл HTML хуудасны кодонд.

Серверийн бүртгэлээр дамжуулан нууц мессеж солилцох

Энгийн хүн толгой эсвэл HTML кодыг хардаггүй тул зөвхөн вэб хөгжүүлэгчид энэхүү Улаан өндөгний баярын өндөгийг харах болно гэсэн санаа байв.

Серверийн бүртгэлээр дамжуулан нууц мессеж солилцох

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх