Skip to content

Commit a2c6132

Browse files
committed
Write a neater script for solving mine
1 parent 7426fec commit a2c6132

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
import sys
2+
import dns.query
3+
import dns.resolver
4+
import dns.message
5+
6+
def decoder(ip):
7+
return ''.join(chr(int(part)) for part in ip.split('.'))
8+
9+
result = dns.resolver.resolve("ctfchals.hackthemidlands.com")
10+
htm = result[0].to_text()
11+
12+
x = 0
13+
y = 0
14+
while True:
15+
msg = dns.message.make_query(f'{x}.{y}.mine', 'A')
16+
result = dns.query.udp(msg, htm, port=4003)
17+
18+
try:
19+
ip = result.answer[0][0].to_text()
20+
except IndexError:
21+
if x == 0:
22+
sys.exit(0)
23+
else:
24+
x = 0
25+
y += 1
26+
print()
27+
continue
28+
29+
metal = decoder(ip)
30+
if metal == "gold":
31+
print("X", end='', flush=True)
32+
else:
33+
print(" ", end='', flush=True)
34+
35+
x += 1
36+

0 commit comments

Comments
 (0)