> ## Documentation Index
> Fetch the complete documentation index at: https://trickest.com/llms.txt
> Use this file to discover all available pages before exploring further.

# eyeballer

> Eyeballer is meant for large-scope network penetration tests where you need to find interesting targets from a huge set of web-based hosts. Go ahead and use your favorite screenshotting tool like normal (EyeWitness or GoWitness) and then run them through Eyeballer to tell you what's likely to contain vulnerabilities, and what isn't.

export const ToolDetails = ({id, name, description, category, author, inputs, created_date, container, source_url, license, output_command, output_type, iframe_url}) => <div style={{
  display: 'flex',
  gap: '24px'
}}>
    <div style={{
  flex: '1',
  display: 'flex',
  flexDirection: 'column',
  gap: '16px'
}}>
      <div style={{
  backgroundColor: 'var(--background-card)',
  borderRadius: '12px',
  boxShadow: '0 2px 4px rgba(0,0,0,0.05)'
}}>
        <div style={{
  backgroundColor: 'var(--background-default)',
  borderRadius: '8px',
  border: '1px solid var(--border-default)'
}}>
          <div style={{
  display: 'flex',
  flexDirection: 'column',
  gap: '12px'
}}>
            <div style={{
  display: 'flex',
  alignItems: 'baseline'
}}>
              <strong style={{
  minWidth: '100px',
  color: 'var(--text-secondary)'
}}>Name:</strong>
              <span>{name}</span>
            </div>
            <div style={{
  display: 'flex',
  alignItems: 'baseline'
}}>
              <strong style={{
  minWidth: '100px',
  color: 'var(--text-secondary)'
}}>Category:</strong>
              <span>{category}</span>
            </div>
            <div style={{
  display: 'flex',
  alignItems: 'baseline'
}}>
              <strong style={{
  minWidth: '100px',
  color: 'var(--text-secondary)'
}}>Publisher:</strong>
              <span>{author}</span>
            </div>
            <div style={{
  display: 'flex',
  alignItems: 'baseline'
}}>
              <strong style={{
  minWidth: '100px',
  color: 'var(--text-secondary)'
}}>Created:</strong>
              <span>{new Date(created_date).toLocaleDateString()}</span>
            </div>
            <div style={{
  display: 'flex',
  alignItems: 'baseline'
}}>
              <strong style={{
  minWidth: '100px',
  color: 'var(--text-secondary)'
}}>Container:</strong>
              <code style={{
  padding: '2px 6px',
  backgroundColor: 'var(--background-code)',
  borderRadius: '4px',
  fontSize: '0.9em'
}}>{container}</code>
            </div>
            <div style={{
  display: 'flex',
  alignItems: 'baseline'
}}>
              <strong style={{
  minWidth: '100px',
  color: 'var(--text-secondary)'
}}>Output Type:</strong>
              <span>{output_type}</span>
            </div>
            <div style={{
  display: 'flex',
  alignItems: 'baseline'
}}>
              <strong style={{
  minWidth: '100px',
  color: 'var(--text-secondary)'
}}>License:</strong>
              <span>{license}</span>
            </div>
            <div style={{
  display: 'flex',
  alignItems: 'baseline'
}}>
              <strong style={{
  minWidth: '100px',
  color: 'var(--text-secondary)'
}}>Source:</strong>
              <a href={source_url} target="_blank" rel="noopener noreferrer" style={{
  color: 'var(--text-link)',
  textDecoration: 'none',
  ':hover': {
    textDecoration: 'underline'
  }
}}>
                View Source
              </a>
            </div>
          </div>
        </div>
      </div>

      <div style={{
  backgroundColor: 'var(--background-card)',
  borderRadius: '8px'
}}>
        <h3 style={{
  fontSize: '1.2rem',
  marginBottom: '16px'
}}>Parameters</h3>
        <div style={{
  display: 'flex',
  flexDirection: 'column',
  gap: '12px'
}}>
          {Object.entries(inputs).map(([key, value]) => <ParamField key={key} query={key} type={value.type.toLowerCase()} optional={!value.visible} required={value.visible}>
              <code style={{
  marginRight: '8px'
}}>{value.command}</code>
              {value.description}
            </ParamField>)}
        </div>
      </div>
    </div>

    <div style={{
  width: '400px'
}}>
      <Frame style={{
  width: '100%',
  height: '100%'
}}>
        <iframe src={iframe_url} style={{
  width: '100%',
  height: '400px',
  border: 'none',
  borderRadius: '8px',
  display: 'block'
}} scrolling="no" />
      </Frame>
    </div>
  </div>;

<ToolDetails
  id="50664d89-4316-4829-9044-e2a81bdd171e"
  name="eyeballer"
  description="Eyeballer is meant for large-scope network penetration tests where you need to find interesting targets from a huge set of web-based hosts. Go ahead and use your favorite screenshotting tool like normal (EyeWitness or GoWitness) and then run them through Eyeballer to tell you what's likely to contain vulnerabilities, and what isn't."
  category="Machine Learning"
  author="trickest"
  created_date="2021-06-23"
  container="quay.io/trickest/eyeballer:d1d5182"
  source_url="https://github.com/BishopFox/eyeballer"
  license="Unknown"
  output_command=">"
  output_type=""
  iframe_url="https://editor.trickest.io/preview?workflow_url=https://trickest-public-workflow.s3.eu-central-1.amazonaws.com/50664d89-4316-4829-9044-e2a81bdd171e.json"
  inputs={ {
"heatmap": {
"type": "BOOLEAN",
"order": 0,
"command": "--heatmap",
"visible": false,
"description": "Create a heatmap graphfor the prediction",
},
"weights": {
"type": "FILE",
"order": 0,
"command": "--weights",
"visible": true,
"description": "Weights file for input/output. Check https://github.com/BishopFox/eyeballer/releases.",
},
"threshold": {
"type": "STRING",
"order": 0,
"command": "--threshold",
"visible": false,
"description": "Threshold confidence for labeling",
},
"predict-folder": {
"type": "FOLDER",
"order": 1,
"command": "predict",
"visible": true,
"description": "Folder with screenshots. For best results, make sure you screenshot your websites in a native 1.6x aspect ratio i.e. 1440x900.",
},
}}
/>
