forked from deepfence/YaraHunter
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
76 lines (67 loc) · 2.36 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
FROM golang:1.20-alpine3.18 AS builder
RUN apk add --no-cache \
git \
make \
build-base \
pkgconfig \
libpcap-dev \
libcap-dev \
openssl-dev \
file \
jansson-dev \
jansson-static \
bison \
tini \
su-exec
RUN apk add --no-cache -t .build-deps py-setuptools \
openssl-libs-static \
jansson-dev \
build-base \
libc-dev \
file-dev \
automake \
autoconf \
libtool \
libcrypto3 \
flex \
git \
libmagic-static \
linux-headers
RUN cd /root && wget https://github.com/VirusTotal/yara/archive/refs/tags/v4.3.2.tar.gz \
&& tar -zxf v4.3.2.tar.gz \
&& cd yara-4.3.2 \
&& ./bootstrap.sh \
&& ./configure --prefix=/usr/local/yara --disable-dotnet --enable-magic --enable-cuckoo --disable-shared --enable-static\
&& make \
&& make install \
&& cd /usr/local/ \
&& tar -czf yara.tar.gz yara
WORKDIR /home/deepfence/src/YaraHunter
COPY . .
RUN make clean \
&& make all \
&& cd /home/deepfence \
&& git clone https://github.com/deepfence/yara-rules
FROM debian:bullseye
LABEL MAINTAINER="Deepfence"
LABEL deepfence.role=system
ENV LD_LIBRARY_PATH=/usr/local/yara/lib \
DOCKERVERSION=24.0.2
RUN apt-get update && apt-get -qq -y --no-install-recommends install libjansson4 libssl1.1 libmagic1 libstdc++6 jq bash skopeo curl ca-certificates \
&& nerdctl_version=1.4.0 \
&& curl -fsSLOk https://github.com/containerd/nerdctl/releases/download/v${nerdctl_version}/nerdctl-${nerdctl_version}-linux-amd64.tar.gz \
&& tar Cxzvvf /usr/local/bin nerdctl-${nerdctl_version}-linux-amd64.tar.gz \
&& rm nerdctl-${nerdctl_version}-linux-amd64.tar.gz \
&& curl -fsSLO https://download.docker.com/linux/static/stable/x86_64/docker-${DOCKERVERSION}.tgz \
&& tar xzvf docker-${DOCKERVERSION}.tgz --strip 1 -C /usr/local/bin docker/docker \
&& rm docker-${DOCKERVERSION}.tgz
WORKDIR /home/deepfence/usr
COPY --from=builder /home/deepfence/yara-rules .
COPY --from=builder /usr/local/yara.tar.gz /usr/local/yara.tar.gz
COPY --from=builder /home/deepfence/src/YaraHunter/YaraHunter .
COPY --from=builder /home/deepfence/src/YaraHunter/config.yaml .
RUN cd /usr/local/ \
&& tar -xzf yara.tar.gz
WORKDIR /home/deepfence/output
ENTRYPOINT ["/home/deepfence/usr/YaraHunter", "-config-path", "/home/deepfence/usr", "-rules-path", "/home/deepfence/usr"]
CMD ["-h"]