lol
1{ lib
2, stdenv
3, buildGoModule
4, fetchFromGitHub
5}:
6
7buildGoModule rec {
8 pname = "confluencepot";
9 version = "1.0.0";
10
11 src = fetchFromGitHub {
12 owner = "SIFalcon";
13 repo = "confluencePot";
14 rev = "v${version}";
15 hash = "sha256-jIbL6prOUII8o9FghIYa80BytJ9SSuyj/TZmAxwAbJk=";
16 };
17
18 vendorHash = "sha256-nzPHx+c369T4h9KETqMurxZK3LsJAhwBaunkcWIW3Ps=";
19
20 postPatch = ''
21 substituteInPlace confluencePot.go \
22 --replace "confluence.html" "$out/share/confluence.html"
23 '';
24
25 postInstall = lib.optionalString (!stdenv.isDarwin) ''
26 mv $out/bin/confluencePot $out/bin/${pname}
27 '';
28
29 preFixup = ''
30 # Install HTML file
31 install -vD confluence.html -t $out/share
32 '';
33
34 meta = with lib; {
35 description = "Honeypot for the Atlassian Confluence OGNL injection vulnerability";
36 homepage = "https://github.com/SIFalcon/confluencePot";
37 longDescription = ''
38 ConfluencePot is a simple honeypot for the Atlassian Confluence unauthenticated
39 and remote OGNL injection vulnerability (CVE-2022-26134).
40 '';
41 license = with licenses; [ agpl3Plus ];
42 maintainers = with maintainers; [ fab ];
43 };
44}