$_SESSION wird auf Ihrem Webserver gespeichert, so dass es nicht möglich ist, es direkt über das Web zu ändern. Natürlich kann Ihre PHP-Anwendung $_SESSION aktualisieren, so dass es für einen Angreifer immer noch möglich sein könnte, Ihre Anwendung auszutricksen, damit sie etwas mit $_SESSION macht, was sie nicht tun sollte - das hängt alles von den Besonderheiten Ihrer Anwendung ab.
$_COOKIE wird im Browser des Benutzers gespeichert, was bedeutet, dass der Benutzer die Möglichkeit hat, seine eigenen Cookies zu ändern.
Einer der wichtigsten Verwendungszwecke von Cookies ist die Authentifizierung. Ein Benutzer meldet sich an und die Informationen werden in $_SESSION gespeichert. Ein Cookie (gespeichert in $_COOKIE) zeichnet die Sitzungskennung des Benutzers auf, so dass Ihre Anwendung weiß, welche Sitzung zu dem angemeldeten Benutzer gehört.