Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Global Variables #6

Open
BusesCanFly opened this issue Jun 9, 2017 · 13 comments
Open

Global Variables #6

BusesCanFly opened this issue Jun 9, 2017 · 13 comments

Comments

@BusesCanFly
Copy link

Hello!

First off, thank you again for the 10/10 project and guide.
My friend and I got a totally not knockoff arduino nano, are we are running out of global variable sram, if I understand the term correctly. The nano is from amazon, but seems to check out as the same board as the one dear old seytonic recommended. Is this a noob mistake (probably), or is there something that can be done to troubleshoot this?

Thanks again!

Sketch uses 5508 bytes (38%) of program storage space. Maximum is 14336 bytes. **Global variables use 1061 bytes (103%) of dynamic memory, leaving -37 bytes for local variables. Maximum is 1024 bytes.** Not enough memory; see http://www.arduino.cc/en/Guide/Troubleshooting#size for tips on reducing your footprint. Error compiling for board Arduino Nano.

@spacehuhn
Copy link
Owner

spacehuhn commented Jun 9, 2017

The Arduino Nano is not capable of running this project! Get something with an atmega32u4.
Sorry misread, that's another project!
Let me check some things first, there are 2 versions of the Nano out there I think.

@spacehuhn
Copy link
Owner

Ok I see, when you use the atmega168 it gets the problem, however when you use the atmega328 everything works just fine.
I think it's because of the webinterface, that needs too much memory (even when it's not used). I will update it!

@BusesCanFly
Copy link
Author

BusesCanFly commented Jun 9, 2017

Ok, makes sense. Thanks for the quick reply! I have a teacher with a "real" nano, I will test your program in a couple hours when I get access to it. (The web interface is way to cool to skip over... maybe a version with and without the web interface?)

On a side note, I saw that there are some ENC28J60 boards that are fatter and bulkier, but can be wired up to an uno.. and probably some other boards.. Was the choice to use a nano because of the form factor?
EDIT: I saw the ethercard library, with the list of compatible arduinos.:

  • Arduino Uno
  • Arduino Mega
  • Arduino Leonardo
  • Arduino Nano/Pro/Fio/Pro-mini/LiliPad/Duemilanove
  • Any other Arduino clone using an AVR microcontroller should work

Thanks again!

@BusesCanFly
Copy link
Author

BusesCanFly commented Jun 9, 2017

Life update: As you said, the atmega328 nano works perfectly, no sram storage issues.
I now realize I have a switch that is "protecting' against arp "attacks", so in about ~30 minutes, I will see with a more-or-less direct wired connection.

Another noob question, if I may: the default packet rate is 20 packets/sec. Do you have a link to some sort of standard, or reference to see how many p/s this setup can handle, or how much p/s is needed for a reliable "attack" on variously sized networks?

Thank you again, again! Awesome project!

Side thing... When connected to the protected switch, the serial console outputs "éøé" one character at a time. I no not have the expertise to deconstruct this... so.. ¯_(ツ)_/¯

@D3VL-Jack
Copy link
Contributor

Sorry about the web interface 😳, I practically grafted the code from another project 😅

As for the packet rate, and I may be wrong here, Thier is no "Standard" Per-se for ARP spoofing, for 20 pkts/s is just enough not to bloat the network but you don't need to flood the network with them as 1 packet is accepted by all the clients connected.

I'm sure @spacehuhn will be able to answer the rest of your questions 😋

Best of luck with your testing
-Jack

@spacehuhn
Copy link
Owner

The webinterface is fine, just have to change the code that it's not compiled with the code when it's not activated.

And yeah test it, I can't tell you what happens if you connect it to something protected. And like @VoidTyphoon said, no there is no stadard for ARP spoofing :D

@BusesCanFly
Copy link
Author

BusesCanFly commented Jun 9, 2017

@VoidTyphoon No worries at all man, function > aesthetics for sure! I thought so, about the ARP standards, but then again.. i'm don't know a ton about this. Thank you for the information. I definitely need to read up on ARP, there seems to be a lot of good stuff there.

The previous program compiled perfectly on the atmega328 nano, but, because of the arp-protecting switch, I was not able to test the functionality, and I definitely will asap. A side question if I may: Is the ip for the web service static, or should a nmap scan with a /8 find it?

Thank you yet again for all the help!

@D3VL-Jack
Copy link
Contributor

Every day, I did try and do some styling but gave up due to the space the CSS was taking it wouldn't print out to the webpage.

The IP is not static, i had a look into how i could get it to be but to no avail see -> njh/EtherCard#266 I ended up having to print it over serial.

Good to see protective switches in use though, i killed my LAN with it haha

@BusesCanFly
Copy link
Author

@VoidTyphoon That's actually really cool, and pretty inspiring- I need to get into this way more. Have you thought about using the 8266? ..no clue where there could possibly be an expert on that though...

Ah, ok, makes sense. That's where I thought it would be... but with the protective switches..serial got a little strange. I'm no longer in the area where I was given full authorization and permission, where the switches were, but it was definitely really cool to see that they started to be used. (as this stuff becomes even simpler to get started with)

@D3VL-Jack
Copy link
Contributor

To add to my previous comment, I guess it Might be possible to get a DHCP ip address then get the subnet from that, say the assigned ip was "172.16.2.23" then pull the first 3 parts from that slap them in a var add 254 to the end destroy the ethercard session then startup a new one using the ip that was just generated "172.16.2.254" as our static ip, but even then you still have to know said networks subnet.

Dunno, Food for though ;)

@D3VL-Jack
Copy link
Contributor

I have thought about doing something similar to this with the ESP8266 but i don't know if their is an SDK that gives the API level needed to send raw packets for the ARP attack.

@BusesCanFly
Copy link
Author

That sounds really interesting.. I'll be out of studying in a little over a week.. might be a good project, i'll see if I can read up and take a crack at it later. Assuming the nano+enc was "deployed" in a network you own/have access to, you can get the subnet easily...or if not, by some quick scans.. maybe two different versions?
Definitely something to read up on.

The 8266 seems to be the new "cool thing" in the community, if there aren't any sdk's available... there could be a pretty large want for one.. more food for thought

@spacehuhn
Copy link
Owner

I updatedthe repository. It should work with the atmega168 too now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants