Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
macsurf — Un browser web moderno per Classic Mac OS 9 PowerPC. Vero CSS3, JavaScript ES5, HTTPS nativo. Sviluppato con CodeWarrior sull'API Carbon. | Kitploit
Strumenti/GitHubGitHub/mplsllc/macsurf
Strumenti di Crittografia/DecrittografiaSicurezza WebCrittografia
GitHubmplsllc/macsurf

macsurf

Un browser web moderno per Classic Mac OS 9 PowerPC. Vero CSS3, JavaScript ES5, HTTPS nativo. Sviluppato con CodeWarrior sull'API Carbon.

Vedi RepositorySito web
266716 giorni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

MacSurf

Il web moderno, su un Mac di 25 anni.

MacSurf è un browser web per Classic Mac OS 9 PowerPC. CSS3, JavaScript ES5 e PNG con alpha — in esecuzione su un iMac G3.

MacSurf è un progetto a tempo pieno. Se ha riportato il tuo vecchio Mac sul web, ogni dollaro aiuta a mantenere vivo lo sviluppo. Segui anche i progressi su Patreon con i dev log.

Seguimi su Ko-Fi!

Sostenitori

MacSurf è tenuto in vita dai suoi sostenitori — grazie:

Patreon
Shlooom

Ko-Fi
kilgeist

Mac OS 9, incontra TLS — nativo, nessun proxy necessario.

Video introduttivo

Guarda il video

[!NOTE] Alpha iniziale — gira, renderizza e parla TLS 1.3 nativamente su un G3 a 233 MHz, ma gran parte del web moderno non funzionerà ancora. Aspettati pagine costruite a mano, siti in stile retrò e lo strano brivido del JavaScript ES5 su PowerPC. Non aspettarti una navigazione fluida su siti moderni arbitrari, video o qualcosa di pesante in React.

Se hai un Power Mac G3 o G4 in giro, caricalo e guarda cosa si rompe — le segnalazioni di bug e gli screenshot su hardware reale sono esattamente ciò di cui questo progetto ha bisogno. Vedi docs/status.md per l'elenco dei punti in sospeso.


Perché esiste

Il web ha superato Classic Mac OS vent'anni fa. L'HTTPS moderno l'ha stroncato intorno al 2016. Tira fuori un G3 o un G4 dall'armadio oggi e riesce a malapena a raggiungere un solo sito web online.

MacSurf è un tentativo di risolvere il problema sulla macchina stessa — nessun proxy di screenshot, nessun trucco da terminale remoto. Un browser nativo, costruito con gli strumenti che erano già sulla piattaforma: CodeWarrior, Carbon, QuickDraw, Open Transport. Veri layout CSS3 e vero JavaScript, in esecuzione dentro i 64 MB di memoria base di un iMac del 1999. Da fine maggio 2026 parla TLS 1.2 direttamente col web moderno tramite macTLS, uno stack basato su BearSSL incorporato nel binario del browser con 121 trust anchor dal bundle CA di Mozilla. Non serve più alcun proxy.

Per quanto ne sappiamo, questa è la prima porta seria di NetSurf su Classic Mac OS, e il primo browser mai distribuito su Mac OS 9 con CSS Grid nativo, proprietà custom CSS e JavaScript ES5.


L'evoluzione

Ogni schermata qui sotto è una pietra miliare reale, catturata su un Power Macintosh G3 con Mac OS 9. Le annotazioni con numero di fix corrispondono alla cronologia dei commit di questo repository.


I componenti


Cosa funziona oggi


Download

L'ultima versione è MacSurf 1.68 — "macQJS" (2026-07-07): il motore JavaScript è stato sostituito — Duktape (ES5) → macQJS (QuickJS, ES2023), così il JavaScript moderno gira nativamente su Mac OS 9. In più: input di testo funzionante (caret / selezione / Tab), login mantenuti, un menu segnalibri + gestore download, la correzione del rendering della barra di scorrimento divisa, glifi di icone scaricabili da web font e una grande passata sulle prestazioni (avvio quasi istantaneo, cache su disco per immagini e font, caricamento lazy delle immagini nel viewport). Chiamata così per onorare 68kmla.org, la community che ha trainato il ciclo. Note complete: release-notes/MacSurf-1.68.md.

Il predecessore MacSurf v1.4 — Open House (2026-06-01): maratona JavaScript chiusa. 23 issue del bridge JS sono passate da aperte a chiuse in una sola release — setTimeout / setInterval / requestAnimationFrame, window.location, window.history, URL, URLSearchParams, classList, style, costruttori Event, MutationObserver, DOMParser, FormData, localStorage, , eventi / , più il toggle di / . La nuova suite di probe ha totalizzato su un iMac G3. Pagine diagnostiche attive: , , , renderizzano tutte contatori reali. Visualizza sorgente renderizza inline, Trova nella pagina apre una vera finestra di dialogo Carbon. Il predecessore ha introdotto TLS 1.3 multi-curva; è stato il primo TLS 1.3 nativo su Classic Mac OS; ha chiuso il buco dell'entropia; è stata la release del restyling della chrome; è stata l'accelerazione del caricamento a freddo (mactrove.com 30+s → ~2-3s); la prima alpha numerata è .

  • MacSurf.sit — il binario v1.4, pronto da eseguire. Espandi su Mac OS 9.1+ con CarbonLib 1.5+ e avvia.

  • Per compilare dai sorgenti: clona il repository, poi sul lato Mac apri browser/netsurf/frontends/macos9/MacSurf.mcp in CodeWarrior 8 e scegli Build. Chi compila la v1.4 su un workspace v1.3.1 deve aggiungere un nuovo file sorgente al progetto: browser/netsurf/desktop/search.c (fornisce browser_window_search per la nuova finestra di dialogo Find; content/textsearch.c è già presente). macTLS è invariato rispetto alla v1.3.1. Chi compila la v1.3 su un workspace v1.2 deve aggiungere quattro file macTLS per TLS 1.3: bearssl/src/ec/ec_c25519_m15.c, os9/ostls_tls13_keysched.c, os9/ostls_tls13_record.c, os9/ostls_tls13_handshake.c. Chi compila la v1.2 su un workspace 1.0 ha bisogno di desktop/download.c. La prima release include uno snapshot BuildPack.sit con il progetto CW8 già preconfigurato, ma le build attuali funzionano direttamente da un clone fresco.


Per iniziare

Compilare il browser

MacSurf viene compilato su Mac OS 9 con CodeWarrior 8 Pro (aggiornamento 8.3). Il sorgente è pulito per la cross-compilazione con Retro68 PowerPC GCC, che è ciò che usiamo per i veloci controlli di sintassi lato Linux.

  • Guida alla compilazione lato Mac
  • Workflow di sviluppo incrociato da Linux
Scarica lo strumento
JavaScript Hello World su Mac OS 9
v0.2: JavaScript su Mac OS 9
Prima pagina reale con JavaScript. Duktape 2.7.0 ES5 che esegue dal vivo: Math.sqrt, JSON, metodi array ES5.
Transform CSS: rotate, scale, translate
fixes73: trasformazioni CSS
transform: rotate() / scale() / translate() nativo. Tabella sin/cos a interi Q15, nessuna dipendenza dalla FPU, angoli arbitrari su QuickDraw.
Gradienti radiali CSS
fixes74d: gradienti radiali
Gradienti radiali a 2 stop tramite stack concentrico di PaintOval. 16 livelli sfumati in decodifica. Analizzate le keyword di forma e posizione.
Animazioni CSS: wiggle, swing, rotazione lenta
fixes77: animazioni CSS
Player di animazioni lineari ping-pong sopra la rotazione di fixes73. Wiggle, swing e rotazione completa 0°→359°.
Immagine PNG con trasparenza su Mac OS 9
fixes79b: trasparenza PNG
QuickTime Graphics Importer che alimenta il content handler delle immagini di NetSurf. PNG + GIF + BMP, tutti con trasparenza reale.
word-break e overflow-wrap CSS
fixes136: word-break / overflow-wrap
word-break: break-all, keep-all, white-space: nowrap, legacy word-wrap: break-word. A capo aggressivo in stile URL.
Contesti di stacking z-index CSS
fixes147: contesti di stacking
Ordine di pittura CSS 2.1. Opacità, trasformazioni e z-index esplicito creano tutti nuovi contesti di stacking, dipinti correttamente su hardware reale.
Posizionamento delle colonne CSS Grid
fixes151: posizionamento colonne CSS Grid
grid-column: span N, hero a riga intera 1 / -1, start / end posizionali, span + ritorno a capo automatico. Vero layout Grid su OS 9.
MacSurf 1.0 che renderizza home.macsurf.org
v1.0: Showcase
La nuova toolbar a cintura portautensili, il campo URL nitidissimo e le icone satinate che renderizzano home.macsurf.org su un iMac G3 con OS 9.2.2. HTTPS nativo via macTLS diretto all'origine, portale renderizzato lato server, immagini true-color dall'inizio alla fine.
ComponenteLinguaggioScopo
browser/C (C89, CW8)Fork di NetSurf con frontend macos9. Carbon per la UI, QuickDraw per il disegno, Open Transport per la rete, Duktape per JS.
proxy/Go (solo stdlib)Il vecchio proxy HTTP che eliminava TLS. In gran parte pensionato ora che macTLS funziona nativamente, ma ancora utile come fallback o su macchine senza CarbonLib. Il Mac invia HTTP semplice, il proxy recupera via HTTPS e restituisce HTTP semplice.
macTLS
repo gemello
C (CW8)Libreria nativa TLS 1.2 per OS 9 — HTTPS moderno direttamente dal Mac, nessun proxy richiesto. BearSSL sotto, 121 trust anchor integrate.

Pipeline di rendering

  • Intera pipeline NetSurf: fetch → parse → cascade → layout → plot
  • libcss nativo con risoluzione di var()
  • Plotter QuickDraw con back-buffer GWorld off-screen

CSS — circa 150 proprietà usate nel layout

  • Proprietà custom e var()
  • Flex: justify-content, align-content, order
  • Grid V1 più grid-template-columns/rows, gap
  • border-radius, box-shadow, opacità
  • Gradienti lineari e radiali
  • text-shadow, text-overflow: ellipsis
  • transform (rotate, translate, scale)
  • Contesti di stacking z-index (ordine di pittura CSS 2.1)
  • Contatori CSS, unità viewport, aspect-ratio
  • Alias font-family per sans, serif, monospace

Stato CSS completo →

JavaScript — Duktape 2.7.0, ES5 completo

  • Closure, prototipi, regex, JSON
  • Promise (polyfill), ricorsione, Mandelbrot
  • Circa 6 secondi per ackermann(3,7) su un G3 a 233 MHz

Immagini — tutti e cinque i formati

  • PNG con alpha reale per pixel (lodepng + CopyMask)
  • GIF con trasparenza della palette
  • JPEG, BMP, TIFF

Rete

  • Open Transport TCP, chiamate semplici non-InContext
  • HTTP/1.1 + chunked + keep-alive + follow dei 3xx
  • Connection pooling, timeout di 15 secondi senza progressi
  • HTTPS tramite macTLS (predefinito) o proxy Go (fallback)

Chrome del browser

  • Barra degli indirizzi, indietro / avanti / ricarica / home
  • Barra di stato, info pagina, multifinestra
  • Barra di scorrimento fluida, scorrimento da tastiera
fetch
load
DOMContentLoaded
<details>
<summary>
JS 19/19 pass, 0 fail
about:cache
about:memory
about:config
about:perf
v1.3.1 "Forward, refined"
v1.3 "Forward"
v1.2 "Sealed"
v1.0 "Showcase"
v0.6.2 "Speed-Run"
v0.1a1
  • Note delle alpha precedenti se vuoi contesto: docs/release-notes/MacSurf-0.1a1.md.