from typing import Tuple


def process_url(url: str) -> Tuple[str, str]:
    """Extracts both the web address of the PrivateBin instance and the Paste ID from a URL.

    :param url: The full URL of a paste, including passphrase.
    :return: A tuple containing the server URL and the Paste ID.
    """
    if '?' not in url or '#' not in url:
        raise ValueError("url must be a full, valid PrivateBin link")
    paste_id = url[url.find('?') + 1:url.find('#')]
    server = url[:url.find('?')]

    return server, paste_id