Suppression des dossier non pris en compte par le .gitignore

This commit is contained in:
nk
2026-05-07 09:26:00 +02:00
parent a988f7ef9d
commit 6050f0fd9c
44 changed files with 0 additions and 26374 deletions
-8
View File
@@ -1,8 +0,0 @@
body {
background-color: #282c34;
color: white;
}
body a {
color: #61dafb;
}
-31
View File
@@ -1,31 +0,0 @@
import logo from './images/logo.png';
import './App.css';
import {level1, level2} from './data';
// Components :
import Level1 from './Component/Level1';
import Level2 from './Component/Level2';
function App() {
return (
<>
<header className="flex items-center justify-center mt-4">
<img src={logo} className="w-16 m-2 rounded-full" alt="logo" />
<h1 className="text-3xl m-2 font-bold">Crack the hash</h1>
</header>
<main className='mt-12 container mx-auto sm:px-2 md:px-24 lg:px-48'>
<Level1 passwordList={level1} />
<Level2 passwordList={level2} />
</main>
<footer className='text-center p-4'>
Retrouvez le vrai challenge sur <a href='https://tryhackme.com/room/crackthehash'>tryhackme.com</a>
</footer>
</>
);
}
export default App;
@@ -1,15 +0,0 @@
import Questions from '../Questions'
function Level1({passwordList}) {
return (
<section className='border-b-2 pb-4 m-4 border-[#61dafb]'>
<h2 className="text-2xl m-4 font-bold underline">Level 1</h2>
<p className='py-2 m-4 border-b-2 border-[#61dafb]'>Pouvez-vous accomplir les tâches du level 1 en déchiffrant ces hachages ?</p>
{passwordList.map((password) => (
<Questions key={password.id} id={password.id} hash={password.hash} response={password.response} help={password.help} />
))}
</section>
);
}
export default Level1;
@@ -1,20 +0,0 @@
import Questions from '../Questions'
function Level2({passwordList}) {
return (
<section className="border-b-2 pb-4 m-4 border-[#61dafb]">
<h2 className="text-2xl m-4 font-bold underline">Level 2</h2>
<p className='py-2 m-4 border-b-2 border-[#61dafb]'>
On augmente la difficulté.<br />
Toutes les réponses se trouvent dans la liste des mots de passe de <a href='https://github.com/brannondorsey/naive-hashcat/releases/download/data/rockyou.txt'>Rock You</a>.<br />
Il vous faudra peut-être utiliser Hashcat plutôt que des outils en ligne.<br />
Consulter des exemples de hachages sur la page de <a href='https://hashcat.net/wiki/doku.php?id=example_hashes'>Hashcat</a> pourrait également s'avérer utile.<br />
</p>
{passwordList.map((password) => (
<Questions key={password.id} id={password.id} hash={password.hash} response={password.response} help={password.help} />
))}
</section>
);
}
export default Level2;
@@ -1,56 +0,0 @@
import { useState } from "react";
import logoHelp from "../../images/help.png"
function Questions({id, hash, response, help}) {
const [inputContent, setInputContent] = useState("");
const [buttonContent, setButtonContent] = useState("Envoyer");
const [helperView, setHelperView] = useState(false);
const [isValid, setisValid] = useState(false);
const checkResponse = (responseSend) => {
let inputSelect = document.querySelector('#response_'+id);
if(responseSend === response){
setButtonContent("Correct !")
inputSelect.style.backgroundColor = '#81dd81ff';
setisValid(true)
}
else{
inputSelect.style.backgroundColor = '#fbd6d0';
setInputContent('Mauvaise réponse')
}
}
const hundelInput = (evt) => {
setInputContent(evt.target.value)
}
const hundelSubmit = (evt) => {
evt.preventDefault();
checkResponse(inputContent)
}
const hundelMouseEnter = (evt) => {
setHelperView(true)
}
const hundelMouseLeave = (evt) => {
setHelperView(false)
}
return (
<div className="m-2 ">
<h3 className="text-xl" >{hash}</h3>
<form onSubmit={hundelSubmit} className="flex items-center">
<input id={"response_"+id} disabled={isValid} className="rounded-lg w-1/2 m-2 text-[#282c34]" value={inputContent} onChange={hundelInput} />
<input type="submit" id={"button_"+id} value={buttonContent} className="m-2" />
<div className="flex static">
<img onMouseEnter={hundelMouseEnter} onMouseLeave={hundelMouseLeave} src={logoHelp} className="w-8 m-2 rounded-full bg-[#ff8a00]" alt="logo" />
{helperView && <div className="ml-12 mt-2 absolute">{help}</div> }
</div>
</form>
</div>
);
}
export default Questions;
-59
View File
@@ -1,59 +0,0 @@
export let level1 = [
{
id: 1,
hash: "48bb6e862e54f2a795ffc4e541caed4d",
response: "easy",
help: "md5",
},
{
id: 2,
hash: "CBFDAC6008F9CAB4083784CBD1874F76618D2A97 ",
response: "password123",
help: "sha.. but which version",
},
{
id: 3,
hash: "1C8BFE8F801D79745C4631D09FFF36C82AA37FC4CCE4FC946683D7B336B63032",
response: "letmein",
help: "sha..",
},
{
id: 4,
hash: "$2y$12$Dwt1BZj6pcyc3Dy1FWZ5ieeUznr71EeNkJkUlypTsgbX1H68wsRom",
response: "bleh",
help: "Search the hashcat examples page (https://hashcat.net/wiki/doku.php?id=example_hashes) for $2y$. This type of hash can take a very long time to crack, so either filter rockyou for four character words, or use a mask for four lower case alphabetical characters.",
},
{
id: 5,
hash: "279412f945939ba78ce0758d3fd83daa",
response: "Eternity22",
help: "md4",
}
];
export let level2 = [
{
id: 6,
hash: "Hash: F09EDCB1FCEFC6DFB23DC3505A882655FF77375ED8AA2D1C13F640FCCC2D0C85",
response: "paule",
help: "md5",
},
{
id: 7,
hash: "Hash: 1DFECA0C002AE40B8619ECF94819CC1B ",
response: "n63umy8lkf4i",
help: "sha.. but which version",
},
{
id: 8,
hash: "Hash: $6$aReallyHardSalt$6WKUTqzq.UQQmrm0p/T7MPpMbGNnzXPMAXi4bJMl9be.cfi3/qxIf.hsGpS41BqMhSrHVXgMpdjS6xeKZAs02.",
response: "waka99",
help: "Salt: aReallyHardSalt",
},
{
id: 9,
hash: "Hash: e5d8870e5bdd26602cab8dbe07a942c8669e56d6",
response: "481616481616",
help: "Salt: tryhackme",
},
];
Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

-17
View File
@@ -1,17 +0,0 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
body {
margin: 0;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
code {
font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
monospace;
}
-17
View File
@@ -1,17 +0,0 @@
import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<React.StrictMode>
<App />
</React.StrictMode>
);
// If you want to start measuring performance in your app, pass a function
// to log results (for example: reportWebVitals(console.log))
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
reportWebVitals();
@@ -1,13 +0,0 @@
const reportWebVitals = onPerfEntry => {
if (onPerfEntry && onPerfEntry instanceof Function) {
import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
getCLS(onPerfEntry);
getFID(onPerfEntry);
getFCP(onPerfEntry);
getLCP(onPerfEntry);
getTTFB(onPerfEntry);
});
}
};
export default reportWebVitals;
@@ -1,5 +0,0 @@
// jest-dom adds custom jest matchers for asserting on DOM nodes.
// allows you to do things like:
// expect(element).toHaveTextContent(/react/i)
// learn more: https://github.com/testing-library/jest-dom
import '@testing-library/jest-dom';