Schütz die eckigen Klammern in dem optionalen Argument, in dem Du sie dieses in geschweifte Klammern setzt:
setzt. Erklärungen dazu findest Du in den Antworten auf die Frage [\] in optionalen Argumenten][1].
\begin{defn}[aaaaah{[eeeeeh]}iiiiih]
\begin{defn}[{aaaaah[eeeeeh]iiiiih}]
![alt text][1]
text][2]
\documentclass[a4paper, 11pt]{article}
\usepackage{amsthm}
\usepackage{mdframed}
\usepackage{tikz}
\mdfdefinestyle{theoremstyle1}{%
linecolor=black,linewidth=1pt,%
frametitlerule=true,%
frametitlebackgroundcolor=gray!20,
innertopmargin=\topskip,
}
\mdtheorem[style=theoremstyle1]{defn}{Def.}[section]
\begin{document}
\begin{defn}[aaaaah{[eeeeeh]}iiiiih]
\begin{defn}[{aaaaah[eeeeeh]iiiiih}]
oha
\end{defn}
\end{document}
[1]: http://texwelt.de/wissen/fragen/355
[2]: http://texwelt.de/wissen/upfiles/mdframed_2.png