[IntelMQ-dev] Potential attribute name clashes in bot parameters in intelmq 3.1.x ?

Sebastian Waldbauer waldbauer at cert.at
Wed Oct 20 12:16:44 CEST 2021


Hey Mika,

Sorry for my late answer. Is the apache 2 correctly configured? Because 
IntelMQ tries to access the api endpoints, which doesnt respond with any 
data as it seems.

Have you checked 
https://intelmq.readthedocs.io/en/latest/user/intelmq-api.html already?

In addition please check the apache configuration file, if its 
configured correctly :)


Cheers,

Sebastian

On 10/8/21 1:17 PM, Mika Silander wrote:
> Hi,
>
>   At long last I updated my develop branch from the 2.3. days to 3.1.0 and noticed my tests fail due to the fact that bots don't have anymore a "parameters" attribute. At a closer look it seems all parameters from runtime.yaml are turned into direct attributes of self (correct?), e.g. if one defines a conf parameter "myparam", this shows up in the bot as self.myparam and not accessible as getattr(self.parameters, "myparam") as it did before.
>
>   After experimenting with my own bot tests I ended up in a situation where there's a potential attribute name clash. Assume a bot is tested like
>
> self.input_message = some_event_here
> self.run_bot()
> self.assertSomethingHere()
>
>   In the above test, the bot gets initiated with a big number of default attributes, e.g. accuracy, group, enabled, logger, run_mode etc etc. Assume then that as a developer I want to use parameters with matching names for the needs of my own bot like
>
> self.input_message = some_event_here
> self.run_bot(parameters={
>      'group': 'Plumber',
>      'run_mode': 'disruptive'
> })
> self.assertSomethingHere()
>
>   I can set those parameters and they happily override the defaults and I imagine this can mean trouble ahead. Is this intended behaviour and if yes, is there a way to prevent it? With the earlier self.parameters construct this did not happen and one could have e.g. a "group" attribute for the needs of intelmq's internal operation (self.group) separate from a bot developer's "group" attribute (that ended up under self.parameters) - no clashes despite equal names.
>
>   Thus, to avoid the above in intelmq 3.0.x this means every bot developer needs to check her own bot won't use any of the 'reserved' attributes before defining their own ones, right?
>
>   I might and I definitively hope I'm wrong here but please let me know if this is the case.
>
> Br, Mika
>
> _______________________________________________
> IntelMQ-dev mailing list
> https://lists.cert.at/cgi-bin/mailman/listinfo/intelmq-dev
> https://intelmq.readthedocs.io/

-- 
// Sebastian Waldbauer <waldbauer at cert.at> - T: +43 1 5056416 7202
// CERT.at GmbH - https://www.cert.at/
// Firmenbuchnummer 561772k, LG Wien



More information about the IntelMQ-dev mailing list