Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Preparation of IdP and SP

  1. Install https://simplesamlphp.org/ version 2.
  2. Put this into config/authsources.php:
        'reflector' => [
            'exampleauth:StaticSource',

            'uid' => ['test'],
            'eduPersonPrincipalName' => ['test@passkey.grnet.gr'],
            'eduPersonAffiliation' => ['member', 'student'],
        ],
  3. Put this into metadata/saml20-idp-hosted.php:
    $metadata['https://passkey.grnet.gr/example-idp'] = [
        'host' => '__DEFAULT__',
        'privatekey' => 'server1.pem',
        'certificate' => 'server1.crt',
        'auth' => 'reflector',
        'authproc' => [
            100 => ['class' => 'core:AttributeMap', 'name2oid'],
      ],
    ];
  4. Add SAMLtest.id to trusted SPs
    1. Download SP metadata from https://samltest.id/download/
    2. Use the SSP XML to PHP convertor
    3. Paste the result into metadata/saml20-sp-remote.php
  5. Add this IdP to SAMLtest.id
    1. Download IdP metadata from SSP admin
    2. Go to https://samltest.id/upload.php
    3. Upload the IdP metadata

Installing and running nuclei

  1. Install go (follow https://go.dev/doc/install to have the newest version, don't use the version from your distro!)
  2. add this to your profile (~/.profile)
    export GOROOT=/usr/local/go
    export GOPATH=$HOME/go
    export PATH=$GOPATH/bin:$GOROOT/bin:$PATH
  3. install nuclei using go (https://docs.nuclei.sh/getting-started/install, "go" tab)
  4. test that the installation was successful:
    nuclei --version
  5. create a folder called nuclei-templates
  6. download this file into the folder:
    View file
    namesamltest.yaml
    height250
  7. run nuclei:
    nuclei -headless -u https://samltest.id -duc -fr -ms -t nuclei-templates/ -json-export output.json
  8. there will be a screenshot in the screenshots folder and machine-readable results in output.json (including the whole HTML response)