152 lines
7.1 KiB
HTML
152 lines
7.1 KiB
HTML
<!doctype html>
|
|
<html>
|
|
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<link rel="stylesheet" type="text/css" href="style.css" />
|
|
<link href="favicon.png" rel="icon" type="image/x-icon" />
|
|
<title>Switch Payload Loader v1.2</title>
|
|
|
|
<!-- JQuery: needed for some Bootstrap Components -->
|
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
|
|
|
|
<!-- Bootstrap 3 framework -->
|
|
<!-- Latest compiled and minified CSS -->
|
|
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
|
|
<!-- Optional theme -->
|
|
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">
|
|
<!-- Latest compiled and minified JavaScript -->
|
|
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
|
|
|
|
</head>
|
|
|
|
<body class="container-fluid" id="pageBody">
|
|
<div class="row" id="title">
|
|
<h1>Nintendo Switch Payload Loader</h1>
|
|
<h4>Fusee Launcher portado para JavaScript usando WebUSB.</h4>
|
|
</div>
|
|
|
|
<div class="row margin-top-md">
|
|
<div class="col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
|
|
<div class="btn-group" role="group" aria-label="...">
|
|
<a class="btn btn-info" href="../index.html">English</a>
|
|
<a class="btn btn-info" href="../it_IT/index.html">Italiano</a>
|
|
<a class="btn btn-info disabled" href="#">Português</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row margin-top-md" id="infodiv">
|
|
<div class="col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
|
|
|
|
<div class="alert alert-danger" role="alert">
|
|
<p>Esta ferramenta não foi completamente testada. Apesar de não ter encontrado nenhuma falha, não me responsabilizo se algo der errado!</p>
|
|
</div>
|
|
|
|
<div class="alert alert-warning alert-dismissible" role="alert">
|
|
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
<p>Isto NÃO funciona no Windows devido uma limitação do Chrome na implementação do WebUSB (e, possivelmente, outros motivos).</p>
|
|
</div>
|
|
|
|
<div class="alert alert-warning alert-dismissible" role="alert">
|
|
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
<p>Isto NÃO funciona, atualmente, em nenhum browser além do Chrome, que é o único a implementar WebUSB.</p>
|
|
</div>
|
|
|
|
<div class="alert alert-warning alert-dismissible" role="alert">
|
|
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
<p>No Linux você pode receber um erro de 'Acesso Negado' ou de 'Dispositivo Compatível não Encontrado'! Caso receba, tente criar o arquivo <code>/etc/udev/rules.d/50-switch.rules</code> com o seguinte conteúdo: <br><code>SUBSYSTEM==\"usb\", ATTR{idVendor}==\"0955\", MODE=\"0664\", GROUP=\"plugdev\"</code></p>
|
|
</div>
|
|
|
|
<div class="alert alert-warning alert-dismissible" role="alert">
|
|
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
<p>Isto foi testado -e aparentemente funciona- no Linux, OSX, Android (sem precisar de root) e Chromebooks. Resultados podem variar.</p>
|
|
</div>
|
|
|
|
<div class="alert alert-info" role="alert">
|
|
<p><strong>Instruções:</strong></p>
|
|
<ul>
|
|
<li>Coloque o Switch no modo RCM e conecte-o ao dispositivo.</li>
|
|
<li>Escolha um dos payloads disponíveis ou faça upload de um.</li>
|
|
<li>Clique em "Enviar Payload"!</li>
|
|
<li>No diálogo de confirmação escolha "APX" e clique em 'Conectar-se'</li>
|
|
<li>Se tudo der certo, o payload executará!</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
|
|
<h1>Configurar Entrega de Payload</h1>
|
|
|
|
<form id="mainForm">
|
|
<div class="row">
|
|
<div class="col-xs-6">
|
|
<h4>Payload:</h4>
|
|
</div>
|
|
|
|
<div class="col-xs-6">
|
|
<select class="pull-right" id="payloadSelect" onchange="onSelectChange()">
|
|
<option value="instaboot">Execução Instantânea CFW (5.0.x)</option>
|
|
<option value="hekate v5">Hekate para Switch ver. 5.0.X</option>
|
|
<option value="hekate v4">Hekate para Switch ver. 4.0.X</option>
|
|
<option value="fusee">Payload de teste do time (Re)Switched (fusee)</option>
|
|
<option value="uploaded">Upload de Payload</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row" id="uploadContainer" style="display: none">
|
|
<div class="col-xs-12">
|
|
<input style="float: right" type="file" id="payloadUpload" accept=".bin"/>
|
|
</div>
|
|
</div>
|
|
<div class="row divider-line"></div>
|
|
|
|
<div class="row margin-top-md">
|
|
<div class="col-xs-10">
|
|
<h4>Recuperar array de bytes do payload (favor não exploitar)</h4>
|
|
</div>
|
|
<div class="col-xs-2">
|
|
<input class="pull-right" type="checkbox" name="shouldDebug" id="shouldDebug">
|
|
</div>
|
|
</div>
|
|
<div class="row divider-line"></div>
|
|
</form>
|
|
|
|
<div class="row margin-top-md">
|
|
<div class="col-xs-12">
|
|
<button class="btn btn-primary btn-lg pull-right" id="goButton">Enviar Payload!</button>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
|
|
<h3>Log:</h3>
|
|
<div id="output"></div>
|
|
<button class="btn btn-primary pull-right margin-top-md" id="clearlogsbutton" onclick="clearLog();">Limpar Logs</button><br><br>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<script src="./payloads.js"></script>
|
|
<script src="./main.js"></script>
|
|
</body>
|
|
|
|
<div class="row margin-top-md" id="page-footer">
|
|
<div class="col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
|
|
<div id="disclaimer">
|
|
<p>Código fonte disponível em <a href="https://github.com/ElijahZAwesome/web-cfw-loader/">GitHub</a> (ou simplesmente clicando 'ver código', não há backend).</p>
|
|
<p>Um port do <a href="https://github.com/reswitched/fusee-launcher">fusee-launcher</a>.</p>
|
|
<p>Muito obrigado a Ktemkin e time (Re)Switched, bem como <br><a href="https://atlas44.s3-us-west-2.amazonaws.com/web-fusee-launcher/index.html">Atlas44 e seu website</a> que é a base deste.</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</html>
|