Ya sea que pases el ID por URL o con un campo hidden siempre será visible si inspeccionas el código HTML generado en el navegador, eso cualquiera lo sabe.
Al fin y al cabo es tu programación la responsable de la seguridad, ¿un ID qué tiene que ver?
Que sea visible o no el ID no hace "inseguro" tu sistema por ninguna razón.