Non sussiste in principio nessuna falla di sicurezza nella visualizzazione della query string nell'URL.

Tuttavia una pagina chiamata "modificaprofilo.php" mi lascia intuire che la mancata sicurezza (direi assenza...) sta nel fatto che quella pagina deve essere accessibile solo all'utente con quel determinato id.

In questo caso la miglior cosa da fare è di mettere in sessione l'id dell'utente loggato (al momento del login) e poi nella pagina modificaprofilo.php avrai:
Codice PHP:
<?php
session_start
();
if(!isset(
$_SESSION['id_user'])){
exit(
'possono accedere a questa pagina solo gli utenti loggati');
}

$id $_SESSION['id_user']; // quindi l'id lo prendi dalla sessione e non via get
// ... etc etc