tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

Kushiriki data ndani na kati ya programu kwenye vifaa vya iOS kunarahisishwa na mekanizma ya UIPasteboard, ambayo imegawanywa katika makundi mawili makuu:

  • Systemwide general pasteboard: Hii inatumika kwa kushiriki data na programu yoyote na imeundwa kudumisha data wakati wa upya wa kifaa na kufutwa kwa programu, kipengele ambacho kimekuwa kinapatikana tangu iOS 10.
  • Custom / Named pasteboards: Hizi ni maalum kwa kushiriki data ndani ya programu au na programu nyingine inayoshiriki kitambulisho sawa cha timu, na hazijaundwa kudumu zaidi ya maisha ya mchakato wa programu unaoziumba, kufuatia mabadiliko yaliyoanzishwa katika iOS 10.

Mambo ya usalama yana jukumu muhimu wakati wa kutumia pasteboards. Kwa mfano:

  • Hakuna mekanizma kwa watumiaji kusimamia ruhusa za programu kufikia pasteboard.
  • Ili kupunguza hatari ya ufuatiliaji wa nyuma usioidhinishwa wa pasteboard, ufikiaji unazuiliwa wakati programu iko mbele (tangu iOS 9).
  • Matumizi ya pasteboards zenye majina yanayodumu yanakemewa kwa ajili ya vyombo vya kushiriki kutokana na wasiwasi wa faragha.
  • Kipengele cha Universal Clipboard kilichoanzishwa na iOS 10, kinachoruhusu maudhui kushirikiwa kati ya vifaa kupitia pasteboard ya jumla, kinaweza kusimamiwa na waendelezaji kuweka muda wa kuisha kwa data na kuzima uhamishaji wa maudhui kiotomatiki.

Kuhakikisha kwamba taarifa nyeti hazihifadhiwi bila kukusudia kwenye pasteboard ya ulimwengu ni muhimu. Zaidi ya hayo, programu zinapaswa kubuniwa kuzuia matumizi mabaya ya data ya pasteboard ya ulimwengu kwa vitendo visivyokusudiwa, na waendelezaji wanahimizwa kutekeleza hatua za kuzuia nakala ya taarifa nyeti kwenye clipboard.

Uchambuzi wa Kijamii

Kwa uchambuzi wa kijamii, tafuta katika msimbo wa chanzo au binary kwa:

  • generalPasteboard ili kubaini matumizi ya systemwide general pasteboard.
  • pasteboardWithName:create: na pasteboardWithUniqueName kwa kuunda custom pasteboards. Thibitisha ikiwa kudumu kumewashwa, ingawa hii imeondolewa.

Uchambuzi wa Kijamii

Uchambuzi wa kijamii unahusisha kuunganisha au kufuatilia mbinu maalum:

  • Fuata generalPasteboard kwa matumizi ya mfumo mzima.
  • Fuata pasteboardWithName:create: na pasteboardWithUniqueName kwa utekelezaji wa kawaida.
  • Angalia simu za mbinu za zamani setPersistent: ili kuangalia mipangilio ya kudumu.

Maelezo muhimu ya kufuatilia ni pamoja na:

  • Majina ya pasteboard na maudhui (kwa mfano, kuangalia nyuzi, URLs, picha).
  • Idadi ya vitu na aina za data zilizopo, ukitumia ukaguzi wa aina za data za kawaida na za kawaida.
  • Muda wa kuisha na chaguo za ndani pekee kwa kukagua mbinu ya setItems:options:.

Mfano wa matumizi ya chombo cha kufuatilia ni monitor ya pasteboard ya objection, ambayo inachunguza generalPasteboard kila sekunde 5 kwa mabadiliko na kutoa data mpya.

Hapa kuna mfano rahisi wa script ya JavaScript, iliyochochewa na mbinu ya objection, kusoma na kurekodi mabadiliko kutoka kwa pasteboard kila sekunde 5:

javascript
const UIPasteboard = ObjC.classes.UIPasteboard
const Pasteboard = UIPasteboard.generalPasteboard()
var items = ""
var count = Pasteboard.changeCount().toString()

setInterval(function () {
const currentCount = Pasteboard.changeCount().toString()
const currentItems = Pasteboard.items().toString()

if (currentCount === count) {
return
}

items = currentItems
count = currentCount

console.log(
"[* Pasteboard changed] count: " +
count +
" hasStrings: " +
Pasteboard.hasStrings().toString() +
" hasURLs: " +
Pasteboard.hasURLs().toString() +
" hasImages: " +
Pasteboard.hasImages().toString()
)
console.log(items)
}, 1000 * 5)

Marejeleo

tip

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks