03. oktober 2003 - 22:47Der er
11 kommentarer og 1 løsning
Gemme brugers input i array og/eller tilføje data til array
Hejsa
Sidder med et script som tillader portscanning på en given IP-adresse. Indtil videre indeholder scriptet to arrays: $PortsToTest = array(21, 123, 3306, 80, 110);
$PortName = array( 21=>"FTP", 23=>"Telnet", 25=>"SMTP", 80=>"HTTP", 110=>"POP3", 119=>"News", 123=>"NTP", 3306=>"MySQL ); Dette er hvad scriptet tester på som udgangspunkt.
Det gode spørgsmål er så, hvordan jeg tilføjer en form som tillader at brugeren selv kan angive dels et port nr. samt en betegnelse, hvorefter disse input smides ind i ovenstående array og er med i næste test.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Den eller de porte som brugeren måtte tilføje skal indgå i næste test sammen med de oprindelige og vises i samme tabel (deraf min ide om at de nye porte skal ligge i samme array som de oprindelige)
nope, det kan aktiveres gennem: http://wasf.dk/?goPage=developer, tanken var blot at det skulle være en service hvis man vil teste sin egen sikkerhed. Jeg regner med at kunne udbygge scriptet således flere porte scannes automatisk.
jeg er med på at lave formen, men er dog rendt ind i et forståelseproblem når vi pludselig taler array's, derfor må du meget gerne inkludere formen hvis du giver et eksempel :-)
ahh... ok, nu er jeg med, du kan bruge portnr. som id-felt i array'et... Klart nok - jeg er vist lidt for Java-minded... Hvordan vil du tilføje beskrivelsen?
Det der sker er at vi i din form laver en array der hedder "port" de to "[]" gør at det bliver til en array..
Så i dit script samler vi de nye porte med din eksisterende array.
Der er dog ikek check på om det er gyldige tal.. der må du lave noget smart med om værdierne er mellem 1 og 65535 eller hvad den højeste port nu hedder
check check, jeg har helt styr på array-delen, det var mere tilføjelsen af en beskrivelse til porten jeg tænkte på... hmm... gad vide om den beskrivelse overhovedet er relevant
foreach($_post['port'] as $key => $value) { $portname[$key][$value]; }
din form laver du så om så de kan lave en beskrivelse. som du så putter ind som key i arrayen.
MEn det virker lidt besværligt.
Måske skulle du bare lave en form med nogle faste vlag i . således at dine inputfelter allerede har navnet og porten eks: edonkey <input type="check" name="port[edonkey][]" value='4661'><br /> ftp <input type="check" name="port[ftp][]" value='21'><br />
Det er nok meget forvirrende alt det jeg har skrevet. men det burde give dig en ide om hvor du skal hen.
Personlig syntes jeg bare du skal lave en stor form med alle de porte der må testes på. med en checkbox.
så bliver alle de afkrydsede porte så samlet af dit script med $portname = array(); foreach($_post['port'] as $key => $value) { $portname[$key][$value]; }
så laver du lige et check inden der tester at $_post[port] ikke er tom (dvs. brugeren ikke har valgt noget). således at du ikke tester forgæves.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.