Forum Discussion
Manipulates SSL payload for 2 Packets inside same session
Hi,
i've a problem with a creation of an iRule.
I have a session TCP and i need to manipulate the first two packets of the session. The packets NOT contain a Layer 7(HTTP,DNS,Ecc..) payload but only simple binary payload(a sequence of ASCII code).
My problem is that after the first packet, which can be manipulated with event CLIENT_ACCEPTED and CLIENT_DATA (and the method TCP::collect), i can't find a event that allows me to modify the next TCP payload packet.
if you can help I have set the HTTP profile. So the only events Layer 7 can be used are those HTTP.
There is an event that satisfies my request?
Thanks in advance for any response.
Kind Regards,
Fabio.
- hooleylistCirrostratusHi Fabio,
- Fabio_Sozzi_308NimbostratusHi Aaron,
- hooleylistCirrostratusYes, I think the concepts for TCP::collect and recollecting apply to SSL::collect. If you try it and get stuck let us know. Else, if you get something working, could you post it here as an example for others?
- Fabio_Sozzi_308NimbostratusOk thanks Aaron.
i khow it's wrong but unfortunately i forgot something else: the second packet is sent after an answer(the procedure is complicated to explain).
Howewer, to summarize the client send a SSL packet; my irule manipulates the packet adding some headers and sends it to the server that response. This response must be processed by the irule, removing these header and sending the packet to the client(this is the response that the client expects).
Once the client receives the response, sends the second packet.
Now the irule must repeat the same algorithm descrived above.
It's Possibile??
A thousand excuses because i'm not writing everything at once but I was running at the time of opening of the post and spent a lot for not being able to find a solution.
Thanks for any response.
Kind regards,
Fabio.
- Fabio_Sozzi_308NimbostratusIf you need anything ask me and i will post ASAP.
- hooleylistCirrostratusHi Fabio,
- Fabio_Sozzi_308NimbostratusHi Aaron,
i have already tried the "test" you told me to do and i can confirm that the first packet sent by the client is modified correctly, and aslo the response by the server is modified correctly.
The problem is the second packet sent by the client because not generate the event "CLIENTSSL_HANDSHAKE" (As stated before, I can confirm by looking at the log)
Reading the wiki inherent in the event "CLIENTSSL_HANDHAKE" i have read:
Triggered when a client-side SSL handshake is completed.The second packet is sent in the same session SSL,maybe it's the reason so the second time the event is not generated.How i can to do for resolve my problem?Thank you so much for the precedent and future answer.Regard,Fabio - Fabio_Sozzi_308NimbostratusAny news?
- hooleylistCirrostratusI think you'd need to continue collecting from CLIENTSSL_DATA and/or SERVERSSL_DATA using SSL::collect. But I haven't tested this before and am not able to test it at the moment.
- Fabio_Sozzi_308NimbostratusHi Aaron,
unfortunatly i have already tested what you say and isn't works because if i remain in SSL::collect state, the first packet not arrives at the servers.
Other ideas?
Thanks.
Fabio
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com