Homeproj: Redmine for CESNET: Issueshttps://homeproj.cesnet.cz/https://homeproj.cesnet.cz/httpauth-login/favicon.ico?16194486082024-03-26T08:16:34ZHomeproj: Redmine for CESNET
Redmine Mentat - Bug #7722 (New): Missing CC in reportshttps://homeproj.cesnet.cz/issues/77222024-03-26T08:16:34ZPavel Káchaph@cesnet.cz
<p>Reports now don't contain visible CC, although they might be sent to multiple parties. Recipients then don't know whether other parties did in fact receive the copy or not. Might be related to <a class="issue tracker-5 status-5 priority-4 priority-default closed" title="Task: Replace flask-mail by sendmail (Closed)" href="https://homeproj.cesnet.cz/issues/7699">#7699</a> ?</p> Mentat - Bug #7721 (New): The email about filter change doesn't have a Czech translation https://homeproj.cesnet.cz/issues/77212024-03-21T15:00:23ZRajmund HruškaMentat - Config #7720 (In Review): Reports from Auror should include ports and protocolshttps://homeproj.cesnet.cz/issues/77202024-03-20T12:06:31ZJakub Judiny
<p>Now only IP and other basic fields are displayed in reports from Auror. But these problems are hard to resolve without information about the ports, and possibly protocols, that use old SSL. This should be resolved ASAP.</p> Mentat - Config #7719 (New): In GitLab CI/CD GeoLite2 databases are downloaded for almost every job https://homeproj.cesnet.cz/issues/77192024-03-19T16:03:44ZRajmund Hruška
<p>This could result in reaching the daily limit and subsequently failing of the pipeline.</p>
<p><a class="external" href="https://gitlab.cesnet.cz/713/mentat/mentat/-/jobs/18036">https://gitlab.cesnet.cz/713/mentat/mentat/-/jobs/18036</a></p> Mentat - Bug #7718 (New): Gitlab CI/CD doesn't push the built package to PyPIhttps://homeproj.cesnet.cz/issues/77182024-03-19T15:50:50ZRajmund HruškaMentat - Support #7717 (New): Add tests for more Hawat endpointshttps://homeproj.cesnet.cz/issues/77172024-03-19T14:34:22ZJakub Judiny
<p>Most of the Hawat endpoints are not covered with tests. We should add at least basic tests using keywords.</p> Mentat - Bug #7716 (New): In some cases, API returns html contenthttps://homeproj.cesnet.cz/issues/77162024-03-19T12:23:39ZJakub Maloštik
So far, what we're aware of:
<ul>
<li>During maintenance</li>
<li>When API is called with an expired user session</li>
</ul> Mentat - Bug #7715 (In Review): Searching changelogs by model ID does not workhttps://homeproj.cesnet.cz/issues/77152024-03-18T23:59:33ZJakub Judiny
<p>There are two major problems with searching changelogs by model ID:<br />- it should be an integer field, but is displayed as a select field, which does not make sense<br />- when you manage to put an integer into the field, it fails with HTTP 500 (this is the case both on alt an on hub, where you can use the integer field correctly, but it still fails)</p> Mentat - Bug #7714 (In Review): None values in timeline are not shown in the graph, but are shown...https://homeproj.cesnet.cz/issues/77142024-03-14T21:51:29ZJakub Judiny
<p>Example: <a class="external" href="https://mentat-alt.cesnet.cz/mentat/timeline/search?dt_from=2024-03-13+23%3A00%3A00&dt_to=2024-03-14+23%3A00%3A00&source_addrs=&source_ports=&aggregations=classes&limit=20&submit=Search">https://mentat-alt.cesnet.cz/mentat/timeline/search?dt_from=2024-03-13+23%3A00%3A00&dt_to=2024-03-14+23%3A00%3A00&source_addrs=&source_ports=&aggregations=classes&limit=20&submit=Search</a><br />-> None value = 34,057 (1.32%), but is not shown in the graph at all and when you click on "Toggle table", you can see that numerical values for "None" are all "NaN"</p> Mentat - Bug #7713 (In Review): Group/user searching issueshttps://homeproj.cesnet.cz/issues/77132024-03-14T16:13:00ZJakub Judiny
<p>Searching groups by group members/managers does not work. This is because form use "members"/"managers" as field names and view expects "member"/"manager" field names.</p>
<p>Also, searching for a group that has user XY as a member and user YX as a manager causes ProgrammingError exception. This is because the group table is used in the two subqueries of the same query under the same name (I think). Same problem is when searching for a user that is a member of XY group and manager of YX group.</p> Mentat - Bug #7712 (New): Errors are emailed twicehttps://homeproj.cesnet.cz/issues/77122024-03-14T13:49:08ZRajmund Hruška
<p>Email 1:<br /><pre><code class="python syntaxhl"><span class="n">Message</span> <span class="nb">type</span><span class="p">:</span> <span class="n">ERROR</span>
<span class="n">Location</span><span class="p">:</span> <span class="o">/</span><span class="n">var</span><span class="o">/</span><span class="n">mentat</span><span class="o">/</span><span class="n">venv</span><span class="o">/</span><span class="n">lib</span><span class="o">/</span><span class="n">python3</span><span class="p">.</span><span class="mi">11</span><span class="o">/</span><span class="n">site</span><span class="o">-</span><span class="n">packages</span><span class="o">/</span><span class="n">hawat</span><span class="o">/</span><span class="n">base</span><span class="p">.</span><span class="n">py</span><span class="p">:</span><span class="mi">201</span>
<span class="n">Module</span><span class="p">:</span> <span class="n">base</span>
<span class="n">Function</span><span class="p">:</span> <span class="n">log_exception</span>
<span class="n">Time</span><span class="p">:</span> <span class="mi">2024</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">11</span> <span class="mi">16</span><span class="p">:</span><span class="mi">39</span><span class="p">:</span><span class="mi">56</span><span class="p">,</span><span class="mi">771</span>
<span class="n">Message</span><span class="p">:</span>
<span class="nb">Exception</span> <span class="n">on</span> <span class="o">/</span><span class="n">groups</span><span class="o">/</span><span class="mi">5</span><span class="o">/</span><span class="n">show</span><span class="err">?</span> <span class="p">[</span><span class="n">GET</span><span class="p">]</span>
<span class="n">Traceback</span> <span class="p">(</span><span class="n">most</span> <span class="n">recent</span> <span class="n">call</span> <span class="n">last</span><span class="p">):</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask/app.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">2529</span><span class="p">,</span> <span class="ow">in</span> <span class="n">wsgi_app</span>
<span class="n">response</span> <span class="o">=</span> <span class="bp">self</span><span class="p">.</span><span class="n">full_dispatch_request</span><span class="p">()</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask/app.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">1825</span><span class="p">,</span> <span class="ow">in</span> <span class="n">full_dispatch_request</span>
<span class="n">rv</span> <span class="o">=</span> <span class="bp">self</span><span class="p">.</span><span class="n">handle_user_exception</span><span class="p">(</span><span class="n">e</span><span class="p">)</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask/app.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">1823</span><span class="p">,</span> <span class="ow">in</span> <span class="n">full_dispatch_request</span>
<span class="n">rv</span> <span class="o">=</span> <span class="bp">self</span><span class="p">.</span><span class="n">dispatch_request</span><span class="p">()</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask/app.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">1799</span><span class="p">,</span> <span class="ow">in</span> <span class="n">dispatch_request</span>
<span class="k">return</span> <span class="bp">self</span><span class="p">.</span><span class="n">ensure_sync</span><span class="p">(</span><span class="bp">self</span><span class="p">.</span><span class="n">view_functions</span><span class="p">[</span><span class="n">rule</span><span class="p">.</span><span class="n">endpoint</span><span class="p">])(</span><span class="o">**</span><span class="n">view_args</span><span class="p">)</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask_login/utils.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">290</span><span class="p">,</span> <span class="ow">in</span> <span class="n">decorated_view</span>
<span class="k">return</span> <span class="n">current_app</span><span class="p">.</span><span class="n">ensure_sync</span><span class="p">(</span><span class="n">func</span><span class="p">)(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask/views.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">107</span><span class="p">,</span> <span class="ow">in</span> <span class="n">view</span>
<span class="k">return</span> <span class="n">current_app</span><span class="p">.</span><span class="n">ensure_sync</span><span class="p">(</span><span class="bp">self</span><span class="p">.</span><span class="n">dispatch_request</span><span class="p">)(</span><span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/hawat/view/__init__.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">1344</span><span class="p">,</span> <span class="ow">in</span> <span class="n">dispatch_request</span>
<span class="bp">self</span><span class="p">.</span><span class="n">do_before_response</span><span class="p">()</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/hawat/blueprints/groups/__init__.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">258</span><span class="p">,</span> <span class="ow">in</span> <span class="n">do_before_response</span>
<span class="k">raise</span> <span class="nb">Exception</span><span class="p">(</span><span class="s">'Test error'</span><span class="p">)</span>
<span class="nb">Exception</span><span class="p">:</span> <span class="n">Test</span> <span class="n">error</span>
</code></pre></p>
<p>Email 2:<br /><pre><code class="python syntaxhl">
<span class="n">Message</span> <span class="nb">type</span><span class="p">:</span> <span class="n">CRITICAL</span>
<span class="n">Location</span><span class="p">:</span> <span class="o">/</span><span class="n">var</span><span class="o">/</span><span class="n">mentat</span><span class="o">/</span><span class="n">venv</span><span class="o">/</span><span class="n">lib</span><span class="o">/</span><span class="n">python3</span><span class="p">.</span><span class="mi">11</span><span class="o">/</span><span class="n">site</span><span class="o">-</span><span class="n">packages</span><span class="o">/</span><span class="n">hawat</span><span class="o">/</span><span class="n">base</span><span class="p">.</span><span class="n">py</span><span class="p">:</span><span class="mi">511</span>
<span class="n">Module</span><span class="p">:</span> <span class="n">base</span>
<span class="n">Function</span><span class="p">:</span> <span class="n">eh_internal_server_error</span>
<span class="n">Time</span><span class="p">:</span> <span class="mi">2024</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">11</span> <span class="mi">16</span><span class="p">:</span><span class="mi">39</span><span class="p">:</span><span class="mi">56</span><span class="p">,</span><span class="mi">783</span>
<span class="n">Message</span><span class="p">:</span>
<span class="n">INTERNAL</span> <span class="n">SERVER</span> <span class="n">ERROR</span>
<span class="n">Request</span><span class="p">:</span> <span class="o">/</span><span class="n">groups</span><span class="o">/</span><span class="mi">5</span><span class="o">/</span><span class="n">show</span><span class="err">?</span>
<span class="n">Traceback</span><span class="p">:</span>
<span class="n">Traceback</span> <span class="p">(</span><span class="n">most</span> <span class="n">recent</span> <span class="n">call</span> <span class="n">last</span><span class="p">):</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask/app.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">2529</span><span class="p">,</span> <span class="ow">in</span> <span class="n">wsgi_app</span>
<span class="n">response</span> <span class="o">=</span> <span class="bp">self</span><span class="p">.</span><span class="n">full_dispatch_request</span><span class="p">()</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask/app.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">1825</span><span class="p">,</span> <span class="ow">in</span> <span class="n">full_dispatch_request</span>
<span class="n">rv</span> <span class="o">=</span> <span class="bp">self</span><span class="p">.</span><span class="n">handle_user_exception</span><span class="p">(</span><span class="n">e</span><span class="p">)</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask/app.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">1823</span><span class="p">,</span> <span class="ow">in</span> <span class="n">full_dispatch_request</span>
<span class="n">rv</span> <span class="o">=</span> <span class="bp">self</span><span class="p">.</span><span class="n">dispatch_request</span><span class="p">()</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask/app.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">1799</span><span class="p">,</span> <span class="ow">in</span> <span class="n">dispatch_request</span>
<span class="k">return</span> <span class="bp">self</span><span class="p">.</span><span class="n">ensure_sync</span><span class="p">(</span><span class="bp">self</span><span class="p">.</span><span class="n">view_functions</span><span class="p">[</span><span class="n">rule</span><span class="p">.</span><span class="n">endpoint</span><span class="p">])(</span><span class="o">**</span><span class="n">view_args</span><span class="p">)</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask_login/utils.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">290</span><span class="p">,</span> <span class="ow">in</span> <span class="n">decorated_view</span>
<span class="k">return</span> <span class="n">current_app</span><span class="p">.</span><span class="n">ensure_sync</span><span class="p">(</span><span class="n">func</span><span class="p">)(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/flask/views.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">107</span><span class="p">,</span> <span class="ow">in</span> <span class="n">view</span>
<span class="k">return</span> <span class="n">current_app</span><span class="p">.</span><span class="n">ensure_sync</span><span class="p">(</span><span class="bp">self</span><span class="p">.</span><span class="n">dispatch_request</span><span class="p">)(</span><span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
<span class="o">^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/hawat/view/__init__.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">1344</span><span class="p">,</span> <span class="ow">in</span> <span class="n">dispatch_request</span>
<span class="bp">self</span><span class="p">.</span><span class="n">do_before_response</span><span class="p">()</span>
<span class="n">File</span> <span class="s">"/var/mentat/venv/lib/python3.11/site-packages/hawat/blueprints/groups/__init__.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">258</span><span class="p">,</span> <span class="ow">in</span> <span class="n">do_before_response</span>
<span class="k">raise</span> <span class="nb">Exception</span><span class="p">(</span><span class="s">'Test error'</span><span class="p">)</span>
<span class="nb">Exception</span><span class="p">:</span> <span class="n">Test</span> <span class="n">error</span>
</code></pre></p> Mentat - Feature #7708 (New): Host info modulehttps://homeproj.cesnet.cz/issues/77082024-02-27T14:02:51ZJakub Judiny
<p>Hosts module will be removed in <a class="issue tracker-2 status-1 priority-3 priority-lowest" title="Feature: Get rid of hosts module (New)" href="https://homeproj.cesnet.cz/issues/7703">#7703</a>. However, it could be useful to keep an utility, that would display information from all data sources available (DNS, PassiveDNS, Nerd, GeoIP...) about an IP in one page. This would only be a GUI thing, no new functionality would be added.</p> Mentat - Feature #7707 (New): All fields in search form should have negationshttps://homeproj.cesnet.cz/issues/77072024-02-20T14:59:22ZJakub Judiny
<p>Now only fields that are selected have a negation option ("not_detectors" etc.), but this should also be the case for fields with user input (such as Description). These fields should also be visible for all users and not just hidden in the URL.</p>
<p>Based on input from Pavla Hlučková.</p>
<p>Example use cases:<br />- Searching for events, that do not have "Test" category.<br />- Searching for events of particular event class (or category), that are from other detectors than "detector1". This can be useful when trying to correctly set parameters of an event class, because you want to see events from all different detectors that send events labelled with this event class.<br />- Searching for events that do not have a specific description.</p> Mentat - Feature #7706 (New): Users should be able to choose which information about events shoul...https://homeproj.cesnet.cz/issues/77062024-02-20T14:55:28ZJakub Judiny
<p>Now there are fixed fields displayed in the event search (detected at, sources, severity, category, detector and abuse group). But it could be useful to allow users to choose which fields (e.g. description, port, protocol) should be displayed there instead - this could be helpful when searching for something specific, that cannot be specified through our form.</p>
<p>Based on input from Pavla Hlučková.</p>
<p>Example use case: I want to see description (or other field not displayed there by default) of the searched events without needing to open them all, which could save a lot of time and clicks.</p> Mentat - Feature #7705 (New): Event search should support "any value" and "without value" for abu...https://homeproj.cesnet.cz/issues/77052024-02-20T14:35:18ZJakub Judiny
<p>Now it is not possible to only search events with assigned abuse group. It should be possible, because we support these options for other fields such as protocols, detectors, severities etc. This would enable users to search internal events only.</p>
<p>Based on input from Pavla Hlučková.</p>