Awọn iwifunni titari ni aabo: lati imọ-jinlẹ si adaṣe

Hey Habr!

Loni Emi yoo sọrọ nipa kini ati awọn ẹlẹgbẹ mi ti n ṣe fun ọpọlọpọ awọn oṣu ni bayi: awọn iwifunni titari fun awọn ojiṣẹ lojukanna alagbeka. Gẹgẹbi Mo ti sọ tẹlẹ, ninu ohun elo wa itọkasi akọkọ wa lori aabo. Nitorinaa, a rii boya awọn iwifunni titari ni “awọn aaye alailagbara” ati, ti o ba rii bẹ, bawo ni a ṣe le ṣe ipele wọn jade lati le ṣafikun aṣayan iwulo yii si iṣẹ wa.

Mo n ṣe atẹjade itumọ ti wa ìwé lati Alabọde pẹlu diẹ ninu awọn kekere awọn afikun lati ara mi. O ni awọn abajade ti “iwadii” ati itan kan nipa bi a ṣe yanju iṣoro naa.

A ṣe ayẹwo ohun elo naa

Ninu awoṣe Ayebaye, awọn iwifunni titari jẹ ki awọn ojiṣẹ jẹ ipalara si awọn ikọlu MITM (Eniyan-ni-arin). Fun apẹẹrẹ, pẹlu Google, Microsoft, ati ẹya atijọ ti iMessage, ohun elo naa nfi awọn bọtini fifi ẹnọ kọ nkan ranṣẹ si awọn olupin Apple - lori olupin naa, awọn olumulo ti jẹri ati akọsori ifiranṣẹ (tabi akoonu rẹ) jẹ idinku.

Awọn iwifunni titari ni aabo: lati imọ-jinlẹ si adaṣe

Bi abajade, aye wa lati ka iwe-kikọ naa nipa gbigba iraye si olupin ifitonileti titari. Eyi tumọ si pe eyikeyi fifi ẹnọ kọ nkan ti ifọrọranṣẹ jẹ asan: awọn iwifunni titari yoo tun fi aye silẹ ti kika nipasẹ awọn ẹgbẹ kẹta. Awọn onkọwe nkan naa jiroro lori iṣeeṣe yii ni awọn alaye diẹ sii. "Fipamọ daradara" lori Xaker.ru, igbẹhin si awọn ọna ti fifipamọ awọn ifiranṣẹ.

Ti o ba ro pe awọn olupin Apple ati Google ni aabo 100% lodi si jijo awọn bọtini fifi ẹnọ kọ nkan olumulo, ro otitọ pe awọn oṣiṣẹ wọn ni iwọle si wọn. Ati awọn oṣiṣẹ jẹ eniyan.
Pelu gbogbo awọn ailagbara ti awọn iwifunni titari, ọpọlọpọ awọn ojiṣẹ lẹsẹkẹsẹ “ailewu”, pẹlu Ifihan agbara ati Telegram, lo wọn. Bibẹẹkọ, awọn olumulo yoo ni “pẹlu ọwọ” ṣe atẹle awọn ifiranṣẹ tuntun nipa wíwọlé sinu ohun elo nigbagbogbo. Eyi ti o jẹ airọrun pupọ, ati awọn ojiṣẹ idije yoo ni anfani.

Paranoia ati ogbon ori


Ninu iṣẹ akanṣe wa, a mu ọran yii ni pẹkipẹki ni awọn oṣu diẹ sẹhin. A nilo lati ṣafikun aṣayan iwifunni titari lati jẹ idije. Ṣugbọn ni akoko kanna, maṣe ṣii iho aabo, nitori eyikeyi jijo data yoo dẹkun igbẹkẹle ninu iṣẹ naa.

Sibẹsibẹ, a ti ni anfani pataki kan tẹlẹ: ojiṣẹ wa ti wa ni isunmọ (data ti wa ni ipamọ lori blockchain), ati pe awọn oṣiṣẹ ko ni iwọle si awọn akọọlẹ. Awọn olumulo nikan ni awọn bọtini fifi ẹnọ kọ nkan, ati awọn bọtini gbangba ti awọn interlocutors wa lori blockchain lati daabobo lodi si awọn ikọlu MITM.

Ninu ẹya akọkọ ti awọn iwifunni titari, a pinnu lati mu ṣiṣẹ ni ailewu bi o ti ṣee ṣe ati pe ko ṣe atagba ọrọ ifiranṣẹ rara. Iṣẹ titari ko gba ọrọ ti ifiranṣẹ lati oju ipade, ṣugbọn ifihan nikan nipa otitọ ti gbigba rẹ. Nitorinaa, olumulo naa rii ifitonileti “Ifiranṣẹ Tuntun ti de”. O ṣee ṣe lati ka nikan ninu ojiṣẹ.

Awọn iwifunni titari ni aabo: lati imọ-jinlẹ si adaṣe
Bi o ti ṣiṣẹ: fidio.

Lẹhin iyẹn, a kẹkọọ pe ẹya tuntun ti awọn iwifunni ti Apple ni awọn ẹya aabo tuntun. Won tu silẹ UNNotificationServiceExtension, eyiti ngbanilaaye awọn olupilẹṣẹ lati firanṣẹ data iwifunni ti paroko ni kikun lori APNS. Ìfilọlẹ naa lori ẹrọ olumulo ipari lẹhinna ṣe iṣiparọ (tabi ṣe igbasilẹ data afikun) ati ṣafihan ifitonileti kan. A mu bi ipilẹ fun ẹya keji ti awọn iwifunni titari.

A ti ṣe agbekalẹ ẹya keji ti awọn iwifunni titari fun iOS, eyiti o fun ọ laaye lati ṣafihan ọrọ ti ifiranṣẹ laisi eewu aabo. Ninu ero tuntun, ọgbọn naa dabi eyi:

  • Iṣẹ titari firanṣẹ ifitonileti titari pẹlu nọmba idunadura naa (ifiranṣẹ ti paroko le tobi pupọ, ati iwọn awọn iwifunni ti ni opin pupọ)
  • Nigbati ẹrọ naa ba gba ifitonileti kan, o ṣe ifilọlẹ IfitoniletiServiceExtension wa - ohun elo microapplication kan ti o beere idunadura kan lati ipade nipasẹ id, yọkuro rẹ nipa lilo gbolohun ọrọ igbaniwọle ti o fipamọ, ati fi ifitonileti tuntun ranṣẹ si eto naa. Ọrọ igbaniwọle ti wa ni ipamọ ni ibi ipamọ to ni aabo.
  • Eto naa n ṣe afihan ifitonileti kan pẹlu ifiranṣẹ decrypted tabi itumọ.
  • Awọn bọtini ko lọ nibikibi, gẹgẹ bi ifọrọranṣẹ itele. Iṣẹ titari ko ni ọna lati ge ifiranṣẹ naa.

Awọn iwifunni titari ni aabo: lati imọ-jinlẹ si adaṣe

A gba ẹya yii bi o ti n ṣiṣẹ ati imuse rẹ ni imudojuiwọn tuntun ti ohun elo iOS.
Awọn ti o nifẹ si ẹgbẹ imọ-ẹrọ le wo koodu orisun: github.com/Adamant-im/adamant-notificationService.

orisun: www.habr.com

Fi ọrọìwòye kun